Notes on interview with Kent Beck about AI and why it's like a "genie"
TDD, AI Agents and coding with Kent Beck
https://www.youtube.com/watch?v=aSXaxOdVtAQ
This podcast was really fun to learn from and I recommend. Kent is famous in the programming world, so his take on AI is worth learning from.
- Kent says he's spending 6-10 hours a day programming and in 50 years of programming it's the most fun he's had, "its a blast". Kents using agentic tools where it generates a bunch of code from a single prompt.
- Kent says nobody knows what works so try it all. So we should be experimenting.
- Kents tried a number of different languages as he's experimented.
Kent thinks of AI as an "unpredictable genie". Its a genie in that "it grants wishes and you wish for something and you get it, but it's not what you actually wanted:
- it volunteers features, doesn't care about design, willing to cheat (delete/modify tests)
- there can be some good things with this, but some bad
- I love this metaphor. I have experienced these aspects of the genie.
- "sometimes its exactly what I want and sometimes its not, and in kind of a perverse way"
Kent said he tweeted 2 years ago that: 90% of his skills went to zero dollars and 10% of his skills went 1000x. His point is some skills such as "I know where put ampersands is Rust doesn't matter so much any more". Whereas thinking big thoughts. Having a vision. Setting milestones. Track a design to control levels of complexity. These are hugely leveraged skills now.
- I agree with this. Some skills have become devalued and others more valuable with this new technology.
- One callout I have is: we still review AI Gen code and have to still know the basics of programming languages used. Unless you're vibe coding and simply don't care, but Kent said he cares and is not vibe coding. So we still need to know the "bad ways" to ensure those are not used. I take it that even if some skills are devalued, you should still have them and you still need them.
As regards TDD in AI development, Kent said he often communicates things missed by the "genie" in terms of tests and also has a robust set of tests to catch mistakes made by agents e.g. create a set of tests and have some rules such as tests should always pass. There was a point made that we may rediscover value some past practices.
Great to hear about the creation of the Agile Manifesto which Kent participated in.
- Kent said he was not happy with the word Agile because everyone believes they're agile even if they're not agile at all!
- in my experience this is absolutely true
- Kent prefers the word: "conversational", as in feature development is a daily dialog, an ongoing conversation.
- Kent also said sitting together and how you sit together, lighting etc. makes a big difference but is not paid much attention.
Good conversation about extreme programming, Kent outlined the key steps in extreme programming:
- figure out what to do
- figure out structure to let us do it
- implement the features
- make sure it works as expected
"you do you", you choose how it works best for your process e.g. pairing is not mandatory
Comments
Post a Comment