Honest conversations about fear, uncertainty, and what it means to build things when the ground keeps shifting.
Season One is sponsored by WorkOS and Augment Code.
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.