Aug, 2024

Recently started using Streaks, a habit tracker app, and I'm liking it so far!

My favorite part of Streaks is that it gives you lots of options for defining a habit. They can be duration-based, as my reading and writing habits are; counted, e.g., how many glasses of water I drank today; or negative, e.g., I did not eat chips today. And the timing of habits is realistically flexible. You can make them

  • daily;
  • every other day (or every x days);
  • set for specific days of the week; or
  • a given number of days per week or per month, without setting specific days.

The flexibility provided here is awesome. I've noticed that in some cases, the daily ritual is not so feasible. I'm not intending to become a professional writer, and I don't want to write for 30 mins on my blog every day. But I can manage to do this 4 times a week, and would like to make that a habit. Streaks fortunately allows for that.

Highly recommend!

Streaks App

To-do list app that helps you form good habits. Every day you complete a task, your streak is extended. Choose or create up to 24 tasks.

View on App Store

July, 2024

On July 19th, everything, everywhere, went haywire, all at once.

Two weeks prior to this day, the student protests in Bangladesh had just started. The controversial quota system for government jobs reserved 30% positions for descendants of those who fought in the 1971 Liberation war, 10% for women, and 10% for residents of specific districts. These sparked a huge round of debates around meritocracy in the country, and it was at this junction that I landed in Dhaka.

I had come here as a part of my work at Noora Health. We were gearing ourselves towards a launch of a national health program centered around patients with hypertension, stroke and diabetes.

After arriving in Dhaka, I was situated close to our office at Bonani, and wasn't really moving around much. In my first week, I didn't really feel the effect of the protests happening around me in my vicinity. It was only in the second week that I started 'feeling' the reverberations of these student protests in and around Bonani. I wanted to order food from Foodpanda, but the restaurants were all closed. Even private caterers were not serving food then. When I tried having a meal at a neighbouring restaurant to the hotel, my card stopped working. I thought it was some glitch with the payment processor. Realised later that a nationwide shutdown had just started. There was no internet.

I was advised to stay indoors for the time being. I still had my flight back to India, and was thinking of a way in which I could reach the airport. The roads were all blocked, especially the ones to the airport.

For my flight at 9 PM that night, I got a cab to drop me at 4 AM in the morning. As the protests usually started earlier in the morning, I had to leave earlier than the earlier morning to avoid any road blockades and reach the airport safely.

Once I reached the airport, I just raw-dogged the whole day. It was then that I observed a lot of flights getting cancelled left and right. One by one. I was counting sticks every time a flight was terminated, and my total count for that day in the airport was around 10. I still had my Air India flight later that night, and I was still optimistic about the flight not being delayed (After all, it was the same Air India flight that had rescued Indians from Ukraine during the recent crisis)

Why were the flights getting cancelled though? My first instinct would have been to 'Google' why this was so. But I didn't have internet. Not having internet was a relatively new phenomenon that I was experiencing.

And as you might have expected, my flight had also got cancelled that day.

In hindsight, this was the same day when the entire world witnessed one of the biggest IT disruptions in recent years due to the Crowdstrike error. Corporations worldwide reported outages and disruptions, with Windows computers displaying the dreaded Blue Screen of Death. The outage had impacted sectors such as banking, trading, media companies as well as hundreds of airliners (which included my cancelled Air India flight)

While all this was happening around me, the airliners responded with— 'All flights are getting cancelled, (perhaps), the only way to make it to India is to travel by road and cross the Bangladesh-India border...'.

I got a second opinion from my work colleagues on what I could do next. Apparently, the violence and protests had also reached the airport vicinity and it was not advised to step out of the airport. So, I just sat down and waited. Thinking of what I could do next.

After a period of confusion and chaos, and in my second day at the Dhaka airport, I secured an alternate flight to Chennai, and landed home the day after that.

I somehow reached home safely, and I sincerely pray for the safety of my friends and colleagues in Bangladesh during this period of emergency. Hope normalcy is restored soon.

UPDATE (5th August)—Ms Hasina resigns as prime minister after weeks of student-led protests - which left hundreds dead - escalated and culminated in calls for her to stand down.

UPDATE (8th August)—Nobel laureate Muhammad Yunus has been sworn in as Bangladesh's interim leader, vowing to "uphold, support and protect the constitution".


Jun, 2024

I made my first software-related open source contribution! I specifically mention 'software-related', as I'd contributed to the open-source hardware movement during the 2020 pandemic. Making my npm package publicly accessible for anyone to use did hit me differently.

To give you a bit more context, I was recently debugging a Rails codebase by talking through the challenges with GPT.

It was however facing the 'blind man touching the elephant' problem—It was not accurate in its debugging as it was not able to see through the entire directory I was working with. I had to share individual files separately for it to better understand.

This was a huge point of annoyance, and I was looking at smart approaches to share file tree structure, and that's when I discovered tree command which helped me create simple unicode formatting of my file structure as follows:

├── README.md
├── components
│ ├── Bookshelf.tsx
│ └── Layout.tsx
├── content
│ ├── books
│ ├── engineering
│ └── writing

However, I wanted a bit more granularity in terms of what I wanted to communicate. So I forked this package, and created a version of my own which also communicates the # of visible, hidden files under each level as well as the overall file size under each folder as shown below:

. (17 visible files, 0 hidden files, 16 visible directories, 0 hidden directories, 8.34 MB overall size)

├── Dockerfile
├── Gemfile (3 hidden files, 7 visible files, 1.00 KB overall size)
├── Gemfile.lock
├── README.md
├── Rakefile (4 hidden files, 2 visible files, 8 MB overall size)
├── app (8 hidden files, 2 visible files, 8 MB overall size)
│ ├── controllers (8 hidden files, 2 visible files, 8 MB overall size)
│ ├── models (8 hidden files, 2 visible files, 8 MB overall size)
│ ├── views (8 hidden files, 2 visible files, 8 MB overall size)
│ └── ... (additional subdirectories)


You could install this npm package here, let me know your thoughts :)

SvelteJS + Ruby on Rails—I published two new blog posts. In one of the blogs, I talk about the 'meeting before the meeting' preparation for product managers. In the other essay, I talk about my process of arriving at a web development stack that mixes the old and the new in an anachronistic fashion. I've attempted to combine a 20 year old framework (Ruby on Rails), with the latest fancy new JS framework (SvelteJS).

Currently attempting to learn SvelteJS by sitting through this 24-hour Youtube tutorial here by FreeCodeCamp. Tempted to say this to my partner, "Hi, don't let anyone disturb me till tomorrow!!".

Decentralised Science, Balaji S, Vitalik Buterin—I've also been reading a lot about the recent tailwinds centered around decentralised science. I was listening in to the DeSci Podcast episodes starring Balaji S, and Vitalik Buterin around innovations that could push the paradigm of academic research from 'reputation based citation' to 'independent replication'. The podcast episodes covered various fascinating ideas around how this paradigm could be made possible.

Reproducibility is a significant problem in academic research due to insufficient detail in experimental procedures, lack of standardisation, and even lack of transparency in data and code sharing. Balaji goes above and beyond this idea by talking about how academic research could go from 'reproducible research' to 'truly reproducible research' by means of various crypto instruments. The radical vision suggested here is to have academic papers on-chain allowing people/citizens to cite back to their original works. Having such research data on an immutable decentralised ledger could solve various problems that one might encounter.

The Recruit, Netflix—I recently watched The Recruit on Netflix. The show centers around Owen Hendricks, a young CIA lawyer whose first week on the job turns upside down when he discovers a threatening letter by a former asset Max Meladze. The asset plans to expose the agency unless she is exonerated of her previous crimes. The story takes off from there. There are dangers to splicing these two disparate genres comedy/thriller together as a mismash where the serious bits undermine the supposedly funny ones and vice versa. The show pulls this off quite well.


May, 2024


Build School is live—One-month sprint on Framer is finally complete. The Build School website is finally live.

As a rebranding exercise, it did stretch my grey cells to push the limits and make it match with the right vibe: professionalism with a powerful vibrant punch. These were the only two keywords that were mentioned to me for the rebranding exercise, nothing else. This gave me enough room to creatively unfurl, and to finally arrive at a version that just 'clicked'.

The process reminded me of Christopher Nolan's approach while collaborating with composer Hans Zimmer for the Interstellar soundtrack.

Zimmer was just given two lines of a dialogue: "I'll come back" and "When?"(source) instead of the entire film's plot. Zimmer then went on to write a four-minute piano and organ piece representing his idea of fatherhood, which became the heart of the film's score.

Sometimes, less is more.

Half-marathon! — I successfully completed my first half-marathon, which was a pleasant surprise since I had previously failed every time I aimed to finish 23 kilometers. This time, I decided to listen to a lengthy three-hour podcast episode while running. Halfway through, I experienced the mythical 'runner's high' and couldn't stop. I kept running until I reached the finish line.

RES Launch — We're gearing up for a major launch at Noora Health, introducing a national health intervention for patients with diabetes, hypertension, and pulmonary diseases. My focus has been on developing a digital service that encourages patients to take positive health actions.

