3 ms·
Orson Scott Card used to advocate, at least at a talk I was at a decade ago, write it-throw it away-write it again. Something like "if you wrote it once, you c
by dmv 18y ago
Orson Scott Card used to advocate, at least at a talk I was at a decade ago, write it-throw it away-write it again. Something like "if you wrote it once, you can write it again shorter and better". I've found that to be an important programming insight. Too often, I find myself stepping off the rapid interation path. Inevitably, it is much faster and much more productive to write it the awful and obvious way, prove that with some relaxed constraints the approach can work, and then rewrite it.
Frankly, I've loved Stephenson's works but they have gotten progressively looser. I've attributed this to his success relaxing his editors; this is much like a Senior Software Architect not being held to the same design and code review standards. The result is still impressive and functional, but may not be minimal.
- haasted 18y agoFred Brooks actually made a similar point in "The mythical man-month". "Plan to throw one away", ie. build it, throw it away, and rebuild with the knowledge gained from building it the first time. Update: http://en.wikipedia.org/wiki/Mythical_man-month#The_Pilot_System http://en.wikipedia.org/wiki/Mythical_man-month#The_Pilot_Sy...
- omouse 18y agoBut Brooks changed his mind about it because it was assumed that the project would use the flawed waterfall process. So if you're using the right process, you can iterate and move back and forth between different stages (i.e. testing, specification design) easily, thus eliminating the need for re-writing from scratch.