Jason Roberts’s Philosophy of Breadth-First Development
Want to get notified about new posts? Join the mailing list and follow on X/Twitter.
First clip from the first ever Math Academy Q&A: Jason Roberts’s philosophy of breadth-first development.
- Ask yourself: “If we could clone ourselves and do everything in parallel, what’s all the stuff we’d be working on?”
- Start doing as many of those things as you can possibly juggle
- Put up with short-term pain, everything is hard, visible progress is slow, people doubt you
- Come out with the correct generalizations so you’re not stuck in a bad situation when the concrete sets.
“If you go too far down the line and you have lots of customers using stuff, you can’t break things and go back. It’s hardened. That’s where you put the road, that’s where the road is. It’s too late to say, ‘we’re going to create a new highway through this subdivision.’”
It’s hard to overstate how painful breadth-first development is in the short term, but it’s equally hard to overstate how beneficial building the correct generalizations is for the long term.
Breadth-first development is painful. It’s a ton of work, a dozen progress bars all crawling forward in parallel.
But it’s the right choice if you’re playing the long game, because it forces you to generalize correctly instead of overfitting yourself into a straitjacket.
And if you’re serious about winning the long game, you’re not going to contort your path to avoid short-term pain at the expense of long-term gain.
If optimizing the long game puts you on a path through short-term hell, then so be it, you march straight through hell and remember that “when you’re going through hell, keep going.”
Want to get notified about new posts? Join the mailing list and follow on X/Twitter.