Iterative Planning

For me, probably the biggest challenge of software design is trying to come up with a complete, future-proof solution entirely in my head before I have even built anything. What if I am wrong about some part of my design? What if the future is not quite how I planned it? The truth is, I am nearly guaranteed to get it a little wrong, and that’s actually a good thing. As you realize your mistakes, you should continue planning. Planning should start before you start writing code, but planning should not end until you have completed the project.

One great technique for planning is creating prototypes. In this context, a prototype is code that is quickly written to prove that your design does or does not work. If your prototype ...

Get Learning to Program now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.