Few days ago I stumped upon this great post from Nikita Tonsky (@nikitonsky)
I’ve been programming for 15 years now. Recently our industry’s lack of care for efficiency, simplicity, and excellence started really getting to me, to the point of me getting depressed by my own career and the IT in general.
read the whole thing it is worth it
also many agreeing comments there
Doing that for about 20+ years I quite agree too with most of what is written there,
my current pet peeve: Google Chrome, it eat up all my RAM and it's not that much faster.
But it is not just that, the software I daily use, also the libraries, the frameworks, ... literally everything,
from backend to frontend, standards, API ... everything is a just a big pile of messy shit.
Seriously I could rant 24h straight on everything that is broken, but it does not get me depressed or disenchanted, because that's the job.
There is nothing much you can do about it in the first place, like you not gonna tell this or that big corporation to fix their shit when you're just a tiny little ant of dev, sure you can fill bugs reports, complain a bit and ... what? ultimately you just move on.
But again, that is the job.
The job of a developer in the wider sense of the term is to solve problems, or put another way get shit done.
It's a bit like the X-Files motto: Trust no one
You can not really trust fully:
- the operating system
- the programming language
- the libraries
- the tools
or at least you should expect anything to be broken at one moment or another
that's it: Nothing works. Everything is broken.
Now, when you decide to accept that, you can always hack or work around whatever does not work as expected.
That's your job to make it work.
Little consolation prize is if you're knee deep in something complex enough
you'll probably get away with whatever ugly workaround that just work.