4 ms·
You're right. There are a few problems. First, the gray beards that expect everyone to know "the basics" had built stuff so complex and convoluted that nobody
by betwixthewires 4y ago
You're right.
There are a few problems.
First, the gray beards that expect everyone to know "the basics" had built stuff so complex and convoluted that nobody can use it 100% correctly without their domain knowledge. It's fine, computers are complicated, but expecting everyone to keep it all in their heads is unreasonable. So people buried that stuff below a layer of abstraction, but that didn't solve the fundamental problem and so even these higher level tools are convoluted and cumbersome.
Then, you've got the people doing this on purpose to ensure that they are unfirable. This is pretty self explanatory, but there's a perverse incentive to overcomplicate your job so you come off as indispensible, it's like CIA and wall street lingo but for devs.
Of course I'd doesn't help that many people just go along with it for a paycheck.
You've got people that want to sell their cool shiny thing as a solution to anything and everything, who cares about the consequences. Everyone knows that these decisions ripple through time, but they don't care about that.
And finally, there's the guys that just don't know what they're doing, bit off more than they can chew, are in over their heads.
All of this leads to miles of technical debt, an industry made of it, increasingly unusable systems that require teams to understand and maintain.
I don't know that there is a solution. I don't know that it could happen any other way. But I do know that regardless of that, these systems cannot stand the test of time when built this way. If you want a future where computers serve humans and are ubiquitous, this path won't get you there.