I like this take by @kentbeck on how AI-assisted programming changes the balance of which skills are most important
From this interview with @gergelyorosz https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent
I like this take by @kentbeck on how AI-assisted programming changes the balance of which skills are most important
From this interview with @gergelyorosz https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent
@helge @kentbeck @gergelyorosz that's one of the most interesting questions right now, I think
We clearly need to reimagine aspects of how we train new software engineers
@cocoaphony @chris @simon @kentbeck @gergelyorosz I actually think it is mostly the same issue, just at a much, much lower speed. Someone who knows assembly usually writes better code (not because she is older, but has a solid understanding of how things work internally, though admittedly that may be counter today).
But AI brings that issue (not understanding what happens) from an acceptable level to 100x.
Either way, I think it can be helpful to senior devs because they can rate the output.
@helge @chris @simon @kentbeck @gergelyorosz Of course when higher level languages were first developed, senior engineers did not feel that the issue was an acceptable level :D
I'm seeing some junior devs get in way over their heads following AI advice. (I'm kind of developing a stock lecture about it…) I'm also seeing junior-to-intermediate devs use AI to explore and learn deep things they wouldn't have dared before. I'm seeing the dig into details that before they'd have left as unknowable.
@cocoaphony @helge @chris @simon @kentbeck @gergelyorosz the difference (to my mind) is that if you have a solid foundation in “how things actually work”, you can design an experiment to figure out what is really happening so you don’t get misled. Absent that foundation … all you can do is hope.
That doesn’t have to mean “writing assembly,” but “knowing that there’s an actual spec and knowing how to read one” is an _invaluable_ skill that’s severely diluted by vibe coding. Even the idea of having a spec is diluted.
@steve @helge @chris @simon @kentbeck @gergelyorosz Also true. Though time and again I discover that how I think things actually work, based on my decades of foundations, is...huh, not actually how things work (which I learn when someone like Steve explains it to me... :D)
Certainly, learning foundations will always be valuable. But I remember my mentor in 1996 fussing that I shouldn't waste so much time digging into details. I think they were wrong. But it's not like *everyone* used to care.
@helge @steve @chris @simon @kentbeck @gergelyorosz Agreed that coding assistants are definitely lowering the bar (in a good way) for non-devs to build their own tools. I've seen quite a lot of that, and it's a great thing.
I think some folks are scaling that incorrectly to "AI, build and deploy a replacement for Netflix, I'll come back in an hour." This is very related to how folks confuse prototypes with "almost ready to ship."
@cocoaphony @helge @steve @chris @simon @kentbeck @gergelyorosz
Don’t you think we (collectively) need less, but better quality software?
@tuparev @helge @steve @chris @simon @kentbeck @gergelyorosz not at all. I’m very excited about things that allow semi-technical people to build moderate-quality, bespoke solutions to their personal and esoteric problems.
Excel macros gave people an approachable way to build terrible software to solve real problems that they never could have gotten from “high-quality” accounting software. I think that was a good addition to what VisiCalc had already done.