Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Education Programming

Why We Should Teach Our Kids To Code 427

An anonymous reader writes "An article by Andy Young in The Kernel makes the case that lessons in programming should be compulsory learning for modern school kids. He says, 'Computers help us automate and repeat the many complicated steps that make up the search for the answer to some of our hardest problems: whether that's a biologist attempting to model a genome or an office administrator tasked with searching an endless archive of data. The use of tools is a big part of what make us human, and the computer is humanity's most powerful tool. ... The computer makes us more efficient, and enables and empowers us to achieve far more than we ever could otherwise. Yet the majority of us are entirely dependent on a select few, to enable us to achieve what we want. Programming is the act of giving computers instructions to perform. This is true whether the output is your word processor, central heating or aircraft control system. If you can't code, you are forced to rely on those that can to ensure that you can benefit from the greatest tool at your disposal.'"
This discussion has been archived. No new comments can be posted.

Why We Should Teach Our Kids To Code

Comments Filter:
  • Benifits (Score:3, Interesting)

    by Faisal Rehman ( 2424374 ) on Tuesday January 24, 2012 @06:59AM (#38803081) Homepage
    Coding strengthens other areas, like logic, mathematics, detailed visualozation of problem, focus and insight
  • by SerpentMage ( 13390 ) on Tuesday January 24, 2012 @07:04AM (#38803109)

    Instead of teaching programming, like you say maybe teach about problem solving? Oh wait that is called being logical! Oh wait maybe that can be called logic and is, I don't know, part of the MATH curriculum! I don't think learning how to program, for everybody, is a good idea. Here are my issues with it:

    1) What language? Unless you decide to keep up in programming languages whatever you learn is going to be completely and uterly useless.

    2) What paradigm? Once you have decided on a programming language are you going to teach via an IDE? Text editor? How about file system communications? Database? Complications, complications, complications...

    I help my niece with her math and my biggest beef today is that you have history, or philosphy folks teaching math. You can teach math and science in two ways. The first and this is what I fear is happening all too much is to teach via remembering the formulas and solutions. This achieves nothing and leads the problems in computer science and science we have today. The second approach and this is more difficult since it requires an innat understanding of math and science is to teach it in the abstract. I teach math to my niece in the abstract and she GETS it (when she pays attention). I try to get her to understand why the formula she just learned is actually created and what purpose it serves. I get her problem solving skills involved! Oh wait is that not what you try to do with programming?

  • What is basic computer literacy? That has change a lot over time. Back in my day, you needed to know what a computer did to actually use the thing. Those times are definitely over. Those so called "Digital Natives" aren't. They are actually worse than those who need to "learn" the thing, because at least those people understand this is something you learn.

    I have taught "Computer Literacy" at high school. 13-14 year old. It was clear that the abstract concepts were too much for many of them. According to pedagogy, that's not entirely unexpected because at that age abstract thinking is way in early stages. I know it's elitist to say (and as a teacher, you're not supposed to even think about that possibility), but coding and the abstract thinking needed for it is a property of the kid, not something you can really teach.

    As for the typical computer literacy courses? A few about basic components of the computer, file management and then it veers to how to use productivity apps. For most of the kids that means learning by heart how to reproduce certain sequences. All in all: it has as much use as learning poems by heart. Well, at least with that you can impress some people.

    I quit the teaching profession, mainly because what is sold as "computer science" in high school has nothing to do with it. I wouldn't even call it "computer literacy". There were other reasons into which I don't want to get, but believe me when pay wasn't one of them.

    School should teach writing, reading, math, foreign languages, physics, chemistry, biology, history and geography and most important: problem solving skills. Problem solving skills is the only thing that will advance them.

  • by errandum ( 2014454 ) on Tuesday January 24, 2012 @07:59AM (#38803367)

    According to my organizational behaviour book ( http://www.amazon.com/Organizational-Behavior-13th-Stephen-Robbins/dp/0136007171 [amazon.com] ) only 30% is dictated by your surroundings.

    Studies conducted on twin brothers separated at birth tend to conclude that most twins will end up with similar skills, jobs and interests. It's not overrated, it's fact... The book is actually quite interesting, I advice you to read it if you can get your hands on it.

  • by Nursie ( 632944 ) on Tuesday January 24, 2012 @09:04AM (#38803737)

    1) What language? Unless you decide to keep up in programming languages whatever you learn is going to be completely and uterly useless.

    Hi there!

    I'm a C programmer! Been doing it since the turn of the century, as I understand it I was over 20 years late to the party but it's *still* going strong now.

    Please, this "it all changes so fast" meme is tired and done.

    It doesn't.

  • by asc99c ( 938635 ) on Tuesday January 24, 2012 @09:28AM (#38803909)

    This is one of the best points on here. For 90% of the people who could benefit from programming knowledge, the question of whether to learn Java, or C, or Ruby is ridiculous. Many office workers have to deal with spreadsheets quite a bit, and VBA is the thing they often need.

    My wife used to be a team leader and she had to submit various reports on a weekly basis, through a process that took about 2 hours of copying and pasting between various spreadsheets. One day she was doing it from home and I saw she had got rid of about half the work using more complex formulas instead of copy/paste. I showed her how to add a button to run a VBA macro that did the rest, and reduced it to a 10 minute job, collating the data from a few sources, and then hitting a button.

    Within a few months of that she had rewritten most of the standard procedures for how most of the management reports were created (by herself) and automated most parts of it.

  • by black6host ( 469985 ) on Tuesday January 24, 2012 @09:31AM (#38803939)

    I'm not 100% certain, but the "explorer" part ceases to exist around puberty.... My experience, I might be 100% off.

    Oh, I don't know. The "exploration" starts to get mighty intense around the age of puberty. Just not about common school subjects. Probably why teaching people of that age is so difficult. You're competing with forces that are extremely powerful, and deeply ingrained. Instinctual even. :) For me, learning about the (damn, can't even remember what they were teaching me at the time, insert subject here) didn't hold a candle to exploring the breasts of the girl that sat next to me.

  • by g0bshiTe ( 596213 ) on Tuesday January 24, 2012 @09:38AM (#38803989)
    Mine doesn't use facebook, she is 14. One of the pretenses of her having her own computer is we have access and randomly check, we have never done so as there is no need. She uses her computer to watch videos, and to draw in photoshop. She is currently working with some of her friends on their first animated short story.
  • by hey! ( 33014 ) on Tuesday January 24, 2012 @09:40AM (#38804015) Homepage Journal

    Society can have no higher purpose than to produce a world full of people who are more like me.

    Everyone thinks this, whether they're a software engineer or a sous chef. And we're all right, because we're imagining training future generations to be more like the *best* of ourselves and never the worst. We coders imagine a society full of creative problem solvers. We don't imagine a future full of people who are arrogant toward anyone they can find a reason to feel superior to.

    Now I happen to think TFA does a poor job of arguing its point. It claims that coding will teach "logic and reason",but it uses these terms in a very loose way. On this basis a businessman has just as much claim that learning to make decisions about allocating resources teaches "logic and reason". A landscape painter could argue that learning to paint teaches "logic and reason", because you have to work according to aesthetic principles. If you think art is a bit loosey goosey, consider how a pure mathematician looks at coding; sure it's *governed* by mathematical logic, but what isn't? Clearly everyone should be trained in the methods of philosophical investigation.

    Coding is very much akin to fine art. Yes, you've got to satisfy the compiler and produce a consistently working product, but the real secret sauce in coding is *imagination*. Coding is about transforming your mental representation of a problem from something you don't know what to do with to something that can be broken down with a little persistence. B-trees, hash tables, web services, function closures ... none of these things were discovered by studying nature, but through feats of imagination.

    It'd be great if everyone learned the kind of intellectual skills that coding sharpens. The problem with this idea is that it doesn't make room for all the other really valuable lessons other disciplines have. Yes it would be great if *everyone* was trained in coding, and *nothing else had to be thrown out of the curriculum*. The same goes for accounting, law or military strategy. But soon you get the point where you've claimed *all* childrens' free time. You're nowhere near teaching them everything that would be handy to know, but you've taken away time that they could use learning to direct their own energies and imagination.

    I think teaching *everything to somebody* is a good idea, but teaching *everything to everybody* is a bad one.

    There is such a thing as too much standardization in education. A little standardization is a good thing; we want everyone to be able to read and calculate and understand their roles as citizens. But taken to an extreme, you run up against an unforgiving truth: you can't teach someone *everything* that they might need to know. If you try, you end up with things that nobody learns that somebody ought to. Education ought to embrace both *standardization* and *diversity* as goals, both pursued in moderation. At present I believe the pendulum in the US at least has swung too far toward standardization.

    There's only one thing I'd want to see added to education everywhere, and it's more a matter of attitude than knowledge. There's altogether too many people who when faced with a difficult problem say things like "I'm no good at math", "I'm no good at foreign languages" or "I have no artistic talent". I think it's important for people to recognize and acknowledge thier limitations, but also to believe they can overcome those limitations. A homeowner confronted with a geometry problem should think, "I'm no good at math, but if I applied myself I could figure this out." A nurse in an emergency room might think, "I'm no good at languages, but I tried I could learn enough Cambodian to ask patients to point to what hurts."

  • by cdecoro ( 882384 ) on Tuesday January 24, 2012 @10:09AM (#38804331)

    A lot of people here make a good point that is, however, not relevant. Namely, that "we don't need more programmers." I'm inclined to agree, especially hearing from friends about how difficult the job market is for many of them. However, this criticism misses the point: we want to teach those that *aren't* going to programmers, in order to provide them with a well-rounded education.

    Most of the people that are taught algebra (or any math above basic arithmatic) will never use it in their work, much less be mathematicians. Same for a foreign language, or history, geography, chemistry, physics, etc. For that matter, it is completely irrelevant to the lives of the vast majority of people whether humankind developed after billions of years of evolution, or created in a day. Yet I don't see many slashdotters arguing in favor of those religious groups that don't want to teach accurate biology. Children should be given exposure to as much information and knowledge as possible, to make them better informed and educated adults. What they do with it then is up to them.

    Other countries do a better job producing more well-rounded students. Let me give an example: A German friend, a Ph.D. student in comparative literature, asked what my CompSci Ph.D. thesis was about. I said "mathematical integration," and asked her if she was familiar with the term (from experience, most Americans without science backgrounds are not). "Obviously," she said "I did graduate from high school, you know."

    Apparently, in Germany, everyone at university-bound high schools takes calculus. It's just expected. It doesn't matter if they're going to be in science or math. It is taught in case they might use it, and so that they can be generally more-knowledgeable people. The same, in my view, should apply with programming. It teaches rigorous, formal thinking skills, something that is sorely lacking in American academia.

  • by tomhudson ( 43916 ) <barbara,hudson&barbara-hudson,com> on Tuesday January 24, 2012 @10:12AM (#38804377) Journal
    You missed the point - programmers are a commodity.

    Exposing children to programming at school gives them a chance to specialise in a subject other than CS, and still have a chance at employment as a programmer in the future....

    Looking back, I'm glad my kids didn't bother. The working conditions are mostly crap, the job satisfaction is among the lowest of any industry, sexual harassment is the #1 factor for women dropping out (68%), and you're going to be hit by the 3 Os - Outsourced, Off-shored or Obsolete - well before you're ready to retire.

    Staying current doesn't help - perception is what counts, which is why you see people worried that they may never find another job at 35 because they're seen as "too old."

  • by TapeCutter ( 624760 ) on Tuesday January 24, 2012 @10:19AM (#38804471) Journal

    How are such skills even *remotely* useful to peple such as lumberjacks, casino dealers, chefs, cashiers, clothing designers or nurses?

    Coincidently I was a "lumberjack" in the early 80's, programming was very useful to me as a way of getting out of a life of low paid manual labour.

    Come to think of it the crusty old manager of the sawmill would ask you maths questions before he would give you the "cream job" of picking house lots from the green-chain. However the only worker making any real money was the guy operating the large break down saw, it had more knobs and switches than a small aircraft and was a very specialised skill. Of course a gigantic band saw with a 4 meter high jaw that can manipulate and slice up a 40ton log to within 1/64th of an inch would be controlled by a computer these days, and I wouldn't be surprised if house lots are now picked and packed by one guy operating a few industrial robots.

    And yes, we did occasionally sing the lumberjack song.

  • by gtbritishskull ( 1435843 ) on Tuesday January 24, 2012 @11:00AM (#38805087)
    I am an engineer who programs. I do automation. Most of my time is spent programming, but I would not have this job if I were not an engineer. The working conditions are great. Job satisfaction is pretty good. Not a girl, so don't know about sexual harassment, but have not seen any in my office (but there are not any female engineers). We outsource the gruntwork, but then the program has to be fixed, tested, and installed. If my boss could outsource my job he would (not because he is a dick or anything but because he is a businessman and is not going to give me charity) but he can't. Your life sucks because you don't have a useful skill to leverage with your programming, so you are a commodity. The point is, as you seem to agree, that people should not become just programmers. Programming should be a skill, not a job. Everyone should learn to program, just like everyone needs to learn to write. I write emails all day long (or at least it seems like it), but my career is not writing. My value add is engineering, which I leverage with my programming and writing skills. There are very few professions that I can think of where your worth does not increase dramatically from knowing how to program.
  • by Rakishi ( 759894 ) on Tuesday January 24, 2012 @12:24PM (#38806467)

    you are insane, i like math, but math homework is the most mind numbingly boring and tedious thing in existence. it is just monotonous repeating the same style of problem over and over...isn't this why they invented computers?

    Thus why we made it into a game/contest. You think mmorpgs are any less mindnumbingly boring and tedious than math homework?

    you needed a better school then.

    I went to a very good middle school, magnet and all that fancy stuff. All that meant was that the administrators had different but even more strict bins they put students into. Can't be too gifted or it complicates their little student filing system and they just can't have that. I'm pretty certain at this point that the better the public school the more bureaucratic the school administrators are.

    Of course, now that No Child Left Behind and standardized testing is king they might want to keep smart kids back just so they raise the test scores.

    i was sent to the high school for math while attending the middle school, and then they paid the tuition for me to go to a nearby university while in high school. and there were about 4 other high school students in my university courses, from other nearby towns. i didn't go to any fancy private school either, i was just in our states public school system.

    So did I although the school wasn't at all happy to do so. Apparently, where I was, a school has to provide education at your level or find/allow means to do so. Of course, proving that you are above what they can provide is where the hiccup is. Apparently, passing the Calculus AP exam in 6th grade makes a case that is really hard for anyone to argue against. That and the school really didn't want the press coverage they'd get if they didn't stop shoving their shitty math classes down my throat.

  • by Hatta ( 162192 ) on Tuesday January 24, 2012 @01:52PM (#38807917) Journal

    Teaching kids to "program" is as useless as teaching kids to "use a computer".

    I agree, both are not useless at all. Not everyone who has to use a computer for work is interested enough to learn on their own. I had a secretary here a few weeks ago who works on a computer all day, she couldn't open a .csv file. A little bit of education would go a long way to making people like that less helpless.

The key elements in human thinking are not numbers but labels of fuzzy sets. -- L. Zadeh

Working...