I agree with Jeff Atwood's car analogy (everyone who drives shouldn't be a mechanic) but I think it's beneficial to learn to code even if you never have a practical need/use for it.
Much like we teach subjects such as history and biology without the expectation every student will become a historian or biologist (or have a practical use for what they learned in those classes), we should teach programming for the indirect (not sure that's the best word) benefits. It's a different way to think and to view things (abstraction), it teaches problem solving skills (debugging), good learning habits (what to commit to memory and what to know you can look up), and attention to detail (wow, missing a semicolon did that!).
I agree to a certain degree...Yet I find that cases like trying to teach programming to kids still in junior schools or using a kickstarter to publish yet another book (yes I'm looking at you ruby girl), is taking things to extreme...
I don't see how learning programming is beyond the ability of a younger child, provided the syllabus and the style of teaching is developmentally appropriate.
I've seen elementary school kids mess around in Scratch and (without necessarily knowing this is what professionals call these concepts) they are learning about basic program flow, iterators, conditionals, event handlers, Cartesian coordinate systems, etc. Not to mention basic literacy, such as how to type, use the mouse, drawing sprites, recording audio, what it means to "save" versus "save as..." etc.
At the end of the day this is literacy, and just like music class doesn't make everybody Mozart, programming class won't make everybody Knuth or Stroustrup. But it's still worth doing because everybody deserves to understand how to think about and interact with the world around them.
Yeah, I see where you are coming from, but still, I think A lot of people are doing it not for the benefit of the kids but just to get known out there and cash in some money..
or
Perhaps I just want programming to be our little circlejerk :)
4 comments
[ 0.29 ms ] story [ 29.5 ms ] threadMuch like we teach subjects such as history and biology without the expectation every student will become a historian or biologist (or have a practical use for what they learned in those classes), we should teach programming for the indirect (not sure that's the best word) benefits. It's a different way to think and to view things (abstraction), it teaches problem solving skills (debugging), good learning habits (what to commit to memory and what to know you can look up), and attention to detail (wow, missing a semicolon did that!).
I've seen elementary school kids mess around in Scratch and (without necessarily knowing this is what professionals call these concepts) they are learning about basic program flow, iterators, conditionals, event handlers, Cartesian coordinate systems, etc. Not to mention basic literacy, such as how to type, use the mouse, drawing sprites, recording audio, what it means to "save" versus "save as..." etc.
At the end of the day this is literacy, and just like music class doesn't make everybody Mozart, programming class won't make everybody Knuth or Stroustrup. But it's still worth doing because everybody deserves to understand how to think about and interact with the world around them.
or
Perhaps I just want programming to be our little circlejerk :)