Remix.run Logo
▲ pydry a day ago

yeah, I find when I write most software and am careful with testing that most of the bugs break down like this:

* 49% : specification error - wrong thing built in the right way

* 49% : bug involving something the software integrates with (e.g. 3rd party library, UI, database, API endpoint)

* 2% : code bugs

formal verification won't eliminate that 2%. it might get it down to 1%. there are still two enormous elephants in the room.

this is why everyone talks about it and nobody does it.

▲skydhash a day ago | parent [-]

> * 49% : specification error - wrong thing built in the right way

This is why experienced devs says they spent half their time trying to get concrete requirements. You don't need to code something to know that the change request is incomplete and need more details.

> * 49% : bug involving something the software integrates with (e.g. 3rd party library, UI, database, API endpoint)

That's the reason there's a lot of books written about architecture and the necessity to push the dependencies to the edges of your code. Easy to patch stuff that way.

> * 2% : code bugs

With good tests, you can get this down quite low.