Why People Don’t Learn To Code
Leave a reply
And Why You Shouldn’t Make Them
I recently had the opportunity to sit down with Brandon Stanton, the photographer behind the popular Humans of New York blog. (If you’re not familiar with HONY, here’s a short description: Brandon walks around NYC every day and photographs interesting strangers, posting their pictures and a poignant quote about their lives on his blog).
At one point in our conversation, Brandon brought up a mobile app idea he had. He waxed eloquent about its potential, how much the app would help HONY and reach thousands of people, and he envisioned it having a real chance of success. So, when he dropped the not-unexpected bomb:
“Yeah, I’ve been talking to someone to make it for me since I don’t know how to code. It’s hard to know if they’ll do a good job though, there’s so few people who can program so finding someone is tough.”
I was ready.
“Why do you need someone to make it for you? Learning to code is easy! Anyone can do it. In fact, there’s some people that think everyone should learn to code.”
“Well,” he responded, “I think coding is really cool and I really do want to learn. But there’s never enough time-”
Aha. I have him now. I’m ready with the low-time-commitment argument, Mr. Stanton!
“-because although I’d love to learn to code, what I’m good at is taking photos. Even if it isn’t much time, any time I spend learning to code is time I could spend getting one more photo, finding one more moment to capture. Coding is really cool and I really wish I knew how, but the thing is, I love what I do instead too much to take time away from that.”
…Oh
The “Learn to Code” movement seems to have two fronts.
On one side: “Everyone can code! Software is the future! Build everything!”
On the other side: “Not everyone can code. It’s too hard, it’s too boring, it’s too advanced, it’s too weird”.
Both are wrong.
Yes, anyone can learn to code. Enough elite programmers have worked their way up from the depths of inexperience that this has become evident. Anyone — the eager junior high student, the unemployed forty year old, or the first-time hackathon attendee — can learn to program if he or she practices it enough.
And, although this one is harder to show, I believe that anyone can like to code. The feeling of creating — of making an app, a program, from code that you wrote; of bending a computer to your will — is a joy that anyone who’s ever programmed can attest to.
However, this does not mean that everyone will love to code, be passionate about code. “Find your passion” is a cliche that’s thrown around a lot, but at its core it makes sense; everyone has that one activity, that thing that they love above all else, that green light. And, in order to really become a good programmer, especially if you want to do it fast, it needs to be (as Paul Graham puts it), “The thing you think about in the shower.”
The truth is that for many people, coding simply isn’t that thing. And that’s ok. Because instead of coding, they love writing books. Or solving math problems. Or, like Brandon, taking photographs.
Project creation. Problem solving. Artistic design. Sound familiar?
We praise programming not because of writing code, but because of the things we can accomplish with code. And, if there are people who are already accomplishing these things through other means? That’s perfectly all right with me. While everyone can learn to code, not everyone will learn to code. And we shouldn’t make them.