Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Building AI-assisted products without compromising engineering quality and craftsmanship is hard. If you're looking for someone to lead that effort, let's talk.1My career timeline and maybe let me convince you what working with me is like and what we can accomplish together

Strong opinions, Loosely held

I’ve a strange attraction to quotes like this - Short, crisp, and is rich with wisdom.

As William Shakespeare says,

Brevity is the soul of wit.

Another favourite quote of mine is the Pauli’s Exclusion Principle.

No two electrons in an atom can have the same four quantum numbers

which has since inspired me to cook up my own versions:

No two people can look at the world1Reality, in the Buddhist sense in the same perspective

No two people who reads the same book will get the same understanding and insight from it

And I’ve lately started realizing that, its not just interesting to have strong opinions, but also important to have them - but only alongside the loosely held precept.

Personal Anecdote: LLM generated content.

What LLMs have done today - to the world of “knowledge” that can be represented by textual corpus - is mediocrity. I’m starting to feel a kind of “sameness” to everything online.

  • The youtube videos on recommendations 2I have turned off video recommendations on my youtube homepage. And I watch most of the videos selectively from people I bother respecting about. And yet - this happens and the recommended videos to comments of the videos that I like watching - are genuinely just AI generated.
    • The thumbnails mostly are AI generated.
    • The video script are often AI generated.
    • There are so many explainer videos these days that are AI generated.
  • Most of the news articles are AI generated. I don’t watch news3One of the best things I’ve done for my mental health! and yet - the ones that somehow “appears” on my feed, are often rambles from LLMs.

I’ve been a very strong advocate of AI, and the above isn’t because of AI - It’s still because of the age-old human greed 4Eg: To produce content, get views, to get monetary benefits. - Which was the case even before AI, and it’s only been amplified by LLMs. GenAI is a really good tool - But when you’ve got a hammer for a tool - You keep seeing nails everywhere. And I’m starting to get tired of it.

Personal Anecdote: Software engineering

In the world of Software Engineering, it’s far too common to have too many opinions - Especially since there are so many ways of doing anything within Software. Its very nature is malleability - That which is often taken for granted.

But that also enables democracy in software far too easily. Now that gen AI and LLMs have taken the software world by storm, personal software has a whole new meaning.

It redefines what personal is - What works for one may not necessarily work for others. And tbh - It shouldn’t have to.

We see a lot of reverse engineering of software, especially of the proprietary kind and that’s shocking to everyone - Both the producers and the consumers because neither have been exposed to such a vulnerability. And it’s time we learn to move onto the higher “societal” problems. Software is evolving. It was never meant to be rigid.

There’re a couple of aphorisms in the software development community:

High cohesion, and low coupling

Which is beautiful engineering principle used when we design systems that interact and interface with multiple pieces of code, services, and tech stacks. High cohesion just means that any peice of code/module that you’re designing, should be built in such a way that it can interact with any other piece. On the other hand, Low coupling means that a piece of code/module that you’re designing should be self-sustainable on its own. i.e its functional ability shouldn’t be blocked by some other piece of code. 5This is part of the S.O.L.I.D design patterns, but that’s too jargony

Disagree but commit.

It signifies that when we’re working in a team towards a common goal of solving a business problem - engineers often have conflicting ideas and thought process. But if we have to get anywhere with the product at all, it’s important that disagree but commit (both in terms of code, and the work surrounding it) onto an agreed decision even if we would’ve personally done it a differently. It’s important to do that.

And these are real life experiences of having strong opinions about how something is being done, or supposed to be done, and yet being ready to let go of it for the progress towards something bigger. Whether it works out well in the end isn’t the point here.

And I believe that’s a very healthy perspective to have in life in general. Although it’s easier to experience and learn in our domain because of how fast something changes, it’s generally a good principle to have in life.