Modal Title
Culture / Machine Learning / Software Development

‘Coders’ Author Clive Thompson on How Programming Is Changing

Looking ahead, Clive Thompson sees a world with "a sea of people who are code-adjacent" who will use "emerging toolsets" to automate their business logic.
Oct 23rd, 2022 6:00am by
Featued image for: ‘Coders’ Author Clive Thompson on How Programming Is Changing

 

On Sept. 28, nearly 5,000 online attendees from 83 countries tuned in for Stack Overflow’s site’s first “Flow State” conference (webcasting from New York).

And one of the highlights was when Stack Overflow’s chief marketing officer, Khalid El Khatib, interviewed Clive Thompson, a tech-loving journalist who interviewed thousands of programmers for his 2020 book Coders: The Making of a New Tribe and the Remaking of the World.

Before it was over, Thompson was making some fascinating predictions about the future of programming itself, speculating on how the quality of code could be impacted by AI-assisted coding. he also discussed remote (and hybrid) workplaces, the industry’s response to representation issues, and even an expansive class of “code-adjacent” part-time developers.

But mostly, Thompson offered a fun and lively summation of what he’d learned after talking to programmers around the world…

Emerging Toolsets

Looking ahead, Thompson sees a world with “a sea of people who are code-adjacent — just below people that are full-time developers…” and using “emerging toolsets” to automate their business logic. (Thompson gives the example of someone in Accounts Receivable using Zapier or Google Spreadsheets or “some sort of low-code/no-code tools. Lo and behold, you create something that is basically an application, catered to whatever weird problem you have.”)

This phenomenon has always existed — Thompson acknowledges that it was the audience of mainstream business users targeted by Microsoft’s Visual Basic in the 1990s. But “I think we’re seeing this massive explosion of stuff… almost 10 times the size of the population of coders, doing this code-adjacent stuff.

“For good and for ill,” Thompson adds. While it allows individuals to customize their solutions without bringing in expensive full-time developers, “The downside is: some of it’s going to be really rickety-weird crap…

“I’ve had people show me, like, these Microsoft Visual Basic scripts that are like 10,000 lines long, that is just some crazy hairball of global variables just bonking up against one another. And yet it’s been running their company — you know, their seven-person company — for 10 years. And at any moment it’s going to fall apart.”

Thompson predicts more of that…

AI’s Impact

Inevitably Thompson was eventually asked whether AI and machine learning will change the programming profession. And Thompson admits that after experimenting with Copilot, he concluded that it was “shockingly good at letting you develop really quickly. And it gave that sort of eerie feeling of, ‘Wow. Is this finally the moment when AI is going to take over the task of development?'”

But after talking to developers, he reached a more nuanced conclusion. “I don’t think it’s going to put anyone fully out of a job — but it’s going to change the nature of what maybe development means.” Several seasoned developers told him “I’m able to go 2x faster, because what it’s really doing is it’s taking that time that I would spend going to Stack Overflow and looking up how to do something — because it knows that….”

But more importantly, Thompson believes that tools like Copilot will also “superpower” that larger legion of code-adjacent part-time programmers.

“Maybe that does un-employ or under-employ the sort of coder who you might pay $500 for on Fiverr to build that logic for you. But probably it’s also going to just open up new capabilities for people that aren’t full-time developers, to sort of get rid of some of the grunt work, to allow them to punch above their weight too.”

Global Centralization

The bigger concern with AI is its potential to centralize all that power unlocked by an emerging new technology. “Right now when I talk to people globally, there’s a lot of concern in countries outside, in the global south, outside the west, that a lot of the AI development is in a couple hot spots. It’s in parts of the US, a little bit in Toronto and Canada, it’s in the UK, it’s in Germany, it’s in Japan, and it’s heavily in China.”

As currently developed, AI requires huge (and expensive) bursts of energy and computing power — and Thompson doesn’t see that changing without some paradigm shift in how AI is developed. This leaves worried regions around the globe concerned they’ll be left behind, and they’re going to be relegated to consuming the APIs for the AI that these other countries make. And that’s a really disempowered situation.

