Articles

Software engineering lessons from production, raw and honest from the heart β€” almost 20 years of them. Jump to a year in the sidebar, or browse categories and curated collections.

79 articles from 2024 Β· show all

August 2024

Tips from 8 months of TanStack/Router in production

On my last day at Tia I wrote a master vision doc for our TanStack Router app. Here are the parts I can share.

Some personal news

When you see a unicorn, you gotta hop on

Small change in big scary codebase?

Making small changes in large unfamiliar codebases is the job. That's what engineers do all day.

Why SQL is Forever followup

Yes SQL is super flexible. That is its strenght and its weakness

July 2024

Why SQL is Forever

Never underestimate the power of good marketing for bad products. NoSQL was fun but SQL is here to stay.

90% of performance is data access patterns

Removing a single line of code slashed database CPU usage by 66% 🀘

DRY – the common source of bad abstractions

Swizec reveals the hidden pitfalls of overusing the DRY principle in coding, leading to bad abstractions. Discover how to write adaptable, efficient code that avoids these common traps.

Scaling Fast, my talk on lessons from tech startups

This talk from C3Fest summarizes the key lessons I've learned in the past ~15 years of working in tech startups. It's a high level overview of a new book I'm writing (60% done).

You can't side-quest a product

Here's a trap that talented engineers fall into all the time. It creates frustration, burnout, and the genre of tweets that read like "Why don't people care about the amazing work I'm doing".

June 2024

6 books engineers should read

Here are 6 books I'd buy every engineer who joins my team, if I ran a team. You might like 'em too.

The dangers of spurious automation and how to automate anything

Discover the potential pitfalls of spurious automation and learn a foolproof three-step process to automate any task effectively. Don't miss out on understanding when automation is truly beneficial and when it can become a hindrance.

It’s okay to just do the work

Not everything needs to work forever. Start by solving the problem

Using AI to spark connections at a conference

We built an AI algorithm to help you find interesting people to talk to at a conference. And make sure it's not awkward

Notes for my Scaling Fast talk next week

Decided to publish my notes because they look pretty useful on their own. Although I hope my stage presence adds a little something something. Enjoy :)

How to use feature flags

All the hard lessons learned using feature flags in production. Skips the why and gets to the how.

May 2024

Why useSuspenseQuery works

A reader asked 'Wtf why does this work?'

Cleaner components with useSuspenseQuery

Sick of complex states in your code? React Suspense can simplify your components for more readable, robust code!

Why you shouldn't use AI to write your tests

If you derive tests from your implementation, you can't apply the Beyonce rule. What if the code is wrong and that wasn't the programmer's intent? We'll never know. The bug now exists in both places.

Validate your assumptions early

here's war story from last summer. I've talked about it in workshops but haven't written it down before. It's for a book I'm working on.

A better roadmap solves many issues

Many engineering challenges start with your roadmap

Get us over the water, not build us a bridge

effective engineering teams should work *with* their product owner/manager, not *for* them

April 2024

Outputs are not outcomes

Doing the work is not the same as getting things done

Coordinating at the end is too late

When working: sync first *then* async

43 years of the actor model

The actor model is now part of everyday tooling and ensures concurrency safety. Understanding the principles behind it helps you write less buggy code.

From trivial to complex – 4 software quadrants

You can classify software projects into 4 quadrants from trivial to complex

Coding is a brawl, not a battle of wits

Discover why coding is more like a boxing match, focused on delivering results rather than perfect technique. Learn how to navigate economic upheaval and prioritize business needs in this unexpected comparison.

Approve with comment

A shift in your code review process can boost your team's productivity. Empower authors to make the call.

The best engineering books get good 5 years into your career

The best engineering books aren't those you read at the start of your career. It's the ones you appreciate 5 years in.

March 2024

Architecture is like a path in the woods

You're doing too much. Sit back, relax, see how people *want* to use the code. THEN build the abstraction.

How to start playing with generative AI

Generative AI is entering the early adopters phase of Moore's technology cycle. Lots of people have been asking me for the quickest and cheapest way to get started.