Programmers insist: “Everybody” does not need to learn to code
I answered the criticism leveled below previously — it really is the case that many people who aren’t professional programmers are going to need to learn to program as part of their other-than-software jobs. Why are programmers pushing back against people learning to code? (And there seems to be a lot of pushback going on, as this mashup suggests.) Is it a sense of “What I do is important, and if everyone can do it, it lessens the importance”? I don’t really think that they’re afraid for their jobs — it does take a lot of hours and effort to learn to code well.
The argument that it won’t “stick” (as suggested below) doesn’t work for me. Just because we don’t know now how to teach computer science to everyone doesn’t mean that we can’t learn how to teach computer science to everyone who needs it. Our lack of ability is not the same as the lack of need. We don’t teach everyone to read well and understand mathematics yet — does that mean we shouldn’t try?
But if you aren’t dreaming of becoming a programmer—and therefore planning to embark on a lengthy course of study, whether self-directed or formal—I can’t endorse learning to code. Yes, it is a creative endeavor. At its base, it’s problem-solving, and the rewards for exposing holes in your thinking and discovering elegant solutions are awesome. I really think that some programs are beautiful. But I don’t think that most who “learn to code” will end up learning anything that sticks. One common argument for promoting programming to novices is that technology’s unprecedented pervasiveness in our lives demands that we understand the nitty-gritty details. But the fact is that no matter how pervasive a technology is, we don’t need to understand how it works—our society divides its labor so that everyone can use things without going to the trouble of making them. To justify everyone learning about programming, you would need to show that most jobs will actually require this. But instead all I see are vague predictions that the growth in “IT jobs” means that we must either “program or be programmed” and that a few rich companies want more programmers—which is not terribly persuasive.
I saw the below exchange on Twitter, and thought it captured the argument well: