So the dog days of summer are upon us once again here in the northern reaches of the Linux blogosphere, and for countless young people out there, that means it’s time for camp.
Some, of course, will take this time to pursue their sweaty fun in the great out-of-doors alongside our friends the ticks and mosquitoes. Linux Girl wishes those hearty souls well from the chilly confines of her arctic lair.
Many others will go to code camp instead, and learn skills that will last them a lifetime.
‘It’s Reasonably Specialized’
Coding skills figure prominently in the news with surprising regularity these days, and the prevailing message is that anyone can — and really should — learn them.
Just last week, it was Google’s launch of Made with Code, an effort to convince girls that programming is cool. Even President Obama recently extolled the virtues of programming.
Yet is programming really something everyone should learn to do? That’s a point worth pondering — and none other than Linus Torvalds has reached a conclusion.
“I actually don’t believe that everybody should necessarily try to learn to code,” Torvalds said in a recent interview. “I think it’s reasonably specialized, and nobody really expects most people to have to do it. It’s not like knowing how to read and write and do basic math.”
Down at the blogosphere’s Punchy Penguin Saloon, Linux Girl couldn’t resist taking a small poll to see how FOSS fans’ opinions compare.
‘It Seems Absurd’
“I’m gonna go with Linus on this one,” offered Google+ blogger Kevin O’Brien. “It seems absurd to me that there should not be room for a little variety in what people do.
“I think everyone who has a desire to code should have that opportunity, and in this day and age I think a little basic literacy in computers is no bad thing,” O’Brien added. “But that needn’t take the form of coding.”
Language and communications skills are the most essential ones to get out of school, O’Brien opined. “It is hard to succeed in any vocation without that.”
‘It Is Not a Life Skill’
Google+ blogger Brett Legree saw it similarly.
“I’m with Linus on this one,” he told Linux Girl. “I mean, I wouldn’t expect that everyone should become a nuclear engineer or a doctor or a financial analyst, so coding is the same thing, in my mind.
“It is a great choice for a career (or even a hobby!), but it is not a life skill like cooking and so on,” Legree added.
“Why should everyone need to learn coding?” SoylentNews blogger hairyfeet agreed. “Most folks don’t NEED to know coding, especially if the devs are doing their jobs and making software that works well and is intuitive.
“To say everyone should learn to code is as stupid as saying everybody should be able to do open-heart surgery, when a good 99.997 percent of people would NEVER be in a position to use it,” hairyfeet added.
‘Is a Great Chef Made Greater?’
“Coding is a very useful skill, and I hope that at least one of my children learns to code,” offered Chris Travers, a blogger who works on the LedgerSMB project. “However, I do not think everyone should.”
Coding is “a very generally applicable skill and it is also a skill which is useless by itself and outside of any context,” Travers explained. “Coding can help solve problems, but it is not the only factor in any solution. Context matters.”
For those who want to pursue a career in a knowledge industry or any technical or scientific field, “some coding experience would be extremely helpful,” Travers concluded. “Is a great chef made greater by knowing how to code? I doubt it.”
Indeed, “many people don’t want and/or need to learn to code well enough as to write applications,” Google+ blogger Gonzalo Velasco C. concurred.
‘Some Are Just Terrible’
Coding is not for everyone, but school computer classes should include it in order to identify new talents and “lead them into their real vocation before they choose the wrong career path and a bright prospect is lost,” Google+ blogger Rodolfo Saenz suggested.
“Who knows how many Linus Torvaldses or Steve Jobses are lost because of lack of exposure to their real vocations?” he added.
“I think everyone should be presented with the opportunity to code, but I don’t even for a moment think that everyone has the knack,” consultant and Slashdot blogger Gerhard Mack opined.
“I view it as the same as anything else: Some people are great at sports; some (like me) are terrible. Some people are great at music and can do amazing things with little effort and some are just terrible no matter how much effort they put in.
“I’ll never forget one person in my high school computer science class who, despite being a ‘straight A’ student in everything else, never managed to learn to code,” Mack recounted.
‘A Lifetime Process’
“Everyone ‘should’ learn to code, but coding should also learn to come to everyone,” Hyperlogos blogger Martin Espinoza told Linux Girl.
“Where is the foolproof tinkertoy programming environment that has been prophesied by everyone and their brother in computing since time immemorial?” Espinoza asked. “The computer is vastly more useful if you know how to program it, and it has gotten easier in some ways over the years, but not really so much easier that everyone is going to take up programming.
“Programming well is a lifetime process, not something you can expect the average computer user to do unless the tools do most of it for them,” he concluded.
‘Linus Is Naive’
Google+ blogger Alessandro Ebersol had an even stronger view.
“Linus is naive,” Ebersol told Linux Girl.
“A computer is not a light bulb one just turns on — it’s more like a car, where one needs a driver’s license to ride,” he explained. “Everyone should learn to code, just as everyone needs to learn how to change a flat tire or else be at the mercy of strangers.”
Similarly, “I do think that everybody should learn to code, at least on a basic level,” Linux Rants blogger Mike Stone agreed. “It would teach them to break down a problem into small, manageable portions and solve each of those parts logically.”
It’s actually “less about the code itself than solving a problem logically,” he added. “That’s a skill that I think everybody should have.
“I don’t expect everybody to be able to write their own OS kernel or anything, or even retain the ability to write ‘Hello World’ past their senior year, but I do hope they would at least retain the basic ideas, and that could only be a good thing,” Stone concluded.
‘I Hate to Disagree With Linus’
Last but not least, blogger and former educator Robert Pogson saw it similarly.
“I hate to disagree with Linus on this one, but he’s not perfect,” Pogson began. “Arithmetic/reasoning/problem-solving these days requires coding even if it’s just making a spreadsheet to plan a mortgage.”
When Pogson started teaching, “many high school students dropped out around Grade 10 because they just didn’t get algebra/geometry,” he recounted. “When I finished teaching, those same students were some of the most adept at creating and using spreadsheets to solve real problems.”
‘Every Student Should Know’
Some people are just not abstract thinkers, and “computers make maths real for them,” he added. “The same goes for collecting, analyzing, finding or presenting information of many kinds.”
Every high school student should know “one or more computer programming languages very well, even if it’s just a spreadsheet,” Pogson asserted. “I recommend PASCAL because it’s very easy to learn and within days ordinary students can solve amazing problems with it.”
In short, “computers are the fastest way to find, examine, modify and distribute all kinds of information in school and out, especially when the information is code,” he concluded. “Every student should know how it’s done, even if all they do is hire others to do it.”
The tech industry is growing at an exponential rate. Per Forbes Magazine and the US Bureau of Labor Statistics, in 2020 there will be one million unfulfilled coding jobs. That’s going to offer some job security.
Although, I’m guessing programming and IT is going to become more focused on in our educational system; first private schools then it’ll make it’s way around to public schools.
The Tech Academy provides a 15 week training program to help fill that void.
I’m with Linus Torvalds. Programming takes logic as a basic trait and is not something you can teach.
Every school SHOULD have an elective though like similar to woodshop.
It is a huge subject, but maybe something like a java class would give them the basics.
How can i learn to code on my own? I have been entertaining the idea for a couple of months but i have no computer knowledge but i find it very intresting. If you can help me let me know.
…for much poorer reasons than that everyone ought to learn to be a garbageman, or a sewer worker. Face it: those people are MUCH MORE important to the smooth running of our society and of our world.
Edsger Djikstra, arguably one of the most brilliant computer scientists ever (he supposedly very much disliked the appelation), was adamant about even HAVING a discipline called "Computer Science". His argument was that a computer is nothing more than a dumb machine. How can, and why should, a discipline spring up AROUND A MACHINE?!
He maintained that this is strictly an artifice, and that if it had any credibility and validity, we should be creating Schools of Typewriter Science, Submarine Science, and the like.
Quit trying to elevate computer coding to a level it does not deserve, nor ever has. The smartest computer programmer–a LEAD, or ‘HEAD’ Department Manager Programmer–I ever knew did NOT know any programming language in detail. She would write her ‘programs’ (VERY CORRECT PROGRAMS) in pseudocode, and then hand them over to be coded by the people who could turn that into code.
Time to re-think this whole business, folks, and quit breaking your arms patting yourselves on the back.
"The secret to writing large, correct programs is to write nothing but small, correct programs".
Should everyone learn how to lay brick?
Should everyone learn how to use a sewing machine?
Should everyone learn how to bake a pound cake?
Should everyone learn how to solder?
Should everyone learn how to use a lathe?
Should everyone learn how to fly a helicopter?
Don’t look now, but your elitism is showing, and glaringly so. Stop fixating on "computing machinery" to the extent that you write stupid articles like this. You are probably less than one percent of the world’s population.
The sad fact is that our education system is so out of whack, that articles should be written which STATE, and not ask:
Everyone SHOULD learn mathematics.
Everyone SHOULD learn how to read WELL.
Everyone SHOULD learn how to write WELL.
Then everything else, which is subordinate to these basics, will take care of themselves.
You need to recall the words of Edsger Dijkstra–one of THE most brilliant ‘computer scientists’–who said something like, ‘What’s so special about computers that we have a discipline called "Computer Science"? ‘Why don’t we have "Typewriter Science?" ‘ ‘Why don’t we have "Submarine Science" ‘?
People don’t need to learn to code any more than they need to know how to repair the brakes on their car.
I believe everyone should have an introductory coding class. This way, everyone is exposed to coding so anyone who has a talent for it isn’t left behind merely because they never experienced it.