I suspect that the near future of programming is that you will be expected to produce a lot of code fast because that’s the entire point of having an AI, you just tell it what to do and it generates the code, it would be stupid to pay a human to do it slowly instead… but you will also be blamed for everything the AI does wrong, and expected to fix it. And you will be expected to fix it fast, by telling the AI to fix it, or maybe by throwing all the existing code away and generating it again from scratch, because it would be stupid to pay a human to do it slowly instead… and you will also be blamed if the AI fails to fix it, or if the new version has different new flaws.
It will be like being employed to gamble, and if you don’t make your quota of jackpots per month, you get fired and replaced by a better gambler.
nah 🙈, the stupid companies will self-select out of the job market for not-burned-out good programmers, and the good companies will do something like “product engineering” when product managers and designers will make their own PoCs to validate with stakeholders before/without endless specifications handed over to engineers in the first iteration, and then the programming roles will focus on building production quality solutions and maybe a QA renaissance will happen to write useful regression tests when domain experts can use coding assistants to automate boring stuff and focus on domain expertise/making decisions instead of programmers trying to guess the indent behind a written specification twice (for the code and for the test.. or once when it’s the same person/LLM writing both, which is a recipe for useless tests IMHO)
(..not making a prediction here, more like a wish TBH)
One the one hand, I understand this approach (firing programmers that don’t use AI), but on the other hand, this is like firing someone for using emacs rather than PyCharm (or VSCode or whatever is the new hot). It’s sad that it looks like people are going back to being measured by lines of code.
I’d like to be able to just provide high level overviews of what I want done, then have an army of agents do it, but it doesn’t seem to be there yet (could be skill issue on my part, though).
No, no—you misunderstand agile! See, in our company, we have AIgile! It’s a slightly modified version of agile which we find to be even better! The scrum master is GTP-4o, which is known to be wonderful at encouraging and building team spirit.
I have yet to have worked in a company that actually implemented agile, rather than saying they use agile, but then inventing their own complicated system involving lots of documentation and meetings.
I actually have Scrum Master training… so I can confidently say that most companies that claim to do Scrum are actually closer to doing its opposite.
retrospective—either not doing it at all because it is a waste of time (yeah, remove the only part of the process where the developers can provide feedback about the process, and then be surprised that the process sucks), or they are doing some perverted reverse-retrospective where instead of developers giving feedback to the company, it is company giving feedback to developers, usually that they should work faster and make fewer mistakes
there is no “Jira” in the Scrum Guide
there is no “Confluence” in the Scrum Guide
and the retrospective is exactly the place where the developers should say “Jira and Confluence suck, we want some tools that actually work instead”, but I already mentioned the retrospective
there are no managers in Scrum; and no, it is not about renaming the manager’s role, but about giving the team autonomy
the only deadlines in Scrum are the ones negotiated at sprint planning, and not in the sense of “management says that the deadline is after two sprints, but you have the freedom to choose which part you implement during the first sprint, and which part during the second one”
I only experienced something like actual Scrum once, when a small department in a larger company decided to actually try Scrum by the textbook. It was fun while it lasted. Ironically, we had to stop because the entire company decided to switch to “Scrum”, and we were told to do it “properly”. (That meant no more wasting time on retrospectives; sprints need to be two weeks long because more sprints = more productivity; etc.)
I find it very amusing that everyone proudly boasts of being “Agile” when they have all the nimble swiftness in decision and action of a 1975 Soviet Russia agricultural committee.
I suspect that the near future of programming is that you will be expected to produce a lot of code fast because that’s the entire point of having an AI, you just tell it what to do and it generates the code, it would be stupid to pay a human to do it slowly instead… but you will also be blamed for everything the AI does wrong, and expected to fix it. And you will be expected to fix it fast, by telling the AI to fix it, or maybe by throwing all the existing code away and generating it again from scratch, because it would be stupid to pay a human to do it slowly instead… and you will also be blamed if the AI fails to fix it, or if the new version has different new flaws.
It will be like being employed to gamble, and if you don’t make your quota of jackpots per month, you get fired and replaced by a better gambler.
I also wish there was no industry that would serve as an example for that employment model...
nah 🙈, the stupid companies will self-select out of the job market for not-burned-out good programmers, and the good companies will do something like “product engineering” when product managers and designers will make their own PoCs to validate with stakeholders before/without endless specifications handed over to engineers in the first iteration, and then the programming roles will focus on building production quality solutions and maybe a QA renaissance will happen to write useful regression tests when domain experts can use coding assistants to automate boring stuff and focus on domain expertise/making decisions instead of programmers trying to guess the indent behind a written specification twice (for the code and for the test.. or once when it’s the same person/LLM writing both, which is a recipe for useless tests IMHO)
(..not making a prediction here, more like a wish TBH)
One the one hand, I understand this approach (firing programmers that don’t use AI), but on the other hand, this is like firing someone for using emacs rather than PyCharm (or VSCode or whatever is the new hot). It’s sad that it looks like people are going back to being measured by lines of code.
I’d like to be able to just provide high level overviews of what I want done, then have an army of agents do it, but it doesn’t seem to be there yet (could be skill issue on my part, though).
so, the end of “agile”?
No, no—you misunderstand agile! See, in our company, we have AIgile! It’s a slightly modified version of agile which we find to be even better! The scrum master is GTP-4o, which is known to be wonderful at encouraging and building team spirit.
I have yet to have worked in a company that actually implemented agile, rather than saying they use agile, but then inventing their own complicated system involving lots of documentation and meetings.
I actually have Scrum Master training… so I can confidently say that most companies that claim to do Scrum are actually closer to doing its opposite.
retrospective—either not doing it at all because it is a waste of time (yeah, remove the only part of the process where the developers can provide feedback about the process, and then be surprised that the process sucks), or they are doing some perverted reverse-retrospective where instead of developers giving feedback to the company, it is company giving feedback to developers, usually that they should work faster and make fewer mistakes
there is no “Jira” in the Scrum Guide
there is no “Confluence” in the Scrum Guide
and the retrospective is exactly the place where the developers should say “Jira and Confluence suck, we want some tools that actually work instead”, but I already mentioned the retrospective
there are no managers in Scrum; and no, it is not about renaming the manager’s role, but about giving the team autonomy
the only deadlines in Scrum are the ones negotiated at sprint planning, and not in the sense of “management says that the deadline is after two sprints, but you have the freedom to choose which part you implement during the first sprint, and which part during the second one”
I only experienced something like actual Scrum once, when a small department in a larger company decided to actually try Scrum by the textbook. It was fun while it lasted. Ironically, we had to stop because the entire company decided to switch to “Scrum”, and we were told to do it “properly”. (That meant no more wasting time on retrospectives; sprints need to be two weeks long because more sprints = more productivity; etc.)
I find it very amusing that everyone proudly boasts of being “Agile” when they have all the nimble swiftness in decision and action of a 1975 Soviet Russia agricultural committee.