Why Software Sucks

So, I am uncertain as to whether or not you have noticed, but you may have, that software sucks dick for taste. You, me, and every other fool on this planet has had more trouble with software than any other man-made thing (except maybe antibiotic-resistant gonorrhea, yeah, that's certainly worse). One of the primary drivers of software inadequacy is human stupidity. Another is a different form of human stupidity. The final cause is structural human stupidity.

Stupidity 01: Illogic

Humans are supremely bad at being consistently logical. We are so bad at it that we have identified almost as many logical fallacies as we have logical rules. This is a problem for software because humans have to write the software, and they have to write it for machines. Machines are built to perform computation, because people suck at computation. There is the whole field of software engineering that employs humans to do this one thing that humans are supremely ill-equipped to do: logic. To make it worse, these humans are often expected to this for protracted lengths of time in environments where they are continually interrupted. Humans who are bad at logic by virtue of their humanity are paid to do logic work for extended periods of time while being continually interrupted... sounds great! What could possibly go wrong?

Stupidity 02: Failure to Plan for Continuity

If you are considering using a framework or hipster language for your next project, please find another industry for your employment. That or consider killing yourself for the good of mankind. Bad software lives for-fucking-ever. You don't believe me? Shitty software from 1959 is still alive, kicking, and getting people rich. When you sit there equivocating over which 12 JavaScript frameworks you want to use, you never consider whether or not those frameworks will be actively supported or patched 5 years from now (much less 60). You don't even consider what a pain in the dick it will be to refactor and rewrite sections of code for newer versions of those frameworks should you consider security updates/patches at all. This is assuming that whatever language you are actually considering doesn't just fucking die like it most likely should, because like those JS frameworks, it's just hipster bullshit that got over-hyped and doesn't actually solve any problem. The incessant whining about companies having NIH syndrome isn't always valid. Sometimes, people duplicate effort because they don't wish to be left high and dry when something ceases to be supported by a third party, or when it randomly changes in ways that break backward compatibility while fixing some horrible security exploit. People never consider those who come after now.

Stupidity 03: Unrealistic Expectations

Some fucker promised people that some shit would be available in 2 weeks, so now some poor schmuck has to spend 15 hour days trying to make the forementioned promised shit that doesn't actually exist at all yet. That isn't really how this shit works, and this is often why people use some hipster framework or language. You see, doing shit properly takes a very long time, and involves fuck tons of testing as each new line or group of lines of code is written. After weeks or months of development and unit testing, it then has to be sent to some group of people to use in production. Flaws will be found and then shit has to get fixed, unit tested, and then sent back for more testing. Only after, perhaps, months or a year or so does the software really then qualify as stable. Unfortunately, our operating systems don't even get this treatment anymore. Now, shit is more like: it compiles? Ship it! This isn't just sales, marketing, or management. This is also the consumer who now demands ever changing, and ever improved software. People are no longer content to merely have things that work. People now expect that shit be constantly improving at ever-faster rates. This expectation means that businesses can't actually test anything. So, when your porn video freezes after a minute and a half, your phone locks up, and you are left with a swollen sack and your dick in your hand while you reboot your phone? That's because you couldn't wait another 6 months for the latest iOS release.

What's the conclusion?

Software sucks because people suck and software is written by people.

© MMIX - MMXVII absurd.wtf
Licentiam Absurdum