Kent Beck created extreme programming, pioneered test-driven development and helped formalize agile methodology. Now, for the first time ever, he holds a staff position at a tech company.
It’s different from past roles. During his seven years as a coach to engineers at Facebook, he was on the ground working with individual contributors. In his current position at people management platform Gusto, he has an official title and a hand in developing corporate strategy.
Before, Beck saw technologists as “us” and management as “them,” he said. Now, he is “them,” and his view has changed.
“I do my one-on-one coaching, but I’m also in the room helping make strategic decisions with very little information, and I’ve gained a lot of respect and empathy for those decision-makers,” he said. “As a punk-ass programmer, I’d grumble about ‘management.’ Well, they have a job to do, and it’s a really difficult job.”
So, the capital-M management is alright with him. But that doesn’t mean Beck’s view of tech leadership is entirely rosy. Many of his anxieties about the tech industry center on power players and their evolving stances on issues like remote compensation, racial justice and content moderation.
“Not a lot makes me hopeful,” he said. “You caught me in isolation [due to COVID-19 precautions]. So this is not my day for bright sunshine.”
“As a punk-ass programmer, I’d grumble about ‘management.’ Well, they have a job to do, and it’s a really difficult job.”
Beck’s perspective, like Beck himself, is complex. He’s a programmer, a theorist, a musician and a visual artist. After leaving Facebook in 2018 over irreconcilable differences, he reevaluated his personal mission, settling on: Help geeks feel safe in the world. Two years later, he writes and speaks about technology with a philosophical bent, publishing musings on everything from measuring outcomes at work to communicating more directly with romantic partners.
When we spoke, Beck was preparing a new course on how technologists can use influence constructively in relationships with power differentials. At a time when workplace power dynamics — and their abuse — are under heightened scrutiny, the relevance is clear. The course will focus on two questions, Beck said: “First, how do you not screw that up, and, second, how do you take advantage of the situation in a way that’s going to be helpful and uplifting for the junior engineer?”
Beck will be the first to admit that he struggles with social cues — many engineers do, he added. But as his career progresses, his work has become increasingly people-focused. Despite his new title and responsibilities, geeks and their happiness remain his primary concern.
“My time’s basically entirely devoted to uplifting other people,” he said. “I’m just trying to help people grow as much as I can in this late stage of my career.”
What else is on Beck’s mind? Well, there’s Donella Meadows’ book Thinking in Systems, Gusto’s revamped performance review process, the possibility of constant deployment, vintage guitars, and a whole lot more.
Whose technical ideas are exciting you right now?
Dark, [developer-entrepreneur] Paul Biggar’s project, is very similar to something I worked on for a while called Limbo, which is about truly continuous deployment, like deploying thousands or millions of times a day.
That’s an inevitable future. It’s something that’s just going to happen. Exactly what it looks like and how long it takes is way up in the air, which means there’s a lot of leverage for people piling into it.
Did concepts like test-driven development lay the groundwork for constant deployment?
Yeah, you need faster feedback loops if you’re going to deploy potentially every keystroke. Now, most of the keystrokes that you make, the resulting program won’t run, so it won’t get far in deployment and won’t cause any problems. But, if you’re typing something and it happens to work, why not put it in production? That just turned the economics and the psychology and the sociology of deployment totally on its head.
“If I live in San Francisco, and I move to Taos, New Mexico, where houses cost a third as much, should I get paid less? I can make the argument strongly both ways.”
If remote work truly becomes the “new normal,” how will that change the landscape for devs?
One thing I’ve been thinking about lately is the compensation, like the principles of compensation. If I live in San Francisco, and I move to Taos, New Mexico, where houses cost a third as much, should I get paid less? I can make the argument strongly both ways.
But companies are acting like monopsonists, which is like a monopoly except you’re the only buyer instead of the only seller. The company says, “Hey, if you move to Taos, New Mexico, we’re going to pay you 30 percent less.” If it’s a free market, they couldn’t successfully do that.
Another company would say, “We’ll pay Mountain View prices, even if you’re in Taos,” and get better people than they would have otherwise. Alternatively, we get this informal cartel behavior that we’ve seen over and over in the history of Silicon Valley where the big employers band together to suppress engineering salaries.
The longer-term thing I’m concerned about is career growth for juniors. There’s so much value in that lunch-room conversation that a junior begins by sitting in on and gradually becomes a confident contributor to. How’s that going to happen in a remote world? That worries me.
Issues I’m not worried about are executing software projects or even executing cross-functional projects in a remote world.
In that case, how do offshore developers come into play?
It makes the $200,000-a-year engineer in New Hampshire look pretty bad compared to the $20,000-a-year engineer in Hyderabad, in a way that it wouldn’t have with the $200,000 engineer in Silicon Valley. “Well, they’re both remote, why don’t I just spend a 10th of the money?”
“[Agile is] a few religious rituals carried out by people who don’t understand the purpose that those rituals were intended to serve in the first place.”
You signed the Agile Manifesto almost 20 years ago. How do you feel about agile now?
It’s a devastated wasteland. The life has been sucked out of it. It’s a few religious rituals carried out by people who don’t understand the purpose that those rituals were intended to serve in the first place.
Is programming an art, a science or something else?
It can be a science, but it isn’t usually. It is definitely not art. You can create beauty with programming, but that’s not the same as art. With art, you’re pulling something out of your soul. In programming, that’s just not the case.
So what is it? There’s certainly an element of craft to it. There’s an element of engineering to it. There’s a discipline to it. That is, there are skills that you can learn and spend decades mastering. And finally, I would wonder why you even asked this question.
What’s the best business idea you’ve ever had?
I have plenty of business ideas. My best idea I came up with with Pete Hunt, who is an executive at Twitter now. It’s Airbnb for classic guitars.
You want to play a ’59 Les Paul for a month. OK, somebody has a ’59 Les Paul, and they’re not playing it, and it’s sitting in a case in the closet someplace. They could make some money with it.
In the classic Silicon Valley fashion, we were just drinking at a bar, shooting the shit, and this idea comes up out of nowhere. You look around the bar, and you’re like, “I could have a term sheet signed before I left the bar.” But we looked at each other, and we were like, “No, no, we’re not going to do this.”
It’s clearly a winning idea. I’m not sure how scalable it would be. But you could have a super profitable business.
“Internally, all the incentives are about making this or that point 1 percent higher, or cost 2 percent lower. Nobody is like, ‘Well, yes, we could do this, but maybe we’d destroy democracy.’”
What bothers you the most about the tech industry right now?
So many organizations are only focused on the upside of the work they’re doing, and they ignore the downside. This comes back to 3X [Beck’s theory that divides corporate growth into three phases: explore, expand and extract].
When you’re exploring and expanding, there’s not a lot of downside. But when you’re in that extract phase, you have a lot to lose. [Tech giants] have a lot to lose at a global, societal scale. Yet internally, all the incentives are about making this or that point 1 percent higher, or cost 2 percent lower. Nobody is like, “Well, yes, we could do this, but maybe we’d destroy democracy.” Nobody has an incentive to look at that side of the equation, and that scares the crap out of me.
Whose fault is that?
I’m going to put that one firmly with the executives. If you accumulate that much power, it is on you to use it responsibly. If you don’t, the power should be taken away, because the downside of screwing it up is so enormous.
What in the tech world brings you the most hope right now?
Access to the very peak of technology is flattening out because Moore’s Law is slowing down. If I have a two-year-old computer, it’s not much slower than a computer sold today. It used to be the case that I would spend $6,000 every two years so that I didn’t fall hopelessly behind on technology.
This means you can be closer to the tip of technology with much less capital than it used to require. I think that’s a good thing, because that means more people are going to be closer to the state of the art. And that means people who didn’t have access to it because they didn’t have capital or they lived on the wrong continent or they were the wrong color or the wrong gender, are more likely to have access to all the computing resources they can consume.
Also, the fact that we’re addressing systemic discrimination, or at least talking about it, makes me hopeful. There’s a huge reactionary force, and that didn’t use to be the case. That seems like a step forward. But again, we’ve had steps forward before that ended up being nothing, so I want to wait and see how it plays out.
“I think it’s even harder to have compassion without a brain wired that way.”
If every programmer woke up tomorrow with a new habit, what would you want it to be?
Compassion. It’s a learnable skill. I didn’t have it naturally. I had to learn it, and I exercise it most of the time now.
Is compassion wanting among programmers, or just among everybody?
Certainly, societally we have a huge deficit of compassion. I think programmers, stereotypically, can have poor social skills. I think it’s even harder to have compassion without a brain wired that way.
I just don’t read social situations well, period, just the same as I’m red-green colorblind. But unlike colorblindness, I can practice compassion and get better at it.