Edited to add: I’m not a programmer or coder. I know a little coding, but don’t think of myself as a fully-professional coder/programmer. I work with HTML (not yet HTML5), CSS and PHP daily.
Take a moment to read this: http://www.codinghorror.com/blog/2012/05/please-dont-learn-to-code.html.
The author, Jeff Atwood, makes some excellent points: determine what your problem is; solve your problem; don’t jump into something that won’t resolve your root problem.
I can understand where he’s coming from and I respect his right to put it out there. But I don’t agree. For whatever it might be worth, I don’t particularly advocate Code Year – although I really like the idea behind it. I just don’t have a firm opinion either way on it.
His main point, that people are learning code to get high-paying jobs or otherwise not learning code for the right reasons, is somewhat overshadowed by his assertion that no one should learn any code (because of those reasons). I don’t think that the author is particularly elitist, but if I had to characterize the post in one word, that’s the word I think I would finally settle on. Reading the post, what stands out to me are his arguments that learning code for the sake of learning to code is somehow bad or wrong, intrinsically, because most users will never reach professional status and it’s not a life skill (like reading comprehension, writing, or basic math).
There’s something on an elemental level here that rubs me the wrong way. Atwood makes a great argument in general – it’s a specialized field and most people just don’t need to code and because it is a serious, technical field, a lot of people honestly won’t get it right. But suggesting that some people should not and may not learn coding and about coding because they don’t meet some criteria (which I’m not clear about) makes me uncomfortable. It’s difficult to determine if he means only people who expect to begin coding in order to rake in the cashmoney should be put a stop to, or if he means even weekend tinkerers.
I suppose it’s about on par with designers complaining about non-designers who have PhotoShop or InDesign. It is eye-rollingly annoying to see a crummy poster or other designed piece, but I don’t think that’s an argument for people to never learn how to get it right.
He contends that instead of learning code, the focus should be on fixing how to get around on the Internet, then learning about things around you and communicating effectively. I think that’s super and I agree. I don’t understand how it supersedes or replaces the desire someone may have to learn coding, however.
Perhaps I’m misconstruing, and I apologize if I am, but I think that there’s enough Internet out there that if non-professionals want to try coding and learning how to do it, that’s fine. I think that the people who are good at it, the true professionals, don’t have anything to fear from these people – they’re not going to “steal” their jobs. At least not any job that a professional would want to undertake. They are not going to make coding any less of a valuable skill.
I agree with him that coding is not an essential life skill. I don’t follow that because it is not, it shouldn’t be learned by just anyone. I remember a comic (forgive me for my inability to remember who) who was talking about “Twister” (when I was writing this, I wrote “Tornado” and then had to look it up, because it didn’t look correct – rightly so), and how it was basically a struggle between those money-grubbing scientists and the scientists who were pure because they were chasing tornadoes for the love of science. But, unlike the movies, there isn’t some sharp delineation between the people who only do things for the money and the people who do things because they are answering a higher calling. Some people are just curious. And perhaps his argument doesn’t intend to touch on the people who want to learn but don’t want to “pass” as a coder or developer, in which case I think I would agree with him.
He does specifically say his argument is not against learning essential life skills like reading and writing, but the first thing that sprang to mind when I read this was this old boss I had. In the year between undergrad and grad school, I worked three jobs simultaneously (pity me! Send me your tears!) because that’s the way it worked. I was in Ithaca, NY, and I worked at American Eagle at Pyramid Mall, Collegetown Bagels at East Hill Plaza, and Jason’s Grocery & Deli on College Ave. Incidentally, I lived on Stewart Ave, practically next door to The Chapter House. Those were the good old days… But I digress. So I worked from like 9PM to 1AM at Jason’s, which was nice because I could walk there. This is not to be confused with the national chain, Jason’s Deli – I worked with Jason himself. So Jason was (is still, I’d suppose) middle-aged and basically illiterate. He ran and operated a successful grocery/deli just fine. He knew who to employ (like a bookkeeper) to make sure his business was healthy – he just couldn’t write and his reading skills were very poor. He was severely dyslexic. We’d talk about this because I’m also dyslexic, but to a much more minor degree. So the when I read the “don’t learn to code, regular people” article, one of the reasons I think it got under my skin is because I think that Jason came from a time when people would have advised he never attempt to run a business because he was so learning-disabled. I think people would have laughed at the idea, actually. And yet, he defied expectation. So my argument, I suppose, is that we shouldn’t recommend that people not learn something, because we don’t know when they’ll rise to the occasion and surprise us.
I could write a whole post about working at Jason’s, incidentally. The place was a gold mine for stories.