“Maybe seven or eight years ago, they felt kind of excited — TensorFlow was open sourced, and they’re like, ‘Oh, we here can roll up and train an AI that’s just as good as something that someone’s doing in San Francisco or Boston or London.’ And now they’re feeling more like, ‘Great. I can subscribe to a really high-end AI that’s been developed in Beijing or San Francisco, but that’s not really great for the stock of our coding… Like, we’re going to be sitting around doing prompt engineering instead of actually engineering.’

“That’s an interesting challenge, and I don’t really know any way out of it.”

What’s Impacting Representation?

Thompson’s own personal enthusiasm for programming comes through loud and clear. At one point he described discovering at a young age “that there were these incantations you could use that would bring digital stuff to life,” saying that’s helped him understand the passions that motivate programmers. But this also informs Thompson’s sense of why the tech world has struggled with representation.

“Part of that was that there weren’t enough, like, tendrils out there in these pre-college levels saying “Hey, do you want to try this thing, this weird task of telling a machine to do something that you want it to do, and to figure out whether you are one of these kids that gets that electric thrill?’ Because not everyone does.”

Thompson believes they’re distributed throughout all the various demographics — estimating that they’re 5% of any given cohort — “but you have to give them the opportunity to figure out that they’re one of the people that just feels that electric thrill.” So he applauds the new programming curriculum and after-school programs aimed at younger students, because it allows people to recognize their passion.

But what’s interesting is how different countries experience different demographic patterns. “If you go to India, it’s a mammoth country with ton of developers, and demographically they’re a lot younger than the rest of the country, and they’re very interested in mobile. If you go to places like China, or Sri Lanka even, parts of Asia, you get far more women that are getting into coding. And that’s largely for a bunch of cultural reasons — you know, their parents and the people around them are encouraging them in a way that is maybe not happening so much in the United States.

“So in many ways, actually, I think every country could probably learn something from observing what the other countries are good at doing and bad at doing.”

Ultimately his bigger concern is instead about college and universities actually struggling to keep up with interest. “I’m a little worried that we’re going to have another sort of moment when they start putting up barriers to chase people away. This is not something I’ve made up. Scholars who’ve studied this are worried about this.”

Remote Work vs. Hybrid Work

Thompson also spoke about what’s being gained by remote work — but also what’s lost. Programmers love getting long chunks of uninterrupted time in the “flow state” – Thompson calls this the #1 thing that a manager can do to keep their engineers happy and productive. But how does that affect new coders being on-boarded at a big company? What’s lost when they’re not able to “shoulder surf” behind a senior engineer for three months? “There’s a lot of people right in the middle of development that do not want to go back to the office, and there’s a lot of people at the high end, and at the entry-level, that would desperately want to get back there. And companies are struggling to figure out how to square that circle.”

So what’s the solution? Thompson begins by acknowledging “I don’t know if anyone is doing it really well, frankly… I feel like everyone I talk to feels like they’re still just patching it together.”
But the people who seem contented have settled on a system where people are expected in the office only for part of the week, “so that they can do that face-to-face synchronization that happens more quickly when you’re face to face. And the rest of the week, everyone can go wherever they want.” Thompson had even heard of this model before the pandemic — and interestingly, this tends to work best at small- to mid-sized companies. “I think the really large companies have trouble dealing with — it feels to them too scatter-shot, you know?”

Towards the end, an audience member asks whether remote work will ultimately reduce the quality of code — simply because the best QC is the reactions of other people using our code. “We may be more productive, but will we create horrible stuff to use, faster?” Thompson shares a related experience — that have two pairs of eyes on the same problem, in real-time, seems to be the most efficient form of communication. This may be lost in the future — no one can say for sure. But Thompson also notes the same question comes up about AI-assisted programming.

“If this allows me to work two times faster, does that just mean now I’m going to produce more crappy code, or more baggy floppy code — because I can do it faster?”

 

Group Created with Sketch.
THE NEW STACK UPDATE A newsletter digest of the week’s most important stories & analyses.