AI-powered
podcast player
Listen to all your favourite podcasts with AI-powered features
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