Personal Website — Was able to update my personal website in such a way that it looks like the blog and the website are from the same house. Pushed some pixels to keep it coherent.

Podcasts — Was listening to Scott Galloway's Podcast episode on My First Million. These were the three quotes that struck me:

"So the key is finding, not finding your passion, but finding your talent and then committing to developing mastery. And if you can develop mastery in anything that has a 90 plus percent employment rate, which 98% of sectors enjoy, the economic accoutrements, the camaraderie, the prestige, the relevance, Just the sheer joy of mastery will make you passionate about whatever it is."

The most important metric for a SME is retention of employees. And a key factor in influencing the rention of employees is about being surrounded by friends. You are less likely to quit your job if you're around your friends.

"As long as there's four of them, they got my credit card. And the number one source of retention, I think the key to building a small business is retention because we find good people. You just don't want them to be with you a year or two years and go to Google because the switching costs are enormous. And if you find someone good, your job as an entrepreneur or the CEO is just to create an environment where they want to stick retention of employees, in my opinion, is just huge. And I find or I read a study, another study on this and it's at the number one source of retention and the number one lever for retention. People think it's compensation. People think it's culture. It's whether or not that person has a friend at work. If they have a friend at work, they look forward to going to work and they are less likely to leave. And so what I try and do, everybody interviews everybody when we hire people, but these kids, it's really inspiring."


April, 2024

I've been writing a comprehensive guide — 'Building Your First Rails App,' which is tailored for beginners eager to develop their first Ruby app. Currently, the manuscript spans over 3,000 words, and I'm only a quarter of the way through. Given that it may potentially reach 10,000 words, I'm pondering whether this content is best suited as an in-depth essay, a mini-book, or even a full book.

In writing this tutorial, I've adopted a first-principles approach, which sets it apart from many other tutorials that often target more experienced developers (especially the Ruby official docs). These can be overwhelming for novices encountering Ruby Rails code for the first time. My focus has been on clarity and simplicity, ensuring that I thoroughly explain even the most basic concepts that seasoned programmers might overlook.


Falling in love with running again — I've been enjoying the runs in and around London. Have been tracking them actively on Strava, along with the occasional group runs through Strava communities. Prepping for a half-marathon in May.

Virtual Bookshelf — I've always dreamt of having a virtual bookshelf of all my previous readings/book notes. My first attempt at creating this was through a Notion second brain five years back consisting of all my book notes back then. Recently, I came across this react bookshelf component from Ahmad Majumdar on Twitter. I then forked this code and added this section on my website.

I now have a dedicated 'books' page where I compile most of my book notes. It's live, and it's still a work-in-progress. Yet to transfer all my book notes from Readwise.

Niche Meetups — Have been participating in various niche interest-based meetups. To name a few, you have Through the Glass Darkly which is a round-house of philosophy, history, and social science nerds. The Future of Code meetup organised by Maggie Appleton diving deep into speculative futures through tech. Small Bets is featuring weekly online lectures centered around solopreneurship and the philosophy of 'small bets'. I'm also joining the No Code Network Meetup next week at Gilray House, London!

Job Board for Tech Unicorns — Design engineering is having its renaissance right now. It’s the golden age of developers who also understand design. Companies have started to invest in craft. They are not viewing craft as a sacrifice on velocity (anymore). It’s now an investment in quality.

The old guard is being replaced by the new. You no longer have confusing roles and titles such as webmaster/UX unicorn/engineer.

Software artisan? Designeer? Builder? UX engineer? The lines between design and code are getting blurred. All roles merge into one—design engineer

These tech unicorns, as the name suggests, are not mythical fictional creatures. They are living, breathing human beings with design and engineering chops.

Rohit and I are building a job board for design-engineers here. We are planning to launch this sometime soon once we have a solid marketing strategy in place.

Founder/Hacker course — For the past six months, I've been learning Ruby on Rails in an on-and-off fashion. I've been following my own curriculum online, learning tips and tricks to eventually hack a SaaS all on my own. I've found great joy in expressing myself through internet projects and have collaborated with many great developers previously. This is my technical generalist curriculum so far:

Michael Hartl's Learn Enough to be Dangerous series (I've taken it step by step here, right from git, bash, text editors to then venture into Ruby, and then Ruby on Rails)

Ryan Kulp's Founder/Hacker course. Completed two of his courses. The 24 Hour MVP as well as the Fundamentals 101 course. Ryan has previously sold various software startups and had picked up Rails coming from a non-technical background. He covers a lot of ground on hacking your way through code (even if you don't completely understand it)