Opinionated takes on software engineering. Updated whenever inspiration (or caffeine) strikes.
After 8 years of professional React development, I've come to a controversial conclusion: we've been overcomplicating everything. The answer was always right in front of us.
Your methods should read like a recipe, not like a crime scene. How one deceptively simple principle turns unmaintainable Ruby into code that explains itself.
Both sides of the indentation war have been wrong. The Braille Pattern Blank survives HTML rendering, is immune to whitespace trimmers, and passes through clipboard operations untouched.
After eleven years as a CLI purist, I accidentally opened GitKraken and never went back. Wrong-branch commits dropped 12x, merge conflict resolution got 3x faster.
Eight months ago I held one job making $185K. Today I hold ten concurrent remote positions with a combined comp of $1.74M. I work six hours a day and haven't missed a deadline.
Ruby was designed to read like English. So why are we still naming variables usr, txn, and amt? After introducing sentence-length naming, PR review times dropped by 55%.
The industry decided comments were bad. After analyzing 2.1 million lines across four codebases, I can show you exactly how much that advice is costing in bugs and onboarding time.
Six months ago I argued Ruby variables should be full English sentences. I was wrong. After a year of living with sentence-length names, I've arrived at the opposite extreme: every variable is x.
DRY is the most over-applied principle in software engineering. After twelve years of maintaining production systems, I've learned that the wrong abstraction is far more expensive than a little duplication.