Writing
Opinions (64)Technical (25)Featured (3)
2025
The Easiest Way to Meditate
Apr 03
The Truth About Bangalore’s Water and Hair Loss
Apr 02
ChatGPT is the Teacher I Always Wanted
Apr 01
WiFi Passwords Should Be Dumb
Mar 13
The Audience Matters
Jan 07
2024
Maybe You're Not Sick of Programming
Jun 27
Voice is (mostly) Bad UI
Apr 16
The Needless Bullshit of Having a 'Mission'
Jan 27
Ditching PaaS: Why I Went Back to Self-Hosting
Jan 18
2023
In Praise of Wasting Your Time
Dec 12
On Task Anxiety
Aug 23
Why I Find Bullshit Work Intolerable
Aug 06
An Indie Hacker’s Idea Sieve
Aug 01
For Your Mental Health, Vacation is Not Always the Right Answer
May 17
I Hate Typeforms
Mar 19
2022
There's no Incentive to Colonize Mars
Jul 09
Why You Should Blog Even if No One Reads it
Jul 01
A Brief, Messy History of Google's Messaging Products
Jun 29
Using Analytics is Not a Privacy Violation
Jun 28
“Print” Is the Only Debug Tool You Need
Jun 27
Value Has Nothing To Do With A Dev's Salary
Jun 25
My LASIK Eye Surgery Experience
Jun 23
2020
Sometimes No One's at Fault And We Should Accept That
Jul 25
When Will We Run Out of Fossil Fuels? Likely, never
Jun 06
Being Fast Matters
May 17
How I Started Enjoying Programming Again
Mar 29
The Most Important Thing Paul Graham Taught Me
Jan 11
2019
Accepting Technical Debt As Important As Fighting It
Sep 15
How I Got Better at English as a Non-native Speaker
May 22
The Marie Kondo Programmer (Or, Why I Love Messy Code)
Feb 16
2018
Why Paul Graham is Wrong About Choosing an Esoteric Language
Dec 02
"History is Written By Victors" is a Foolish Phrase
Dec 01
Falsehoods Programmers Believe About Hiring
May 12
Will You Be Out of Job if You Don’t Study ML?
Apr 10
The Science Behind Excellence is Known; Why Isn’t, then, Everyone an Expert?
Mar 30
Why Trends Matter (And Numbers Don't)
Mar 28
The Bitter Truth of Learning: it’s Tough, Unpleasant, and Often Pointless
Mar 24
2017
Want to Finish Your Side-project? Start by Getting Something on the Screen
Dec 23
The Futility of Bitcoin's 'Digital Gold' Vision
Dec 10
Survivorship Bias is a Poor Excuse for not Trying
Nov 26
Solving Energy Problems is Complicated; "The Grid" Tells us Why
Oct 17
Writing, Fast and Slow
Aug 25
Why You're Better Off Taking a Safe Career Path
Jul 23
Things You Can Omit in an MVP
Jun 28
You Stop Craving for the Perfect Working Environment
May 18
Contradictory Startup Advice
May 12
Why Programmers Should Automate More
May 06
How Quantity Trumps Quality?
Apr 15
Understanding Money: Where Does it Come From?
Apr 13
What is the Highest Salary a Programmer Can Make?
Mar 08
Things Programmers Should Never Say : "Who wrote this awful code!"
Feb 25
2016
How to Teach Offside To a Five-Year Old
Dec 08
Why Does Subway Have Terrible Customer Onboarding
Nov 29
Fallacy of Hating the Rich
Oct 02
What is Hacking?
Sep 29
It Didn't Work Out
Aug 12
Never Underestimate the Power of Creating Something Useless
Jun 15