No, not everyone should learn to code

I’ve been hearing some high technology folks for a while now, claiming that “everyone should learn to code,” as if that were a panacea for social inequality.

Their facile logic is straightforward enough: There is a shortage of programmers. Programmers make a lot of money (and, in San Francisco, spend it all on rent). And there are a lot of poor people.

Ipso, facto, poor people need to learn to code so, they, too, can make lots of money.

These folks also suggest more generally that everybody should learn to code, that coding is, in today’s world, a necessary life skill.

What they really want is for everyone to think like them. And their logic is self-refuting.

First, if everyone indeed learned to code, coding would no longer be a valuable skill. Programmers would make a lot less money (and no longer be able to afford San Francisco rents). I’d only be a little facetious to suggest that we would see panhandlers on median strips with signs promising that they “will code for food.”

The problem here isn’t a particular skill or the lack thereof. It’s the commoditization of human beings.

Second, I should explain that I did learn to code.[1] Computers execute instructions sequentially, with binary true/false conditions, and logical operations. Programming thus entails extremely sequential, linear, and binary thinking. And it requires an ability to reduce messy, complex real world problems to procedures that can be executed in extremely sequential, linear, and binary steps.

For me, with what I had to go through to do this kind of thinking, I lost the ability to have a normal human conversation with normal human beings. This kind of thinking is about how computers work. It is not really about how the world works.

And indeed a lot of the trouble folks have with technology is that they somehow have to adapt their messy, complicated lives to something a computer can deal with. That isn’t always possible and it often involves fudges that we work around. The ability to work with technology is often about the ease with which we work around not so much its strengths, but rather its limitations.

A problem here is that we use the word ‘system’ in two ways: One is indeed for computers.

But the other covers a more complex reality in which causation is not linear, but mutual, where living things arise together; adapt to each other’s presence, needs, and capabilities; and find niches in an ecosystem that arises mutually. What, indeed, you learn with systems theory is that linear causation (where A causes B) is the exception rather than the rule and indeed even that paradox (apparent contradiction) is the rule rather than the exception.[2]

I can’t emphasize this strongly enough: Sequential, linear, binary thinking is utterly inadequate for reality. And because it fails to understand about mutual causation and the niches that we all find in our social system, it understands human beings as interchangeable: What works for one person will work for another, like learning to code, or capitalism. People aren’t really diverse, they’re really all the same, like cogs in a machine.

Which means we should all think the same: sequential, linear, binary. Social problems could all be solved if we would all just be logical.

This is, of course, absurd. We don’t all think alike. We aren’t simply interchangeable cogs. We can’t all learn to program. And social problems have a lot to do with greed and power relationships.

Which sort of leads back to that part about supply and demand, in which if everyone learned to code, programming would cease to be a valuable skill. What this really sounds like is technology executives wanting to be able to hire cheaper, more compliant programmers.

I’ve heard over the years that programmers last about five years (I lasted six). That clearly isn’t true for everyone: I’ve talked to some who’ve been at it for twenty. And some manage to compartmentalize that sequential, linear, binary thinking in a way that still allows them to understand a richer, more complex world.

I’m pretty sure those aren’t the ones spewing forth about how “everyone should learn to code.”

  1. [1]A bit of background: As I was growing up, my father was rightly concerned that I seemed to lack a career direction. An engineer himself, he understandably nudged me toward computer programming and I don’t really blame him for it. But it was the wrong direction for me and when, inevitably, I burned out, the consequence has been decades of mostly poverty that I have been unable to find a way out from: David Benfell, “About my job hunt,” Not Housebroken, n.d., The question of what he should have done instead, however, is one I have no answer for.
  2. [2]Fritjof Capra, The Web of Life: A New Scientific Understanding of Living Systems (New York: Anchor, 1996); Fritjof Capra and Pier Luigi Luisi, The Systems View of Life: A Unifying Vision (Cambridge, UK: Cambridge University, 2014); Joanna Macy, Mutual Causality in Buddhism and General Systems Theory (Delhi, India: Sri Satguru, 1995).

3 thoughts on “No, not everyone should learn to code

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.