Just the other day I was told about a great idea to allow our customers to reconcile with their bank statements. The "great idea" involved nothing but AI. Why not simple math like they've been using, I asked. This is better, I was told. 🧐
These people are known as "architecture astronauts", and for good reasons.
When companies allow these people to run amok, they end up with absurdly over architected systems that are needlessly complex. And in the unlikely event that any documentation does exist, it's usually unintelligible.
The only people who benefit from the complexity are the designers, because it makes them indispensable.
The companies need armies of maintenance coders to keep the thing running, because everything is so abstract that what should be simple changes take days, weeks, or months of digging for the coder to understand.
As one manager put it, "we're trying to automate a golf cart, and these guys are designing a mission to Mars"
In some cases, it's more like Seventieth System Syndrome.
I once reviewed an unintelligibly obtuse design that was so abstract everyone was afraid to touch it. You know the type: bidirectional stateful adaptable unary functors that were converted to unary predicates, which were multimapped into transflective binodal surrogates using supplemented accessors, etc.
I sat down, read the requirements, and replaced about 15,000 lines of code (it was 240 printed pages) with 8 functions (documented functions, I might add) that just barely hit the 1,000 line mark.
The architect was livid, of course. But the developers were actually relieved, because they could actually understand it and use it.
I've been the duct-tape programmer, the developer, the validator, the auditor, and the consultant. I avoided the architect role (despite many attempts to put me in it) out of a desire to retain what little sanity I have left.
While these abominations were nightmares to deal with, I have to admit they were quite profitable financially. They paid for my condo. I'd routinely walk into a "three to six week" contract and end up staying for years cleaning up the damage done by these unintelligible systems and replacing them with something the client could actually understand and use.
Sounds like we've had similar tech careers. 🤓 My house is the one software built, er, paid for. After three and a half decades, I pulled the ripcord in January and work for me now. Turns out having an AuDHD boss isn't all that different from the randomization inflicted by others, but I get to keep all upside and control all the downside now.
I walked in April of 2025, after four point one decades, so I beat you by eight months 😄.
The funniest part of staying in touch with contacts still at those companies is that not only has nothing changed, in many (if not most) projects, progress has been retrograde. The projects that they said in 2022 *had* to go live in 2027 were delayed to 2028 when I left, are now pushed back to 2030, and rumours have them being delayed further to 2032. 🤣
It reminds me of when I used to take all of December off. I'd leave the last week of November or the first week of December knowing the due dates. And when I returned in January, not only had zero progress been made, but now the due dates were pushed back, and in many cases much of the work that had been done (by others) now had to be redone.
The only thing I really miss is laughing at the stupidity of it, which, well, that's what WorkChronicles is for.
Yeah. I keep in touch with many of former crew. The lunacy continues to accelerate with the advent of the unmagic genies. In the immortal words of Kent Beck, our rate of code production has exceeded our rate of trust acquisition.
This is either premature optimization or your seller ready to set you a trap.
Just the other day I was told about a great idea to allow our customers to reconcile with their bank statements. The "great idea" involved nothing but AI. Why not simple math like they've been using, I asked. This is better, I was told. 🧐
I think this is really "gold plating" and not "premature optimization". 😊
This page is gonna get me promoted! 😔
These people are known as "architecture astronauts", and for good reasons.
When companies allow these people to run amok, they end up with absurdly over architected systems that are needlessly complex. And in the unlikely event that any documentation does exist, it's usually unintelligible.
The only people who benefit from the complexity are the designers, because it makes them indispensable.
The companies need armies of maintenance coders to keep the thing running, because everything is so abstract that what should be simple changes take days, weeks, or months of digging for the coder to understand.
As one manager put it, "we're trying to automate a golf cart, and these guys are designing a mission to Mars"
Second System Syndrome™ is alive and well. 🙄
In some cases, it's more like Seventieth System Syndrome.
I once reviewed an unintelligibly obtuse design that was so abstract everyone was afraid to touch it. You know the type: bidirectional stateful adaptable unary functors that were converted to unary predicates, which were multimapped into transflective binodal surrogates using supplemented accessors, etc.
I sat down, read the requirements, and replaced about 15,000 lines of code (it was 240 printed pages) with 8 functions (documented functions, I might add) that just barely hit the 1,000 line mark.
The architect was livid, of course. But the developers were actually relieved, because they could actually understand it and use it.
I do know the type. I have been the architect, the developer, and the consultant on such monstrosities many times. 😞 Thanks for reminding me. 🤬 🤣
I've been the duct-tape programmer, the developer, the validator, the auditor, and the consultant. I avoided the architect role (despite many attempts to put me in it) out of a desire to retain what little sanity I have left.
While these abominations were nightmares to deal with, I have to admit they were quite profitable financially. They paid for my condo. I'd routinely walk into a "three to six week" contract and end up staying for years cleaning up the damage done by these unintelligible systems and replacing them with something the client could actually understand and use.
Sounds like we've had similar tech careers. 🤓 My house is the one software built, er, paid for. After three and a half decades, I pulled the ripcord in January and work for me now. Turns out having an AuDHD boss isn't all that different from the randomization inflicted by others, but I get to keep all upside and control all the downside now.
I walked in April of 2025, after four point one decades, so I beat you by eight months 😄.
The funniest part of staying in touch with contacts still at those companies is that not only has nothing changed, in many (if not most) projects, progress has been retrograde. The projects that they said in 2022 *had* to go live in 2027 were delayed to 2028 when I left, are now pushed back to 2030, and rumours have them being delayed further to 2032. 🤣
It reminds me of when I used to take all of December off. I'd leave the last week of November or the first week of December knowing the due dates. And when I returned in January, not only had zero progress been made, but now the due dates were pushed back, and in many cases much of the work that had been done (by others) now had to be redone.
The only thing I really miss is laughing at the stupidity of it, which, well, that's what WorkChronicles is for.
Yeah. I keep in touch with many of former crew. The lunacy continues to accelerate with the advent of the unmagic genies. In the immortal words of Kent Beck, our rate of code production has exceeded our rate of trust acquisition.
New feature ticket avoidance 101 😉
Purposeless structural excellence.