The Blog

This blog is hand written, in (n)vim, over ssh. It uses no php or javascript, and thus no cookies. Please excuse any spellig mistakes. Any complaints can be directed as follows: $ echo $complaints > /dev/null


2024-02-21 - Lamenting over Software.

I have no interest in software development anymore...

Or rather what it's become;

When I started out in university the concept of containers and micro-dependansies were new. We did not think of the consequenses of how it would inpact how software was made... As it was simple then.

Now, Micro-Dependencies have put us all in hell. Software that used to be maintenable, and small, and fast, has become slow, big, and a mess.

Before you could just $ ./configure && make && make install [autotools], and you could see what librarise or other dependancies were missing, and you knew exactly how to install them to build some software...

Now you have to have thigs like yarn, npm, cargo, poetry and npm to even install the smallest projcet. The problem is not so much the technology, but rater how it is used: people pull in dependecise for every littel thing. And those depenedencies pull in even more dependencies.

Sometimes developers pull in a big library that in turn in built on other dependencies. This has made the developer go from understanding how things work, to being so detatched that they have no clue how to fix a problem if it arises.

This has resulted in call-stacks that are over 200 levels long [call-stack]!

I'm running I was this server on an old EEEPC 1005HA when I wrote this acticle. I tried to use it to run a matrix-irc-bridge, a moderation bot (draupnir/mjolnir) and a matrix-RSS bringe. But all those plans have been shattered because... Microdependencies that will not download, install scripts in the micro-dependecies that try to do things that make no sense... I even tried to use Docker, to build something... Only for it to fail! [fail-bulids]

And I have no idea how to fix it, as the depenencies are automatically being hadeled! Out side of my control!

This... This is why I lament software development. It's too automated, too out of our hands. Developers have given up on writing code, and instead have the "There is a library for that"-mentality. Developers do not know how to reverse a string! [reverse-string]

It is as Pastor Manul Laphroaig [poc-or-gtfo] said in his many sermons about abstractions, and not knowing what really is going on underneath all those abstractions... We don't know what is going on in the bits and the bytes of the wire... and that is more true now than ever.

Gustav.

Footnotes

[autotools]
Not that I want to imply that Autotools is good... Meson is better... But you get the idea.
[call-stack]
https://greenspector.com/en/the-software-world-is-destroying-itself-manifesto-for-a-more-sustainable-development/
Section: We are (too) abstract
[fail-builds]

https://github.com/matrix-org/matrix-rust-sdk-crypto-nodejs/issues/34

https://github.com/aio-libs/frozenlist/issues/581

https://github.com/pyca/cryptography/issues/10441

[reverse-string]
https://www.davidhaney.io/npm-left-pad-have-we-forgotten-how-to-program/
[poc-or-gtfo]
https://www.davidhaney.io/npm-left-pad-have-we-forgotten-how-to-program/