This content originally appeared on DEV Community and was authored by Asher Buk
βNo,β Kenoros corrected him. βWe have to learn how to do design more efficiently.β
This quote is from The Deadline by Tom DeMarco β one of my favorite books, and this is one of my favorite takeaways from it. That small printerβs ornament at the bottom of the page is not just decoration β itβs the cherry on top
In this scene, Mr. Tompkins meets the first programmer of Morovia, Kenoros Aristotle.
They talk about the process of creating software… and Kenoros looks at it not from the perspective of improving processes, but from reduction β how to reduce the amount of work while increasing quality and speed.
The book was written and published in the β90s, but even in the age of AI this takeaway is absolutely relevant.
Planning software design and crafting specs (digital artifacts) is essential β and discussing them with AI can be both fun and useful.
Later, Kenoros calls high-level design just hand-waving, and suggests doing real design β low-level design β not βon the flyβ while coding, but during the planning stage.
Otherwise, iterative refactoring and endless debugging are inevitable…(which, to be honest, they usually are anyway)
Obviously, this level of design skill is possible for engineers who have already planned and built many systems.
As for me, to start forming low-level design specs, I usually need to sit down with the code thatβs already being developed from the high-level spec.
What about you?
This content originally appeared on DEV Community and was authored by Asher Buk