That’s true, but spaghetti code was always faster to write than good code before as well. I will agree that the speed gap probably has grown though. That’s why tools like AI need discipline.
If managers and engineers don’t understand that their code will turn into garbage and the business will get reputational harm and lose customers / get sued / have more tech debt to fix and they’ll eventually learn their lesson. In the meantime it’s going to be a painful process where upper management see extra speed, expand their scope or downsize their staff, then learn that they have crumbling foundations and need to adjust. This has publically happened a few times already. Things will stabilize in time.
Complication is, broadly speaking, much of the decision making only thinks to when their current bonus stock vests. So long term thinking is not well rewarded. If you think long term, then your short term thinking competitor screws you up long enough anyway.
I strongly suspect the next step is for a dramatic reduction in the compensation for software development. If it’s not really significantly any more profitable than another trade, then you won’t see as many people who seem to actively hate it trying to do it anyway.
Reminds me of a conversation I overhead, a guy trying to impress a girl with how much money he was going to get back in college. He was going into software development to make big money. Girl asks “but I thought you were majoring in communications, why do that if you want to do software?”. “Oh, well, I tried but I couldn’t understand the course work, so dropped it, figured I’d just get some degree, and then just get some certification and do software development for the money without the dumb coursework”. Basically since the late 90s we’ve had a flood of those types, and this phenomenon just exacerbates the problem.
Provlem being is that it is not an equal amplifier.
Good engineer spends a morning going back and forth and maybe gets something done that wild have taken them all day.
Bad engineer puts first draft slop in production in a couple of minutes.
Bad engineer gets to put out something every few minutes, good engineer works too make it actually right instead of merely looking specifically right.
That’s true, but spaghetti code was always faster to write than good code before as well. I will agree that the speed gap probably has grown though. That’s why tools like AI need discipline.
If managers and engineers don’t understand that their code will turn into garbage and the business will get reputational harm and lose customers / get sued / have more tech debt to fix and they’ll eventually learn their lesson. In the meantime it’s going to be a painful process where upper management see extra speed, expand their scope or downsize their staff, then learn that they have crumbling foundations and need to adjust. This has publically happened a few times already. Things will stabilize in time.
Complication is, broadly speaking, much of the decision making only thinks to when their current bonus stock vests. So long term thinking is not well rewarded. If you think long term, then your short term thinking competitor screws you up long enough anyway.
I strongly suspect the next step is for a dramatic reduction in the compensation for software development. If it’s not really significantly any more profitable than another trade, then you won’t see as many people who seem to actively hate it trying to do it anyway.
Reminds me of a conversation I overhead, a guy trying to impress a girl with how much money he was going to get back in college. He was going into software development to make big money. Girl asks “but I thought you were majoring in communications, why do that if you want to do software?”. “Oh, well, I tried but I couldn’t understand the course work, so dropped it, figured I’d just get some degree, and then just get some certification and do software development for the money without the dumb coursework”. Basically since the late 90s we’ve had a flood of those types, and this phenomenon just exacerbates the problem.