Kent Beck (00:00:07): I'd like to thank Augment Code for sponsoring this first season of Still Burning. Kent Beck (00:00:13): I can remember my excitement when I saw my first IDE. Kent Beck (00:00:17): You could find anything, you could change any code, and I was just so excited. Kent Beck (00:00:23): But the era of making changes to code like a watchmaker Kent Beck (00:00:28): is gone. Kent Beck (00:00:29): Most of the changes now are going to be made by the genie. Kent Beck (00:00:33): And augment code is helping go beyond the IDE with their new intent product. Kent Beck (00:00:39): Programmers stay oriented. Kent Beck (00:00:41): They keep learning. Kent Beck (00:00:42): They see what's happened. Kent Beck (00:00:44): They make strategic decisions. Kent Beck (00:00:46): And meanwhile, agents go and do the detailed work. Kent Beck (00:00:50): This season of Still Burning is sponsored by Work OS. Kent Beck (00:00:55): We're all exploring this exciting transition from idea to running system that can Kent Beck (00:01:01): go so much faster than we're used to before. Kent Beck (00:01:05): But going from a demoable system to a system that can be sold to individuals and quickly sold Kent Beck (00:01:15): to whole enterprises requires a kind of technical foundation that doesn't fit Kent Beck (00:01:20): neatly into the idea to system support. Kent Beck (00:01:26): And that's what WorkOS addresses. Kent Beck (00:01:28): It's the technical foundation for enterprise-ready products. Kent Beck (00:01:32): Kent Beck here, Kent Beck (00:01:34): host of the podcast, Kent Beck (00:01:35): Still Burning, Kent Beck (00:01:37): where we have conversations with geeks who still care and are still doing something Kent Beck (00:01:42): about it. Kent Beck (00:01:43): I want to contrast that with the geeks who kind of given up. Kent Beck (00:01:49): They learn some skills. Kent Beck (00:01:51): They practice those skills. Kent Beck (00:01:54): They're not changing anything. Kent Beck (00:01:55): Maybe they're even working in the same code base, Kent Beck (00:01:58): in the same style, Kent Beck (00:02:00): on the same team, Kent Beck (00:02:03): the same rhythm, Kent Beck (00:02:05): the same tools, Kent Beck (00:02:06): the same language. Kent Beck (00:02:08): year after year after year. Kent Beck (00:02:11): I don't have anything against people like that. Kent Beck (00:02:14): It's just not my people. Kent Beck (00:02:18): And the problem right now with that approach to being a geek is that everything's changing. Kent Beck (00:02:28): you're not guaranteed that you're going to be able to keep doing exactly the same Kent Beck (00:02:33): kind of thing, Kent Beck (00:02:35): even if that's what's sustained you for 10 or 20 or 30 years. Kent Beck (00:02:40): The rules of the game are changing. Kent Beck (00:02:43): The technology landscape is shifting. Kent Beck (00:02:46): We don't know what the shape of the new landscape is. Kent Beck (00:02:49): We don't know what the shape of the landscape is going to be even a year from now. Kent Beck (00:02:56): So adaptability brings value in ways that it hasn't before, Kent Beck (00:03:05): especially compared to just executing on the same kind of things you've executed in Kent Beck (00:03:14): the past. Kent Beck (00:03:16): We've all been parachuted into a wilderness. Kent Beck (00:03:21): Nobody knows the answer. Kent Beck (00:03:24): Five years ago, Kent Beck (00:03:25): if you'd said, Kent Beck (00:03:26): oh, Kent Beck (00:03:26): we have too many defects in production, Kent Beck (00:03:29): I would have been able to press play and given you the same advice that I'd given Kent Beck (00:03:35): 10 years before and 15 years before and 20 years before. Kent Beck (00:03:39): About here's how you align authority and responsibility. Kent Beck (00:03:43): Here are the tools that you use. Kent Beck (00:03:45): Here's the ways to think about it. Kent Beck (00:03:47): The thing is, nobody knows the answers. Kent Beck (00:03:51): If you have too many defects in production and you're doing augmented development, Kent Beck (00:03:57): how do you address that? Kent Beck (00:03:59): Nobody knows. Kent Beck (00:04:01): We know some things in principle, Kent Beck (00:04:03): but we don't know things in practice in the same kind of way that we have in the Kent Beck (00:04:07): past. Kent Beck (00:04:08): So it behooves all of us to approach this changing situation Kent Beck (00:04:17): with a curious combination of confidence and humility. Kent Beck (00:04:23): We don't know the answer. Kent Beck (00:04:25): Nobody knows the answer. Kent Beck (00:04:26): We'll try some things out. Kent Beck (00:04:29): Now, Kent Beck (00:04:30): trying things out is a skill on its own, Kent Beck (00:04:34): just as executing a known strategy is a skill on its own. Kent Beck (00:04:40): So the kinds of things that we'll emphasize in the conversations here are things like curiosity. Kent Beck (00:04:48): things like cheap experimentation, things like trying out bad ideas. Kent Beck (00:04:58): If an idea is cheap enough to try out, Kent Beck (00:05:01): you don't have to prejudge it, Kent Beck (00:05:04): you just try it and see what happens. Kent Beck (00:05:06): And 99 times out of 100, it's gonna turn out to be a bad idea. Kent Beck (00:05:12): But that one time that it turns out to be a good idea, Kent Beck (00:05:17): Oh, that's so sweet. Kent Beck (00:05:19): Because one, it's a genuine discovery, which just feels great to me. Kent Beck (00:05:27): Two, you have no competition because nobody else is dumb enough to try that idea. Kent Beck (00:05:34): Three, you're going to be contributing to your community. Kent Beck (00:05:38): Everybody's trying to figure this stuff out. Kent Beck (00:05:42): The people who aren't busy saying, don't bother trying to figure this out. Kent Beck (00:05:47): It's all going to go away. Kent Beck (00:05:49): And the people who say, don't bother trying to figure it out. Kent Beck (00:05:52): It's impossible anyway. Kent Beck (00:05:54): So those people, we won't talk to those people. Kent Beck (00:05:57): But we will talk to the kind of geeks who still care and are still doing something about it. Kent Beck (00:06:04): I know that sounds like it'll be a bunch of geezers, but that isn't the case. Kent Beck (00:06:10): There are young people doing amazing things right now and they still care and Kent Beck (00:06:18): they're still doing something about it. Kent Beck (00:06:21): And we'll have conversations with those kinds of people to find out how they fuel Kent Beck (00:06:26): their own curiosity Kent Beck (00:06:29): how they find experiments to run, Kent Beck (00:06:31): how do they run those experiments less expensively so that they can try out a wider Kent Beck (00:06:39): range of stupider ideas to bring back discoveries to our community. Kent Beck (00:06:45): And I use that word geek and I want to define it. Kent Beck (00:06:53): I use G. Paw Hill's definition of geek, which is, Kent Beck (00:07:00): There we go. Kent Beck (00:07:01): Whose great idea was it to do this in front of a fire? Kent Beck (00:07:05): Gah. Kent Beck (00:07:07): Anyway, Kent Beck (00:07:09): G-Paw says, Kent Beck (00:07:10): a geek is someone who is highly technical, Kent Beck (00:07:14): highly creative, Kent Beck (00:07:16): and highly desirous of being both technical and creative. Kent Beck (00:07:21): And that means you can apply geekdom to all kinds of activities. Kent Beck (00:07:27): You can be a baking geek, you can be an art geek, you can be a music geek. Kent Beck (00:07:32): We're talking mostly to programmers, but we'll see where this conversation goes. Kent Beck (00:07:40): I think once we get the conversations kicked off, Kent Beck (00:07:44): we'll discover that that geeky mindset, Kent Beck (00:07:48): highly technical, Kent Beck (00:07:49): highly creative, Kent Beck (00:07:50): and highly desirous of being both, Kent Beck (00:07:53): applies to a much wider range of human activities than we suspected. Kent Beck (00:08:00): And I look forward to bringing the lessons, Kent Beck (00:08:05): the attitudes, Kent Beck (00:08:06): the experiences, Kent Beck (00:08:07): the stories of people who are geeky in different kinds of ways. Kent Beck (00:08:11): So you'll notice that Still Burning has sponsors and we love our sponsors and we Kent Beck (00:08:17): really appreciate the contributions that they've made Kent Beck (00:08:22): We hope that we can make a contribution back to them so that this continues. Kent Beck (00:08:27): That's the way that I can afford to bring you the conversations that we're having. Kent Beck (00:08:34): But this is not a place to pit. Kent Beck (00:08:39): We won't be talking about the version 4.3.7 of blah, blah, blah, blah, blah, blah. Kent Beck (00:08:46): This is a place, Kent Beck (00:08:47): take a step back, Kent Beck (00:08:49): sit back under a blanket in a cloud of smoke and say, Kent Beck (00:08:54): so why do you still care? Kent Beck (00:08:59): What do you care about? Kent Beck (00:09:01): What are you doing about it? Kent Beck (00:09:02): What have you learned recently? Kent Beck (00:09:04): What are you excited to try next? Kent Beck (00:09:07): Those are the themes here. Kent Beck (00:09:09): And if somebody has a book that's recently come out or a product that they've just Kent Beck (00:09:13): launched, Kent Beck (00:09:13): that's great. Kent Beck (00:09:14): We're not gonna be hearing about the details of that, Kent Beck (00:09:17): but we will hear about the story that led up to the creation of that book or that Kent Beck (00:09:23): presentation or that product. Kent Beck (00:09:26): The kinds of stories that'll help you, Kent Beck (00:09:31): as you navigate this unknown space that we've all been dropped into. Kent Beck (00:09:38): I think one of the things that's challenging for a lot of geeks is that they Kent Beck (00:09:44): haven't chosen the disruption that they're living through. Kent Beck (00:09:51): Five years ago, you could have highly refined skills Kent Beck (00:09:56): Expect to spend the rest of your career using them only to find that, Kent Beck (00:10:02): you know, Kent Beck (00:10:02): for example, Kent Beck (00:10:04): I've written two books on how to write code that humans can read well. Kent Beck (00:10:08): Gone. Kent Beck (00:10:10): Just not a skill that has any leverage anymore. Kent Beck (00:10:17): I'm sad about that. Kent Beck (00:10:20): because I loved crafting code that could be quickly scanned, Kent Beck (00:10:26): easily dove into, Kent Beck (00:10:30): changed in various kinds of ways. Kent Beck (00:10:33): I felt good when I made progress on those dimensions. Kent Beck (00:10:38): And now I just don't exercise that anymore. Kent Beck (00:10:41): Kind of like using a clutch or remembering phone numbers. Kent Beck (00:10:46): Just not a skill that matters anymore. Kent Beck (00:10:49): But I think a lot of the dislocation that people are feeling right now is because Kent Beck (00:10:54): they didn't choose this. Kent Beck (00:10:56): They got good at something. Kent Beck (00:10:58): They were able to support their families to save for their futures based on those skills. Kent Beck (00:11:05): And now those skills have been devalued by changes introduced from the outside. Kent Beck (00:11:11): And that, yes, that genuinely happened and it happened to all of us. Kent Beck (00:11:16): The question is not, Kent Beck (00:11:18): can we hang on to our horseshoeing niche service until the last horse dies? Kent Beck (00:11:30): It's how are we going to adapt? Kent Beck (00:11:34): And I think a lot of people are applying a conservative approach. Kent Beck (00:11:40): What's the least I can change and still keep Kent Beck (00:11:45): making my house payments. Kent Beck (00:11:48): And I don't think that that approach serves the individuals involved well, Kent Beck (00:11:55): and it certainly doesn't serve our community well. Kent Beck (00:11:58): We're all trying to figure this out. Kent Beck (00:12:01): And the people that I'm gonna have conversations with here Kent Beck (00:12:07): are the kind of people who still care and they're still doing something about it. Kent Beck (00:12:12): They're the kind of people who say, Kent Beck (00:12:14): okay, Kent Beck (00:12:15): well, Kent Beck (00:12:17): what I got good at 10, Kent Beck (00:12:20): 20, (00:12:23): 30 years ago, Kent Beck (00:12:21): this is not good enough anymore. Kent Beck (00:12:24): All right, so what is good enough? Kent Beck (00:12:27): What is gonna make a difference now? Kent Beck (00:12:29): How can I learn from my community? Kent Beck (00:12:31): How can I contribute to my community? Kent Beck (00:12:34): How can I teach the juniors? Kent Beck (00:12:36): How can I learn from the juniors? Kent Beck (00:12:37): One of the most exciting things about augmented development for me is how often I Kent Beck (00:12:42): get fantastic advice from people who are half my age. Kent Beck (00:12:47): I'll say, well, here's my approach to this and Kent Beck (00:12:51): One of the younger folks who have more experience with augmented development than I Kent Beck (00:12:56): do will say, Kent Beck (00:12:57): ha, Kent Beck (00:12:58): Pops, Kent Beck (00:12:59): that is not gonna work. Kent Beck (00:13:00): And I just think that's fantastic. Kent Beck (00:13:05): I'm excited to learn from them. Kent Beck (00:13:07): Now, sometimes I got my two cents to put in and I need to do that. Kent Beck (00:13:15): I need to figure out which of the principles that I built my career on really are Kent Beck (00:13:23): evergreen and which of them were context dependent in a way I wasn't aware of. Kent Beck (00:13:30): And I need to change those principles and hold on to the other ones. Kent Beck (00:13:35): Even if they don't feel like it's not obvious how to apply the principle in this new world. Kent Beck (00:13:43): And that's what I intend to do in these conversations is by bumping up against Kent Beck (00:13:49): geeks, Kent Beck (00:13:50): highly technical, Kent Beck (00:13:52): highly creative, Kent Beck (00:13:52): highly desirous of being both. Kent Beck (00:13:56): Bumping up against their... Kent Beck (00:14:00): I was gonna say struggles, Kent Beck (00:14:02): their exploration of what's possible now and what just doesn't matter now. Kent Beck (00:14:08): We're all gonna learn what we can be doing next, Kent Beck (00:14:14): what directions maybe we need to be shifting towards that we weren't going in the Kent Beck (00:14:19): past, Kent Beck (00:14:20): and to see how it is that we can use and shape the tools that are shaping our work. Kent Beck (00:14:29): So let me give you an example of a kind of a skill that has less leverage now. Kent Beck (00:14:36): And it's not clear that it'll have any leverage in the future. Kent Beck (00:14:40): So I wrote my first book, Small Talk Best Practice Patterns. Kent Beck (00:14:46): The one startling sentence for that book is how to write code that people can read. Kent Beck (00:14:53): I looked at all the different habits of coders Kent Beck (00:14:57): in the small talk code base. Kent Beck (00:15:00): And I said, what are the habits that tend to make code readable by human beings? Kent Beck (00:15:08): Now there's 93 patterns in there that talk about all the way from where the spaces and tabs go. Kent Beck (00:15:18): All the way up to class naming, design kind of issues. Kent Beck (00:15:27): And early in my career, I'd spend a lot of energy on... Kent Beck (00:15:39): I take some code and I manipulate it this way and I see, is that easier to read? Kent Beck (00:15:43): No. Kent Beck (00:15:44): Let's try it this way. Kent Beck (00:15:45): Is that easier to read? Kent Beck (00:15:46): No. Kent Beck (00:15:47): Let me try it this way. Kent Beck (00:15:48): Okay. Kent Beck (00:15:49): That seems to be easy to read. Kent Beck (00:15:50): Let me take one more pass through and see if I can make it even easier to read. Kent Beck (00:15:56): The ultimate expression of that is the literate program where a program reads like a book. Kent Beck (00:16:02): And for that, it became easier to read. Kent Beck (00:16:07): to simplify the code so it was easier to describe than it was to describe code that Kent Beck (00:16:13): wasn't as simple as it could be. Kent Beck (00:16:15): So, Kent Beck (00:16:15): and I loved that process where I'd take some code and Ward Cunningham taught me the Kent Beck (00:16:22): aesthetics Kent Beck (00:16:30): We go through some code, Kent Beck (00:16:31): we make it as clear as we could, Kent Beck (00:16:33): then we go through it again and make it even clearer and clearer and clearer. Kent Beck (00:16:38): And that's a skill that would pay off. Kent Beck (00:16:42): You're working in a team, you need to continually change some code. Kent Beck (00:16:48): The code that was written to be changed was more valuable because it embedded more Kent Beck (00:16:54): optionality, Kent Beck (00:16:55): which is, Kent Beck (00:16:56): we'll talk about more that comes up in tidy firsts. Kent Beck (00:17:00): So that was a set of skills. Kent Beck (00:17:01): It was an aesthetic, Kent Beck (00:17:02): and then I wrote implementation patterns, Kent Beck (00:17:04): which is the Java version of the same thesis, Kent Beck (00:17:10): how to write code that's easy for people to read. Kent Beck (00:17:17): It's not that people don't need to understand code now. Kent Beck (00:17:24): When the genie does something, you need to understand, wait, what just happened? Kent Beck (00:17:30): What changes did you make? Kent Beck (00:17:32): What assumptions are embedded in there? Kent Beck (00:17:35): But the fine grain tweaking and tuning, Kent Beck (00:17:39): the where do I put an extra blank line to convey some very subtle meaning, Kent Beck (00:17:46): just doesn't matter anymore. Kent Beck (00:17:51): The skills that I had no longer have the same leverage that they used to have. Kent Beck (00:18:00): I could apply them, I could not apply them. Kent Beck (00:18:02): A year later, you wouldn't know the difference. Kent Beck (00:18:06): It doesn't mean that structure doesn't matter. Kent Beck (00:18:08): It certainly does matter. Kent Beck (00:18:10): But the skill of creating structure has very little to do with operating a text editor now. Kent Beck (00:18:18): It's more about understanding at higher level, Kent Beck (00:18:23): higher conceptual level, Kent Beck (00:18:25): hey, Kent Beck (00:18:25): what's going on here? Kent Beck (00:18:27): What kind of changes am I likely to make? Kent Beck (00:18:29): How do I want to optimize the code to make that? Kent Beck (00:18:35): So change still matters, Kent Beck (00:18:38): but the details of it don't matter in the same kind of way that a blacksmith could Kent Beck (00:18:46): choose to continue shoeing horses or they could learn to become a mechanic when the Kent Beck (00:18:52): car, Kent Beck (00:18:52): the automobile came about. Kent Beck (00:18:56): And that's the moment that we're in. Kent Beck (00:18:59): We're blacksmiths, Kent Beck (00:19:01): highly skilled, Kent Beck (00:19:03): highly refined skills that were really valuable in a certain frame of reference. Kent Beck (00:19:11): Some of those skills transfer over, some of them don't. Kent Beck (00:19:15): So how do we figure out which is which? Kent Beck (00:19:19): How do we figure out, okay, this part of this was an implementation. Kent Beck (00:19:24): Where the blank lines go, that was part of implementation that's no longer relevant. Kent Beck (00:19:31): Versus the aesthetic of it that says, okay, this is clean and easy to read. Kent Beck (00:19:37): Let's optimize for that. Kent Beck (00:19:40): Or this is clean and easy for an LLM reader. Kent Beck (00:19:48): for a genie to manipulate, Kent Beck (00:19:49): so it's optimized for that, Kent Beck (00:19:51): even if it's maybe harder for people to understand. Kent Beck (00:19:55): Now, Kent Beck (00:19:55): my hope is always that we're gonna find win-wins where we'll develop skills that'll Kent Beck (00:20:02): make code that's both easier to manipulate by the genie and easier for humans to Kent Beck (00:20:08): understand, Kent Beck (00:20:08): and that we'll learn how to leverage the genie Kent Beck (00:20:12): to help us understand code. Kent Beck (00:20:15): I have a project called the GPU Sorted Map. Kent Beck (00:20:21): So I wanna have a map with sorted keys that's stored on the GPU. Kent Beck (00:20:28): And it was the first GPU code I'd written and I didn't quite understand some of the vocabulary. Kent Beck (00:20:37): So I asked the genie to write me a fairy tale Kent Beck (00:20:42): that described the fetch operation. Kent Beck (00:20:45): And it talked about the, Kent Beck (00:20:47): there's the queen and she issues this, Kent Beck (00:20:50): and then the pages all go running off to various parts of the castle. Kent Beck (00:20:56): And then they come back with the answers and blah, blah, blah, blah, blah. Kent Beck (00:20:59): Not that that's such a great idea, Kent Beck (00:21:02): but something like that is going to help us to understand whether it's Kent Beck (00:21:10): rendering changes as an Instagram feed or rendering changes as a newspaper. Kent Beck (00:21:17): I understand that's kind of a dated reference, but there you go. Kent Beck (00:21:22): Or rendering it as a fairy tale or a haiku or interpretive dance. Kent Beck (00:21:28): I don't know what. Kent Beck (00:21:29): We have new problems, but we also have new resources and we don't understand Kent Beck (00:21:36): what the problems are, Kent Beck (00:21:37): we don't understand what the resources are, Kent Beck (00:21:39): and the resources keep changing and the problems keep changing. Kent Beck (00:21:44): And I'm going to have conversations with people who find that exciting, Kent Beck (00:21:52): even if it's a little frightened sometimes. Kent Beck (00:21:55): It's a new world. Kent Beck (00:21:56): We were down in the lowlands, we had crops, we had grain storage, we knew how to stay alive. Kent Beck (00:22:05): We've all been plucked out of that environment and dropped into the wilderness, Kent Beck (00:22:09): everybody all together. Kent Beck (00:22:11): No, Kent Beck (00:22:11): there's principles, Kent Beck (00:22:12): aligning authority and responsibility, Kent Beck (00:22:16): putting skin in the game, Kent Beck (00:22:20): inexpensive experimentation, Kent Beck (00:22:22): creativity, community, sharing, safety. Kent Beck (00:22:28): All of those basic principles don't change at all in a genie enhanced, augmented world. Kent Beck (00:22:40): So that stuff doesn't change. Kent Beck (00:22:44): Being a geek, highly technical, highly creative, highly desirous of being both, Kent Beck (00:22:50): that the value of that doesn't change. Kent Beck (00:22:54): What the techniques are are certainly gonna change. Kent Beck (00:22:58): That creativity is gonna change. Kent Beck (00:23:02): So here's a sequence that happens as you get older as a geek. Kent Beck (00:23:08): First, you don't know what would be cool to implement. Kent Beck (00:23:12): You're a junior, somebody tells you what to implement, you implement it. Kent Beck (00:23:15): And pretty soon, Kent Beck (00:23:16): though, Kent Beck (00:23:16): you start thinking, Kent Beck (00:23:17): you know what would be really cool is we had one of these things because that would Kent Beck (00:23:20): make this other thing easier. Kent Beck (00:23:22): And sometimes you're right and sometimes you're wrong. Kent Beck (00:23:25): And that's fine. Kent Beck (00:23:26): And that's what it means to be a senior is you can see the things that don't exist yet. Kent Beck (00:23:32): But here's what happens after senior. Kent Beck (00:23:34): You start realizing, OK, well, now I've got 10 ideas for how to make things better. Kent Beck (00:23:41): But Kent Beck (00:23:43): I know how much work it would be. Kent Beck (00:23:45): And so you have this universe of projects that you could try and you know that Kent Beck (00:23:52): you're only going to get to one out of 10 of them because there's just not time Kent Beck (00:23:57): enough and they're just too big. Kent Beck (00:23:59): And so you shrink your world smaller and smaller to here are the things that I can Kent Beck (00:24:07): imagine that I could actually implement. Kent Beck (00:24:09): The thing about the genie is everybody's world is just expanded. Kent Beck (00:24:16): If I want to write a database from scratch, I can write a database from scratch. Kent Beck (00:24:23): And that would be an impossibly big task. Kent Beck (00:24:28): And now it may or may not be an impossibly big task, Kent Beck (00:24:32): depending on what exactly I'm trying to accomplish. Kent Beck (00:24:36): Everybody's gone through that. Kent Beck (00:24:38): And so the skill of imagining things that would be valuable to create suddenly has Kent Beck (00:24:50): much more leverage. Kent Beck (00:24:51): That's one skill. Kent Beck (00:24:53): The skill of picking, you still can't implement everything. Kent Beck (00:24:58): You can implement anything, but you can't implement everything. Kent Beck (00:25:01): The skill of picking which ones to explore, Kent Beck (00:25:04): that suddenly has much more leverage because you can try and create more things per Kent Beck (00:25:12): unit time. Kent Beck (00:25:14): Another skill that suddenly has more leverage is knowing when to abandon a project. Kent Beck (00:25:21): because you're starting a project a week instead of a project a year, Kent Beck (00:25:26): most projects are not good ideas and you won't know that until you're a ways into Kent Beck (00:25:31): them. Kent Beck (00:25:32): So when that's true, being able to say, oh, this one's not gonna work. Kent Beck (00:25:37): I have better things to do. Kent Beck (00:25:39): The opportunity cost is too high. Kent Beck (00:25:42): Let me move to something else. Kent Beck (00:25:44): Now, you may come back around to that in the future. Kent Beck (00:25:48): Sure, things change. Kent Beck (00:25:50): But those skills, Kent Beck (00:25:53): imagining stuff to do, Kent Beck (00:25:56): figuring out which thing to start on next, Kent Beck (00:25:58): when to stop working on something and start working on something else, Kent Beck (00:26:04): those are all skills that have suddenly become much more valuable than they were in Kent Beck (00:26:08): the previous world. Kent Beck (00:26:10): I've been surprised by the vehemence of some of the reactions to augmented development. Kent Beck (00:26:26): Is that caution or is that ego? Kent Beck (00:26:32): I was not an early adopter of augmented coding. Kent Beck (00:26:37): People were doing it, Kent Beck (00:26:40): raving about it, Kent Beck (00:26:41): raving at it for probably a year before I saw Gene Kim and Steve Yege give a Kent Beck (00:26:48): demonstration of what they called vibe coding. Kent Beck (00:26:54): And that was the spark that got me started. Kent Beck (00:27:00): um now i try and take a buddhist mindset to everything i do in my life and that Kent Beck (00:27:13): helps me understand some of the most mad emotional reactions to augmented Kent Beck (00:27:23): development Kent Beck (00:27:26): You know, if you spent 10 years getting really good at TDD, all of a sudden, Kent Beck (00:27:34): The workflow matters, Kent Beck (00:27:36): but picking the next test, Kent Beck (00:27:39): for example, Kent Beck (00:27:40): that's a subtle nuanced skill in TDD is I have some big chunk of functionality. Kent Beck (00:27:49): I decompose it into a sequence of tests and picking the next test to make pass. Kent Beck (00:27:56): That's a valuable skill. Kent Beck (00:27:59): In an augmented world, Kent Beck (00:28:02): It's not clear where the leverage comes from there. Kent Beck (00:28:05): Even fundamental questions like how many tests do you get to pass at one time? Kent Beck (00:28:10): I know my biases, but my biases come from that fertile farmland that I used to occupy. Kent Beck (00:28:20): So Kent Beck (00:28:23): when i feel resistance in myself to trying a technique with augmented development Kent Beck (00:28:30): or to stop using a technique with augmented development i think for me that's a Kent Beck (00:28:37): question of ego that's i'm attached to it i worked really hard to understand i mean Kent Beck (00:28:44): that's something that i hope will come out of these conversations is Kent Beck (00:28:48): one of my drives is to really understand topics deeply, Kent Beck (00:28:54): you know, Kent Beck (00:28:54): which led me to spend 20 years of my life writing a book about software design. Kent Beck (00:29:00): Um, Kent Beck (00:29:02): and once I really understand something, Kent Beck (00:29:06): I'm, Kent Beck (00:29:06): I'm reluctant to say, Kent Beck (00:29:08): and it doesn't really matter. Kent Beck (00:29:11): Some of the things that I learned in that kind of Kent Beck (00:29:17): diligent digging really don't matter anymore. Kent Beck (00:29:21): Some of them matter more than ever. Kent Beck (00:29:23): And sorting out which is which requires me to take a clear-eyed look at, Kent Beck (00:29:28): okay, Kent Beck (00:29:29): well, Kent Beck (00:29:29): here are the things that I'm good at, Kent Beck (00:29:31): but let's sort that out into things that for sure matter, Kent Beck (00:29:37): things that don't matter, Kent Beck (00:29:40): bless and release, Kent Beck (00:29:42): as my music professor, Kent Beck (00:29:44): Bob Trotter, Kent Beck (00:29:44): used to say, Kent Beck (00:29:45): God bless him. Kent Beck (00:29:47): Bless and release these things, which used to matter to me and don't matter anymore. Kent Beck (00:29:53): It shouldn't matter to me anymore. Kent Beck (00:29:55): And the things in the middle where nobody knows. Kent Beck (00:30:00): I mean, if there was an alternative title for these conversations, it would be nobody knows. Kent Beck (00:30:09): Because that's the facts of it. Kent Beck (00:30:12): We have these new tools with new trade-offs and the tools are changing every day Kent Beck (00:30:19): and the tools themselves are causing the tools to change even faster. Kent Beck (00:30:25): So for example, a mystery to me is not passing 100% of the tests. Kent Beck (00:30:36): I find that so valuable to just know, to have absolute certainty, to have total confidence. Kent Beck (00:30:43): Look, this software, if I press deploy, this software is going to work in production. Kent Beck (00:30:49): Now, it doesn't mean it's gonna work in production. Kent Beck (00:30:52): It just means I have total confidence. Kent Beck (00:30:55): But increasingly, we're working in a world where, yeah, software mostly works. Kent Beck (00:31:03): Now, it's always been the case Kent Beck (00:31:06): But more people seem to be accepting of that. Kent Beck (00:31:09): Is that okay? Kent Beck (00:31:10): Is that a transitional state where the genie is going to get really good at Kent Beck (00:31:17): creating really reliable software instead of just software that's done pretty Kent Beck (00:31:25): quickly? Kent Beck (00:31:26): I don't know. Kent Beck (00:31:28): So that's the kind of thing that I expect to explore in these conversations is Kent Beck (00:31:36): Wow, software defects used to be a bad thing, still a bad thing. Kent Beck (00:31:42): Under what conditions are they a bad thing? Kent Beck (00:31:46): What can we do about it? Kent Beck (00:31:47): How much is that gonna cost? Kent Beck (00:31:48): What are we giving up in order to achieve that? Kent Beck (00:31:51): What do we gain when we do achieve it? Kent Beck (00:31:56): Nobody knows. Kent Beck (00:31:57): So we're all gonna find out about this stuff together. Kent Beck (00:32:00): So one of the exciting things about augmented development for me Kent Beck (00:32:06): is my natural audience is programmers always has been programmers uh that's caused Kent Beck (00:32:21): friction with people for example in the design world for people in the product Kent Beck (00:32:27): world um and one of the Kent Beck (00:32:34): exciting things about augmented development is the possibility both of designers Kent Beck (00:32:41): and product people who make their decisions and implement them directly without the Kent Beck (00:32:48): intervention of a programmer. Kent Beck (00:32:50): I think that's Kent Beck (00:32:54): That's fantastic. Kent Beck (00:32:56): But even more is the ability to pair across disciplines. Kent Beck (00:33:02): Now that was always part of extreme programming teams Kent Beck (00:33:07): the concept of a whole team which says that everybody who needs to be there in Kent Beck (00:33:13): order to be successful is in the room or the virtual room and their affiliation is Kent Beck (00:33:20): to that team that's always been a part of extreme programming but there's still a Kent Beck (00:33:27): a tug to have these specializations, Kent Beck (00:33:31): product people having their primary allegiance to the product organization, Kent Beck (00:33:36): designers having their primary allegiance to the design organization, Kent Beck (00:33:40): and engineers having their primary allegiance be to the engineering organization. Kent Beck (00:33:44): I think that's a mistake. Kent Beck (00:33:48): The augmented development tools give us a chance to break down those silos. Kent Beck (00:33:54): Now they also give us tools to enforce the silos more directly. Kent Beck (00:34:02): And I hope we don't do that. Kent Beck (00:34:05): I hope we use them to make connections between people. Kent Beck (00:34:09): That's my goal. Kent Beck (00:34:10): And that's going to be part of the conversation with the folks sitting on his chair next to me. Kent Beck (00:34:17): Something I want to emphasize is that we're not going to have easy conversations here. Kent Beck (00:34:23): We're going to have conversations between people who disagree about things. Kent Beck (00:34:31): We're going to have conversations where values and principles contrast, maybe even conflict. Kent Beck (00:34:42): And so if you want, Kent Beck (00:34:45): I mean, Kent Beck (00:34:45): I listen to some podcasts and it's two people and they're talking about whatever Kent Beck (00:34:51): their topic is and they're obviously... Kent Beck (00:34:53): having a good time and getting along with each other. Kent Beck (00:34:55): And I think that's great. Kent Beck (00:34:58): I don't think it adds anything to our current conversation. Kent Beck (00:35:02): So I expect to have skeptics on. Kent Beck (00:35:06): I expect to have diverging opinions about what should happen next or even what the Kent Beck (00:35:14): principles are. Kent Beck (00:35:19): If you want a gentle pat on the head, this is not going to be a conversation for you. Kent Beck (00:35:25): This is going to be encouragement, a pat on the back. Kent Beck (00:35:28): Sometimes a kick in the butt says, hey, go out and try it. Kent Beck (00:35:34): So often now, that's the advice that I give. Kent Beck (00:35:38): Somebody says, well, but what about da-da-ba-da-ba-da? Kent Beck (00:35:41): And I say, try it. Kent Beck (00:35:47): Nobody knows. Kent Beck (00:35:49): Nobody knows. Kent Beck (00:35:49): So if you say, Kent Beck (00:35:50): well, Kent Beck (00:35:51): TDD can't work with augmented development or TDD is the only way to do augmented Kent Beck (00:35:56): development, Kent Beck (00:35:58): try it. Kent Beck (00:35:59): And everybody needs to be in that try it mindset. Kent Beck (00:36:04): 10 years from now, 15 years from now, wow, who even knows? Kent Beck (00:36:09): What part of development is going to be a human activity? Kent Beck (00:36:14): Nobody knows. Kent Beck (00:36:17): But for right now, we're in this terrifying, fun, exciting, Kent Beck (00:36:27): changing highly creative state where the rules of the game have changed and nobody Kent Beck (00:36:35): knows what the new rules are and the rules of the game are going to keep changing Kent Beck (00:36:41): so okay this will be this isn't going to sound very humble but that's okay i've Kent Beck (00:36:48): been asked uh how do you how do you keep up Kent Beck (00:36:52): with everything that's changing so much. Kent Beck (00:36:55): And my snap answer the first time I was asked that is, I don't, I'm too busy staying ahead. Kent Beck (00:37:02): That's who these conversations are for. Kent Beck (00:37:05): Now it doesn't mean that you have to try every new thing, Kent Beck (00:37:14): but in the words of the late Reverend Jesse Jackson, Kent Beck (00:37:20): I'm a tree shaker, not a jelly maker. Kent Beck (00:37:24): I'm here to try stuff out, Kent Beck (00:37:27): figure out what works for me, Kent Beck (00:37:30): talk about it, Kent Beck (00:37:31): listen to what's working for other people. Kent Beck (00:37:34): When their conclusions contradict mine, Kent Beck (00:37:37): That's fantastic. Kent Beck (00:37:38): That's an opportunity for both of us to understand more deeply the context in which Kent Beck (00:37:44): the techniques, Kent Beck (00:37:46): principles, Kent Beck (00:37:47): skills operate. Kent Beck (00:37:50): And then we'll both know more about what to try next. Kent Beck (00:37:54): Because we're in a world where what do we try next is the most highly leveraged Kent Beck (00:38:04): question we can ask. Kent Beck (00:38:08): I'm a programmer. Kent Beck (00:38:08): I hadn't written lots of programs for the past 10, maybe 15 years. Kent Beck (00:38:18): That's a story maybe we can get into at a later date. Kent Beck (00:38:23): I have rediscovered my love for programming doing augmented development. Kent Beck (00:38:31): But my use of Kent Beck (00:38:34): AI extends beyond that. Kent Beck (00:38:36): As I said earlier, I love to really dig in and understand some issue at a deeper level. Kent Beck (00:38:45): I'm also a very curious person. Kent Beck (00:38:48): So let me give you an example. Kent Beck (00:38:53): I was making a point about systems thinking and systems that oscillate. Kent Beck (00:39:00): And someone said, Kent Beck (00:39:01): well, Kent Beck (00:39:01): if the eigenvalues of the system take complex values, Kent Beck (00:39:08): then the system is going to go into oscillation. Kent Beck (00:39:12): And I studied matrix math a long time ago, Kent Beck (00:39:17): and I'd heard of eigenvalues, Kent Beck (00:39:20): but it just never seemed worth the investment to learn about. Kent Beck (00:39:25): I didn't have any particular reason to learn about them, Kent Beck (00:39:28): and that's not a kind of thing that I'm terrifically curious about. Kent Beck (00:39:34): But I thought, all right, eigenvalues. Kent Beck (00:39:37): Hey, Claude. Kent Beck (00:39:39): give me a tutorial about eigenvalues as if I'm a, whatever, I kind of described my background. Kent Beck (00:39:46): And it explained some stuff and I said, Kent Beck (00:39:48): hey, Kent Beck (00:39:48): wait a minute, Kent Beck (00:39:48): that doesn't make sense because, Kent Beck (00:39:50): and I said, Kent Beck (00:39:50): oh no, Kent Beck (00:39:51): you're right. Kent Beck (00:39:52): That's not how they actually work, but blah, blah, blah. Kent Beck (00:39:55): We went back and forth for half an hour. Kent Beck (00:39:58): At the end of which, Kent Beck (00:40:00): I couldn't explain eigenvalues to you, don't ask me. Kent Beck (00:40:03): But I had a gut sense for what it meant for an eigenvalue to take a complex, Kent Beck (00:40:11): to be a complex number. Kent Beck (00:40:15): And that really opened my eyes. Kent Beck (00:40:18): So this thing that drives me, Kent Beck (00:40:20): curiosity, Kent Beck (00:40:22): and the desire to dig in deeper can be serviced by these tools. Kent Beck (00:40:28): So the thing I love more than anything else in my intellectual world, Kent Beck (00:40:34): finding an interesting topic and digging into it is suddenly much easier. Kent Beck (00:40:39): Now, I still have the same problems we talked about before. Kent Beck (00:40:45): Of the million things now that I could learn, which ones do I start learning? Kent Beck (00:40:50): When do I decide, yeah, I've learned enough and it's time to switch to something else? Kent Beck (00:40:54): Those skills are more leveraged now than they used to be. Kent Beck (00:41:01): But I use the genie for everything I can think of. Kent Beck (00:41:10): Every time I say, I wonder, poof, that's a case for using Kent Beck (00:41:20): one of the models or multiple of the models. Kent Beck (00:41:23): That's something else that I do. Kent Beck (00:41:24): I'll ask the same question of multiple models and see what comes out that's Kent Beck (00:41:28): different, Kent Beck (00:41:29): what is similar. Kent Beck (00:41:31): So it's enhanced my intellectual life and then just stuff like where's the best Kent Beck (00:41:39): place to get seafood and Porto Kent Beck (00:41:44): and get an answer that isn't obviously tuned for somebody else's revenue. Kent Beck (00:41:51): I find that extremely valuable too. Kent Beck (00:41:54): What scares me about doing this podcast? Kent Beck (00:41:58): Nobody will care. Kent Beck (00:42:00): That's my biggest fear. Kent Beck (00:42:07): I think we're at a time of great leverage Kent Beck (00:42:13): great opportunity and great risks, Kent Beck (00:42:16): that I'll put my two cents out there and it just won't matter. Kent Beck (00:42:24): Nobody will be listening. Kent Beck (00:42:25): Nobody will do anything based on what I say. Kent Beck (00:42:29): That's my greatest fear, Kent Beck (00:42:31): that the negative consequences, Kent Beck (00:42:35): the potential negative consequences of this technology on an activity programming Kent Beck (00:42:40): that I love so much, Kent Beck (00:42:43): We'll barrel ahead and there's not a goddamn thing I can do about it. Kent Beck (00:42:48): Well, we're going to have conversations. Kent Beck (00:42:50): The basic principles, Kent Beck (00:42:53): human connection, Kent Beck (00:42:54): I know geeks, Kent Beck (00:42:57): but human connection, Kent Beck (00:43:00): real conversation between people who don't have the exact same perspective always Kent Beck (00:43:08): creates value. Kent Beck (00:43:10): That's over and over again in my career. Kent Beck (00:43:14): Human connection across diverse interests, Kent Beck (00:43:19): diverse beliefs, Kent Beck (00:43:20): diverse perspectives always creates value. Kent Beck (00:43:23): And the more of that that I can stand, Kent Beck (00:43:25): because it's not easy for me, Kent Beck (00:43:28): the more value that I can create. Kent Beck (00:43:31): So that's why that's why there's a chair here. Kent Beck (00:43:34): That's why there's a blanket because it's kind of cold in spite of the fire. Kent Beck (00:43:40): And this seat will be occupied by people who are ready to have conversations about Kent Beck (00:43:45): what it's like to be a geek, Kent Beck (00:43:48): to still care and still be doing something about it.