3 ms·
My TLDR: > 1h of up-front thinking about the problem and your solution can save you days of refactoring, testing, debugging. The author proposes writing specif
by pintxo 6y ago
My TLDR:
> 1h of up-front thinking about the problem and your solution can save you days of refactoring, testing, debugging. The author proposes writing specifications as good way of up-front thinking.
Authors own conclusion:
> There is nothing magical about specification. It will not eliminate all errors. It cannot catch coding errors; you will still have to test and debug to find them. (Language design and debugging tools have made great progress in catching coding errors, but they are not good for catching design errors.) And even a formal specification that has been proved to satisfy its required properties could be wrong if the requirements are incorrect. Thinking does not guarantee that you will not make mistakes. But not thinking guarantees that you will.
- aesyondu 6y agoWe can shorten it further. Dwight D. Eisenhower once said, "In preparing for battle I have always found that plans are useless but planning is indispensable."
- teekert 6y agoPro-tip: Do this with others. I have some colleagues that without fail are better then me at structuring my own thoughts and before writing a large amount of code I almost always explain my goals to them.