# Lawrence Kesteloot - Write code top-down (Highlights) ![rw-book-cover|256](https://readwise-assets.s3.amazonaws.com/static/images/article2.74d541386bbf.png) ## Metadata **Review**:: [readwise.io](https://readwise.io/bookreview/38422074) **Source**:: #from/readwise #from/reader **Zettel**:: #zettel/fleeting **Status**:: #x **Authors**:: [[Lawrence Kesteloot]] **Full Title**:: Write code top-down **Category**:: #articles #readwise/articles **Category Icon**:: 📰 **URL**:: [www.teamten.com](https://www.teamten.com/lawrence/programming/write-code-top-down.html) **Host**:: [[www.teamten.com]] **Highlighted**:: [[2024-03-06]] **Created**:: [[2024-03-08]] ## Highlights - With *top-down* design you start with a vision of the whole program, perhaps what some of the components are, and how they fit together, but the components themselves are still fuzzy. You implement a high-level version of the program that calls simplistic versions of the components (that might do nothing) and slowly work your way downward into the details of each component. ([View Highlight](https://read.readwise.io/read/01hr9xt24em4x1papyay21wf8v)) ^688858132 - The correct way to architect and write a program is top-down. ([View Highlight](https://read.readwise.io/read/01hr9xttfmmc69n9pfmanrf5gn)) ^688858449 #opinion - The large problem, and this is the killer of bottom-up programming, is that you end up with programs that are *too complex*. As you develop a component, you’re not sure how it’ll be used, so you’re tempted to over-generalize. ([View Highlight](https://read.readwise.io/read/01hr9xw6qkf8z52adte8tg38j9)) ^688858944