Migrating from WordPress to Hugo
Sep 02, 2024
For more than 10 years, this website has been running on WordPress. Over time I come to dislike it for multiple reasons....
LLMs: great for business but bad business
Jul 05, 2024
The true value proposition of LLMs lies in their ability to convert unstructured data from sources like websites and documents into structured information with reasonably high accuracy. Yet, the real...
When to commit Generated code to version control
Jun 02, 2024
Generated code, ideally, should not be committed to version control. Committing generated code can sometimes speed up testing and code generation but it is a design smell. It is better to cache genera...
Abstractions should be deep not wide
Mar 23, 2024
Let’s say you are building a git analytics product. Your product supports GitHub and GitLab for now. It might support more products in the future. 90% of the codebase that supports GitHub and Gi...
Some data on podcasting
Mar 16, 2024
A few years back, I scraped data on podcasters from iTunes. The data was a bit underwhelming and made me realize that podcasters can’t be a potential market. It is a bit dated but I believe is s...
API services should always have usage Limits
Feb 11, 2024
Every public-facing API service should have API usage limits. If this seems overkill then ask yourself if would it be OK if a single IP sends a million requests a second. This does not apply just to p...
Using Python & Poetry inside Docker
Jan 13, 2024
Poetry is a great build system. And in 2023, I believe, no one should use the pip for a private Python codebase. Getting it right inside Docker is a different issue, however. Consider a simple Flask-b...
Timing
Nov 18, 2023
Two cryptocurrency exchanges came out early on from Y Combinator. One is 2012. One in 2013. One returned 1500X to early investors. The other one ceased to exist after 2 years. What happened? ...
Real vs Theoretical Engineering Productivity
Sep 16, 2023
Some engineering productivity is real. Some are theoretical....
Too much documentation is harmful
Jul 01, 2023
As code changes, documentation becomes stale over time. This happens at big companies. This happens at small companies. Unlike code, documentation is not compiled or tested. The code is executed. If t...
Engineering stack
Jun 03, 2023
Most startups think of the engineering stack as if it is a single cohesive thing. However, I believe that there are three different engineering stacks that are loosely coupled to each other....
Engineering Guardrails
May 07, 2023
Guardrails are meant to protect us from tripping over. The same can be said about engineering guardrails....
Bad and good ways to test code
Feb 18, 2023
Writing tests at an early-stage startup is always heatedly debated. If a function has one call, adding a unit test doubles the number of calls, this not only doubles the current work but even slows do...
The different layers of a web applications
Feb 05, 2023
There are three mandatory layers of any non-trivial user-facing web application. Storage, compute and view. The view is the front-end website and the mobile app(s). The storage is the database layer l...
The biggest impact of ChatGPT
Feb 01, 2023
In the decade of the 2010s, after Facebook became mainstream, social became a building block for websites. A lot of websites added a concept of user profiles consisting of a name, a display picture, a...
Social media and burglar bars
Nov 30, 2022
Houses in many major cities in Latin America have burglar bars. So, is in India. Very few cities in the US have burglar bars....
5 reasons package.json doesn't scale
Aug 14, 2022
package.json is the standard package configuration management file used in the Javascript world. To call it terrible is an understatement. Here’s why....
Why I prefer Obsidian for taking notes
Jul 16, 2022
I started using Google Notebook around 2008. Once I received a notice that it will shut down, I switched to Evernote around 2012. Unlike Google, note-taking is the central business of Evernote, I thou...
Low code
Mar 12, 2022
I’m a big of serverless. In fact, in 2021, I believe that it should be the default choice and one should have a strong reason to deploy their own servers....
React Native
Mar 06, 2021
There are tons of hyped-up claims surrounding React Native that are worth addressing. The reasons why companies run for React Native are usually, We already use Javascript for the website and now, we ...
The two-step approach to big code modifications
Aug 01, 2020
We all have to make significant code changes from time to time. Most of these code changes are large. Consider the scenario that you merged one such significant change, and then other team members mad...
Programmable Money and value capture
Oct 12, 2019
Money serves three purpose - unit of accounting, a medium of exchange, and a store of value. Cryptocurrencies have been compared to Programmable Money. Anything programmable requires an experimentatio...
Closeum - closed-source in disguise
Mar 01, 2019
Earlier, the Software world was rigidly divided between closed and open-source software. Microsoft Windows is closed-source, GNU/Linux is open-source. Microsoft Office and Lotus Notes are closed-sourc...
Startup founders: How not to write an email
Jul 22, 2018
Consider this email, And now consider this one, Hi Ashish, You signed up for the Orchard beta not too long ago, and we’re excited to finally send you an invite! ( Just to jog your memory, Orchar...
The "key" problem in cryptocurrency
Jul 02, 2018
All cryptocurrencies are eventually tied to a “private” key. You lose this key, and the funds are gone, forever. Millions worth of bitcoins have disappeared from the circulation due to los...
90% vs 99%
Jan 01, 2017
Consider two systems: the first is 90% reliable and the second is 99%. The wrong to compare them is to compare the reliability and conclude that the second one is 9% (or 10% if you take 90% as the bas...
When aggregation works and when it doesn't
Dec 04, 2016
All consumer internet products are either about consumption, production or both. A blog site is primarily about consumption. A photo transforming app is primarily about production. Social networks are...
The Android-Chrome merger saga
Aug 13, 2016
Articles with the following titles would be considered a joke “BMW is planning to merge its series i5 cars and Motorrad bikes” “P&G is planning to merge tissue paper and toilet p...
File size should always be of "long" type
May 21, 2016
Java 1 2 3 int getTextFileSize(String fileName) { return (int) (new File(BASE_DIR, fileName).length(); // WRONG } A 32-bit signed int can deal with ~2GB worth of data. And if your code is not going to...
When marketplaces work and when they don't
Nov 09, 2015
Thanks to Uber’s meteoric rise in valuation, several startups are trying to mimic the idea of building marketplaces with instant gratification. So much so, that there is an aptly titled poem, &q...
"Material design" and Google's strategy
Nov 12, 2014
Android Before 2008, smartphones OS market was fragmented. There were a few big names like Palm and Symbian, but most phone manufacturers were doing their custom operating systems. For example, Motoro...
Why Nokia's (rumored) Android phone is doomed
Feb 11, 2014
In Feb 2014, WSJ is reporting that Nokia is working on an Android phone. In Sept 2010, Anssi Vanjoki, outgoing head of Nokia’s smartphone division, likens mobile phone makers that adopt Google’s softw...
A fundamental problem with Aakash (Indian Government tablet initiative)
Dec 10, 2011
This blog post is not about how good or bad the product technically is or how indigenous it is; it’s about a fundamental problem with tablets. It amazes me to see that even a journalist like T. ...
‹
›
Following is a list of selected posts, all posts can be seen here. About me can be seen here.
Programming
- Repairing database on the fly for millions of users
- It is hard to recommend Google Cloud
- When to commit Generated code to version control
- Use Makefile for Android
- Android Navigation: Up vs Back
Tech Thoughts
- Migrating from WordPress to Hugo
- LLMs: great for business but bad business
- When to commit Generated code to version control
- Abstractions should be deep not wide
- Some data on podcasting
Book Summaries
- Book Summary: One up on Wall Street by Peter Lynch
- Book summary: Sick Societies: Challenging the Myth of Primitive Harmony by Robert B. Edgerton
- Book Summary: Safe Haven by Mark Spitznagel
- Notable quotes from "How to Live" by Derek Sivers
- Book Summary: What I learned losing a millio dollars by Jim Paul
Travel
- Kyoto in three days
- Tokyo in three days
- Sri Lanka in 5 days
- Nicaragua in 5 days
- Why I always buy a local SIM in a foreign country