5 ms·
Kevin Drum (spoilers: knows how to code) had the best take on this: http://www.motherjones.com/kevin-drum/2013/12/no-everyone-does-not-need-learn-program-compu
by Steko 13y ago
Kevin Drum (spoilers: knows how to code) had the best take on this:
http://www.motherjones.com/kevin-drum/2013/12/no-everyone-does-not-need-learn-program-computer http://www.motherjones.com/kevin-drum/2013/12/no-everyone-do...
But wait. The link leads me to a fairly routine presidential video in honor of Computer Science Education Week, in which President Obama encourages kids to take computer science classes. "It's important for our country's future," he says. But I imagine he's cut dozen of videos for every other conceivable skill that could be taught in our nation's schools. "Nursing is important for our country's future." "Agriculture is important for our country's future." Etc.
So did this really lead to a conversation about whether everyone should know how to write code? How tiresome.1 I can probably list on one hand the number of significant skills that everyone should know. The rest are optional. Some of us know how to fix cars and some just hire mechanics to do it for us. Some of us know the law and some just hire lawyers to help us out. Some of us know how to drive trucks and some choose other careers.
In any case, I don't think computer programming would even make my top 20 of broadly useful skills.2 It's a great thing to learn if you plan a STEM career or if you just feel like learning it. But useful? For the vast, vast majority of us it's of no use whatsoever. Reading and writing are useful in nearly all careers, and are useful personally even if your job doesn't require them. But coding? Unless it's part of your job, the odds are vanishingly small that it will ever be of much use to you. Nor is it something that's useful in its own right because it promotes clear thinking. Nor is it a steppingstone to other, more broadly useful skills.
Coding is a specific skill needed for certain specific jobs. That's it. There's no need to put it on a higher pedestal.
1Tiresome because this comes up so often. Why do so many people insist that whatever skill they happen to know is one that everyone should know? There are lots of skills in the world. All of us know only a tiny fraction of them, and that's the way it should be.
2As a time-wasting skill, however, computer programming is hard to beat. I can no longer count the number of hours I've spent coding (or scripting) little utilities that did me no real good at all. But it was fun!
- jkn 13y agoI think most importantly it's about being computer-literate in a broader sense. Introducing kids to programming should be seen as a general knowledge matter. We introduce children to many fields so that they understand better the world they live in. Coding should be no exception, especially as computing becomes ever more dominant in our society. An introduction to programming would give children the basic vocabulary to understand what it's all about, and maybe the idea to go further when they need to or want to. Importantly, it also serves to demystify the field: a child might feel that programming is way beyond her reach, maybe requiring a significant technical background and complex and expensive tools to do anything? She might look at it differently when she discovers what she can do with Notepad, a browser and 20 lines of Javascript.
- pmichaud 13y agoI don't agree with Kevin. It's true that you can function without programming, but it's also true that being able to program could improve pretty much any job. Even a janitor could develop, say, a logistics application to optimize his path through the building he cleans, or build a roomba to vacuum for him. And more broadly, I really do think programming improves the quality of my thoughts. I remember when I was 10 or 11 consciously experiencing the sensation of getting smarter as it dawned on me at deeper and deeper levels how to think precisely about problems. And that skill set invades every aspect of my thought process now. I find it to be a remarkable improvement. On a practical level, programming is probably the best employment fall-back ever. I don't know many fields that you can enter without any credentials and make $100k+ within a couple years. That may change, but I expect it'll stay the same or improve for at least a few decades. So just for that reason, it may be wise for anyone who is capable to learn it.
- deleted 13y ago[deleted]
- deleted 13y ago[deleted]
- chacham15 13y ago> Even a janitor could develop, say, a logistics application to optimize his path through the building he cleans, or build a roomba to vacuum for him. Those require a lot of effort (and required knowledge) for minimal returns. A better example might be a janitor could make a web-app which lets himself/others note what places need to be cleaned, what time they were cleaned, and then potentially notice patterns that might help him find a source of the problem, minimize the response time, etc. I feel like that kind of a thing might be more useful and given the right tools/frameworks, might not even be all that difficult to implement.
- aestra 13y agoWe are a long long long way from that. Only 66% of Americans even understand the statistical concept of mean. http://www.nsf.gov/statistics/seind12/c7/c7s2.htm http://www.nsf.gov/statistics/seind12/c7/c7s2.htm Americans encounter basic statistics and charts in everyday life. Many media reports cite studies in health, social, economic, and political trends. Understanding statistical concepts is important to understanding the meaning of these studies and, consequently, to scientific literacy (Crettaz von Roten 2006). One test of these concepts included on the 2008 GSS found that 74% of Americans could read a simple chart correctly and 66% understood the concept of "mean" in statistics. Understanding these two concepts was associated with both formal education and the number of math and science courses taken. Older respondents were less likely than younger adults to respond correctly to these two questions. Men and women were about equally likely to answer these questions correctly (appendix table 7-15).
- drzaiusapelord 13y ago>There's no need to put it on a higher pedestal. Agreed, but when there's an important skill that's being developed overseas and neglected domestically, well, its worth beating that drum. Agriculture doesn't have that problem. The world is becoming more and more digital. Encouraging domestic success in technology should be a national goal and, no, "I have an MBA and an idea for an iphone app" isn't enough. Software is still eating the world. The Chinese, Russians, and Indians certainly understand that. Do we?
- JshWright 13y ago> But coding? Unless it's part of your job, the odds are vanishingly small that it will ever be of much use to you. It's silly to reduce this to "Programming is useless outside of STEM". I once saved an admin assistant _days_ of work because I happened to stop by her desk to chat and noticed the task she was doing (combining some spreadsheets) would be trivial to automate. She had estimated at the rate she was going, she had 17 hours of work left. I'm not suggesting she should know how to write script to parse and combine a bunch of csv's... But a basic 'literacy' in programming would have at least let her know there was a better way... I have plenty of similar anecdotes, and I would guess many of you do as well...
- ConceptJunkie 13y agoGood point. Knowing it could be done would have been good enough for her, because then she would have known to ask someone to help her. If you have at least an idea of what's possible, you can then have a good idea when it makes sense to ask the expert to give you a little help. She certainly would never _need_ to know how to do it herself, although there's nothing wrong with that. If she were asking the expert for something every day, then it might make sense to teach her more, but if the requests are infrequent and not time-consuming, then the productivity wins can be had without teaching someone something she doesn't need to know.
- moistgorilla 13y agoI think you are confusing things. Nobody wants the entire world to be CS experts. What most people are advocating is that an entry level CS course be given to all students. Just how we make them take Chemistry, Physics, literature.
- ConceptJunkie 13y agoNo, I'm not confusing things, I'm trying to suggest that even just understanding what basic coding can provide would be of a lot of benefit to people. I think having everyone take a basic CS course is a fine idea.
- 13y ago
- MichaelGG 13y agoEh, lots of people end up using information systems incidentally to what their main task is. I wrote a script in 20 minutes to automate some email->shipping labels work and saved someone about 5 hours of work a day. As more people start using datasets in some capacity for their "real jobs", being able to automate things becomes increasingly important. The amount of insane labor going on using Office boggles my mind. Knowing coding will at least get people to say "wait, there's gotta be a better way" even if they can't accomplish it themselves. Not to mention the cognitive benefits from thinking through problems.
- Steko 13y ago"I wrote a script in 20 minutes to automate some email->shipping labels work and saved someone about 5 hours of work a day" I see a number of anecdotes like this and they all seem to miss that their actual anecdote is actually something like: I saved a non-coder X hours by drawing on my thousands of hours of experience. No one disputes that knowing how to code would be useful to many people. What's being disputed is how useful it is for the time everyone would have to invest. Perhaps it would be more efficient to have professional coders going around and helping automate tasks for admin people than it would be to enroll all the admin people in coding classes. Maybe everyone should know how to brew delicious coffee or maybe only the coffee aficionados will do that and the rest of us get by with a combination of whatever dreck our Mr. Coffee at home spits out and by handing our money to baristas the rest of the time.
- eropple 13y agoI don't think anyone's saying that non-coders need to become thousands-of-hours coders. But being aware that it's possible to automate these tasks makes (or so the thinking goes) people more likely to realize that specific tasks can be automated. I have a project rather similar to your "going around and helping automate" in my backlog at work, actually, but it'd be a lot more efficient if the people doing the work were in a place to have an idea of what my time would be best used doing rather than me having to do the digging.
- 13y ago
- dragonwriter 13y ago> Unless it's part of your job, the odds are vanishingly small that it will ever be of much use to you. There are very few, if any, areas of knowledge work (which is broader than STEM, but subsumes it) to which a small amount of programming skill cannot be productively applied -- even the ones where institutional IT policies have restricted the available means of applying that skill to, say, Excel macros. > Nor is it something that's useful in its own right because it promotes clear thinking. Nor is it a steppingstone to other, more broadly useful skills. I'd have to disagree with this pretty strongly. There are probably ways you could develop some coding skill without learning broadly-applicable problem decomposition and analysis skills that are usable almost everywhere and not usually taught in other contexts, but you'd have to make a special effort.