3min chapter

Legacy Code Rocks cover image

Software Design with John Ousterhout

Legacy Code Rocks

CHAPTER

How Much Design Should You Do Ahead?

In the olden days with the old waterfall approach it was thought well we'll just design the whole system and get the design right before we build any code. But you can't so again one of the things I'm quite certain of is that you simply cannot design an entire system in advance. You can't even design a very big piece of it entirely. Even when I design classes from scratch I typically find I have to redo it about three designs. First one that's really bad, the second one that's getting better than the third one that's actually pretty good. The reverse approach of just sort of debugging your way into existence is equally bad because then you never ever do a design

00:00

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode