Comment by BobbyTables2

3 days ago

The issue was never coding.

Today, developers assemble a Tower of Babel built of libraries they do not understand. Those libraries were largely built the same way.

There is “no value” in a company maintaining their own purpose-optimized HTTP client, database, GUI framework, or anything else.

Each layer adds features but subtle crappiness in the details not understood.

I shudder to think how many string libraries end up in a modern system…

“Practical” solutions like “this WXYZ fails 5%” of the time, let’s add a retry loop. Of course, this the next layer sees random failures that are hard to reproduce, so they add the same.

At some point our modern supercomputers are repeating millions of operations because of a stupid bug. The user just sees a sluggish app and gets annoyed.

We could write simple, understandable, efficient software that is a joy to ship and use. Unfortunately that doesn’t add value so we are extremely careful to never waste resources on such!

While I empathize with this view in principle, I believe that all organic systems eventually devolve into deep and rather chaotic complexity as they become more advanced. Biology is in many ways extremely inefficient, but it is also very error-tolerant because it has so many retry and error-correcting mechanisms.

And humans possess nowhere near as gifted a talent as God or natural selection or whatever you believe drives the natural world. So it’s to be expected that the systems we produce will be much more buggy than biology! It’s kind of futile to imagine it could happen any other way… we are just not that good.