Does "measure twice, cut once" have an equivalent in software design?

Something like "Spec it out twice, code it once"

Reply to this note

Please Login to reply.

Discussion

I like to measure 3 times so I only have to cut twice.

Probably something the TDD people use.

It would have something to do with automated testing, for sure. But there's no real way to enforce discipline on programmers the same way you can on craftsmen.

Test twice, deploy once?

who writes two tests for the same function?

Who writes tests?

The whole Bitcoin network certainly didn't run enough tests before deploying Taproot. Or Segwit for that matter, given how the discount actually gets used.

Spec out twice, implement 3 times... 😂

the great thing about app-layer development in bitcoin is, you don't have to reinvent the wheel

you *get* to

Probably something like implement once, sec out once from crappy implementation, implement the crappy spec, realize the new implementation sucks because the sec is bad, spec again and the third time you implement it's mostly there. But you probably have to revisit the spec again... 😂

What about "Throw shit at the wall and see what sticks"

Spec it out thrice, review the code twice and stop once freedom tech prevails

Plan to throw one (implementation) away; you will, anyhow.

-- Fred Brooks

yes, I think this is it!