Hey Greg,
This whole email resonated, it's software garbage piled on top of
garbage on top of garbage for decades, yet somehow it runs the world. š
These bits definitely hit all the way home though:
* /I develop and test something with great care, then deploy it and it
crashes. This is part of the general āit works on my machineā disease.
/
* /I can stop successful work on Friday night, then resume on Monday
morning and everything utterly fails./
It works on my machine so often that we just follow the old joke and
package up and ship the whole machine now (docker, k8s).
I've also lost count of the times everything is compiling then suddenly
a mysterious version mismatch error a few hours later requiring the .vs
folder or nuget cache blown away, astounding. AI will surely save us. /s š
Enjoy the garden, the list won't be the same!
cheers,
Tony
On 7/10/2024 11:07, Greg Keogh via ozdotnet wrote:
Hello everyone, it's not Friday, but I have an announcement and tale
that might interest you.
Iām easing into retirement.
Companies Iāve been working for are being sold, retired or are no
longer developing new software. Running out of legacy work would drive
a regular dev to seek new work, but in my case, I declined to create a
LinkedIn page, or send out feelers through contacts for new work,
because⦠Iām burnt out.
Why?
I learned to code in 1975 and became an official programmer in 1981. I
wrote FORTRAN, ALGOL, COBOL, assemblers and various JCLs and scripting
languages on Honeywell, FACOM and IBM mainframes. Things were simpler
back then of course because you moved inside the ecosystem of a
particular manufacturer and had high-level support and voluminous and
accurate documentation. If you wanted to solve a problem or do
something edgy, then an answer was nearby. It was a different simpler
world, but ⦠everything worked.
Now, well into the 21st century of IT, everything doesnāt work. My
wife often hears me shout from the other end of the house āEverything
f***ing doesnāt workā. I also only semi-jokingly say Iāll have these
words carved into my gravestone: āEverything f***ing doesnāt work all
the f***ing timeā.
Overall, what has burnt me out is /complexity /and /instability/. Iāll
break those topics down a bit.
Everything in modern IT is *complicated *and *fragile*. Every new
toolkit, platform, pattern, library, package, upgrade, etc is unlikely
to install and work first time. I seem to spend more time getting
things working and updated than I do actually writing software. In a
typical working month I might have to juggle Windows, Linux, Android,
iOS, macOS, Google, Amazon, Azure, .NET, Python, PowerShell and C++,
and they all have different styles and cultures. Software engineering
has fractured into so many overlapping pieces that Iām tired of trying
to maintain competence in them all.
That leads naturally to the problem of *dependencies*. Just having so
many moving parts with so many different versions available produces
dependencies more complex than abstract algebra. How many times have
you hit some kind of compile or runtime version conflict and spent
hours trying to dig your way out of it? (A special salute to Mr
Newtonsoft there!) Or you install A, but it needs B, which needs C,
and so on.
I often hit incomprehensible blocker *problems *for which web searches
produce absurd and conflicting suggestions which donāt work anyway.
All I can do is futz around and change things randomly until things
work again. I donāt know what went wrong and I donāt know what went right.
*The Web* -- Browsers, HTML, CSS, JavaScript, the HTTP protocol, JSON
and REST can all burn for eternity in fusing hellfire. About ten years
ago I told my customers I refused to write any more web UI apps.
However, I was forced to do so a few times and Iām still scarred by
the horror. Itās just over 30 years since the web became public and
weāre still attempting to render serious business apps using dumb
HTML. HTML5 is the joke of the century (so far). I still lament the
loss of Silverlight.
*Git *-- Someone is lucky I donāt own a gun.
*Fads *-- An exercise for the reader: name all the platforms, kits,
patterns and frameworks that you know were once the coolest thing and
now might only be found in history articles. An advanced exercise is
to speculate on which currently cool things will be gone soon.
Finally, here is a list of typical things that give me the shits, just
as they pop out of my head.
* Attempting to compile projects that have been idle for a year or
more will usually fail due to changed dependencies or deprecations
and it can take hours to get them going again.
* I develop and test something with great care, then deploy it and
it crashes. This is part of the general āit works on my machineā
disease.
* I can stop successful work on Friday night, then resume on Monday
morning and everything utterly fails.
* My USB microscope and music recording both stopped working
recently, and it took me a week to discover that it was a block by
Windows 11 app security (I thought it was a hardware or
incompatibility problem due to lack of clearĀ error messages).
* Security! Walls, barriers and hurdles of security everywhere to
crash through. Yes, I know we need security everywhere to stop the
black hats, but itās also stopping developers. Lord knows how many
times Iāve hit run or debug on my own PC and I get āAccess deniedā
and hours of research will be required. Iām also fed-up with
ceaseless 2FA requests via email or SMS.
* Everything about mobile devices. The ludicrous variety of devices
and brands makes app development a nightmare. Then you must
struggle through the variety of labyrinthine publishing processes.
* My final entry is simply the tiny āthousand cutsā that torture you
during development: version mismatches, inconsistent behaviour,
strange errors, editor quirks, missing files, etc. All the little
personal problems that slip between the cracks of bigger issues
Iāve previously mentioned. Your mileage may vary.
In summary, being a software engineer is now so exhausting that after
40+ years of a generally enjoyable career immersed in programming and
computer science Iāve reached a point I never thought would arriveā¦
Iām burnt out. Even working on my hobby projects has become a burden
because they suffer from many of the impediments previously mentioned.
I still plan to attend some upcoming conventions and Meetups, and Iāll
be watching the forum, but my posts will diminish because Iām probably
out trying to prevent the garden and house from disintegrating back
into the earth from whence they came.
/Greg Keogh/
--
ozdotnet mailing list
To manage your subscription, access archives: https://codify.mailman3.com/