Here's a fun thing. Using the latest AI to code backend and front-end code. Every couple of weeks, have to stop, go through every line and module, and throw out pretty much 90% of the code, manually refactor, and rewrite it.
It offers a good starting point, but the minute things get slightly complicated, you have to step in. I feel bad for people who think this will make it so they don't need experienced developers and architects. They're in for a rough ride.
An interesting point I heard the other day: if AI can replace entry level jobs, doing simple scripts that AI can definitely do (because it essentially just spits out the stack overflow/Reddit/etc training data verbatim), then companies no longer need entry level programmers.
If they don't need entry level programmers, how do you get future senior programmers? Skipping directly to advanced stuff without getting practical experience on the simple stuff is incredibly hard.
What happens when the current senior programmers retire in larger numbers, and there's very few replacements because the ladder is gone?
What happens when the current senior programmers retire in larger numbers, and there's very few replacements because the ladder is gone?
I don't have a solution. I'm just stocking up on physical paper books, so I'll have something to entertain me while nothing works, until someone figures it out.
(I'm sort of joking, and sort of serious. I do expect Internet service outages to become a lot more common. But I actually just like books, anyway.)
That's a problem for Q72 and they're incapable of looking past Q4. Besides, they'll have already jumped ship by then, what do the execs care if they make this quarter just ever so slightly more profitable
Agree. Software engineering is a marathon - not a sprint. These AI tools are useful to get something up real quick, but I have a hard time seeing how they can be useful for long term maintenance work.
It’s still a marathon, even if the name ”sprint” is used. The point is the same: software engineering is about ensuring long term maintenance. It’s about building software that can sustain through multiple sprints.
The typical code from an AI agent can barely sustain a single sprint without having to restart from scratch.
I know, but in most companies they don't give a fuck.
What's done is done, sure there can be some minor maintenance, but goodness forbids you need to rewrite something that handles the 10x throughtput that built up over the years.
I am usually able to get some cleanup tasks in, but from what I've heard, not many people are.
It's just sad, that some think 'sprint' means 'this is done and dont dare to tell me you need more time, what have you been doing the last X sprints?'.
The first draft is fun.
The second draft is pain.
The third draft is cathartic.
Figure out features, add add add.
Add/change features, realise the spaghetti mess and poor design decisions you made in the first draft.
Clean everything up with better design and code.