Though coder Jeff Atwood thinks coding isn't for non-computer geeks, we can think of a lot of reasons normals should learn computer language. Atwood, on his blog Coding Horror, miffed by the "everyone should learn to code" meme, likens coding to plumbing. It's not for everyone. "Look, I love programming. I also believe programming is important … in the right context, for some people," he writes. "But so are a lot of skills. I would no more urge everyone to learn programming than I would urge everyone to learn plumbing. That'd be ridiculous, right?" Wrong. With the help of an angry comment thread on Hacker News, we can think of at least five ways someone who has no professional programming ambitions might want to learn a little bit about the way the machines we use every single day, some of us all day, work.
1. It's like learning to read or write. "Learning to code is to being a professional programmer as learning to write is to being a journalist/editor," wrote commenter danso, echoing the sentiments of a lot of the Hacker News commenters. Just because one does not aspire to professional programmer status, does not mean that they can't have these basic skills. "There was once a time when books were only read and written by an elite group. Now everyone can read - and everyone can write. There are still the elite authors that write better than the rest of us. Just because everyone can write, doesn't mean everyone is trying to be a professional author," added commenter jkahn. Programmer man Atwood might like if the rest of us remain ignorant, so he can continue being an "expert", but they do say knowledge is power.
2. It's useful, even outside of computer geek circles. As a blogger, it sometimes feels like coding would be a useful tool, as we sit in front of these machines all day. And, really, anyone who works on a computer might find some utility in learning how they operate. One commenter on Hacker news commented he saved his business $2 million a year, by writing a program. "The key was combining knowledge of the business processes with some knowledge of programming. There were people with knowledge of one or the other, but not both," commenter SatvikBerry explains. Another commenter describes how it helped him in his marketing profession. Another suggested a knowledge of Excel Macros or other scripting would be especially useful for any office worker. Plus, having a skill nobody else has will give office worker bees a leg up in this already tough economy. (Perhaps Atwood's fear stems from that fear -- he doesn't want to lose his competitive advantage.)
3. It's helps you talk to actual programmers. If you drive a car, it's a good idea to know what the carburetor and other parts of the engine do if for no other reason that you have some idea of what your mechanic is talking about. Some passing knowledge of code may not make you a coder, just like changing a sparkplug doesn't make you a mechanic. But it is helpful if you ever have to talk to one.
4. It's a fun hobby. Seriously. Just head on over to the Codecademy*. It's pretty addictive. If you like learning languages or math, it has that same feel. Also, as many pointed out on the Hacker News thread, coding can be just that: a hobby. One doesn't need to go full on programmer.
5. Computers are a part of society. At this point, one feels a little ignorant for not knowing how a computer works. Yet, so many of us don't know the basic language running our favorite blogs and social networks and whatever else we do on here. With just a tiny bit of coder knowledge we can change that.
6. It teaches other skills. Science has shown making kids learn piano makes them better at math. Parents don't force piano lessons on their kids hoping they'll turn into concert pianists -- unless they're Tiger Moms, whose kids really do turn into big deal piano players. But, the point is it teaches other important skills. Learning to code works like that. "Learning programming has helped me in many other walks of life," writes commenter Andrest. "It has taught me that every problem can be tackled with a systematic approach, given enough time. I like to think that helps me to notice things that would have gone unnoticed without. More than anything else, it is this approach, enforced by programming, for which I hold gratitude. Critical thinking," he continues. See, useful.
Plus, no matter what coding elitist Atwood thinks, the regulars have already started learning basic computer plumbing. Since starting Code Year, a New Year's resolution to learn code in 2012, the Codecademy has signed up 440,722 amateurs, including New York City Mayor Michael Bloomberg. It's happening.
This post originally misnamed Codecademy as the Code Academy, a different coding organization.