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

@simon @kentbeck @gergelyorosz Do they discuss how people are going to acquire those 10% in the future (I assume those are the advanced seniority 10 percents?)

@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

@simon @helge @kentbeck @gergelyorosz my friend mentioned the other day we should also think about "training the AI". Should I publish books that are written for AI and not books written for people?
@chris @simon @kentbeck @gergelyorosz If you get paid for that, sure 🙂 I still think AI is a huge issue because of the "stealing" part (doesn't matter what you call it, but I think we all understand the issue and that it leads to content not being published anymore publicly).
It's essentially the other side of the seniority coin, if everyone just synthesises code, there is no new input for number 5.
@helge @chris @simon @kentbeck @gergelyorosz I'm sure that StackOverflow is a huge input for programming information, and I know I'm not alone in dramatically reducing my time there. After writing over 5700 answers over 15 years, I haven't answered anything in 2025. I do expect this to become an existential problem for the models across a lot of fields.
@helge @chris @simon @kentbeck @gergelyorosz But to Beck's point, I think to a first order, you should think of coding assistants like a higher-level programming language, not a complete reinvention of programming. I find that most of the usual skills still apply, even when they're running at their best. And to "how will junior devs learn the low level skills I know," I'd say the same way most devs learn assembly language. They don't. And it's mostly fine.
@helge @chris @simon @kentbeck @gergelyorosz My much bigger concern, having used coding assistants quite a bit now, is that they have the ability to really trash a code base really fast when they get confused, which is often. And I expect that this will be a major problem. I really like using them at the very start, but they tend to go off the rails pretty often, and I have to take control back. I expect that will give plenty of experience to junior devs.

@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.

@helge @chris @simon @kentbeck @gergelyorosz (And yes, AI hallucinates. And also, when you research things on the internet, the internet hallucinates. And when you study things in books, they also sometimes are just flat wrong. There are definitely differences, but it is not a fundamental break with the past.

@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.

@cocoaphony @helge @chris @simon @kentbeck @gergelyorosz The thing I worry about losing (and which we had already lost to some extent pre-wet-hot-AI-summer) isn't any specific skill or knowledge, but rather the common agreement that computer systems are deterministic things and you can figure out how anything works (or why it doesn't work) by a combination of deliberately reading a specification and conducting experiments to validate it.
@steve @helge @chris @simon @kentbeck @gergelyorosz But I am with you about "vibe coding." I expect that's a fairly short-lived thing. When I see people who are really successful with it, it turns out there was often a *lot* of planning that went into that "vibe." :D
@cocoaphony @steve @chris @simon @kentbeck @gergelyorosz I wouldn't underestimate that. It isn't that different to "regular" users hacking up Excel macros or say Shortcut scripts (which usually s*** from a dev pov, but they do the job). It is an enabler, and as long as the users can properly rate the output, that is kinda ok (seniority again).

@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.

@tuparev @cocoaphony @helge @steve @chris @kentbeck @gergelyorosz I think we need more, better quality software. I want quality AND quantity!
@cocoaphony @chris @simon @kentbeck @gergelyorosz Of course that always was a thing. The level w/ AI is *way* higher, like 100x (or 1000x according to the article) vs like 2x or maybe 10x. Entirely different scale and problem domain.
Suggesting that this is just the regular "new abstraction" complaint is distracting from the broadness of the issue, IMO.