Well the good news is that the test scores of New York City public- school students are up this year from last. The bad news is that still barely a third of them passed math or reading tests.
And that’s despite the fact that a number of teachers have been accused of tampering with test scores.
So what should we do? Teach everyone computer science!
Via Instapundit [1], “The folly of teaching computer science to high school kids | New York Post [2]”
Strange as it may appear, I agree that teaching computer science to high school students is folly. Computers are (still) expensive (compared to books, paper, pens and pencils) and fragile. There's too much to fully understand [3] (even I, who have been using computers for something like thirty years, still can't troubleshoot a Microsoft Windows issue, much to the dismay of my father who occasionally asks) and much of what is hot now goes out of fashion in a few years (over the past thirty years, I've seen the rise and fall of both Java [4] and Perl [5], and Microsoft go from a juggernaut controlling the industry to a now mostly irrelevant bank with a quaint hobby in software, for example).
While I was in college, I saw the the first programming language taught in the computer science department change no less than three times! Back in high school, I took the programming course in Pascal [6] (which is pretty much a dead language these days) on an obsolete computer (the Apple II [7] back in the late 80s) and I was lucky in that I was able to use the only computer with two floppy drives! (which meant I could compile my code nearly twice as fast as other people in the class). And I can count on one finger the number of people who went on in life as a programmer.
And the sad thing is, computer science doesn't need computers to be taught. It's mostly math-centric theory. It's software engineering that requires the use of computers. Teaching “programming” is going to be expensive if you want to include all students [8]. And I'm not alone in this view [9] (link via Reddit [10]).
[1] http://pjmedia.com/instapundit/214946/
[2] http://nypost.com/2015/09/20/the-folly-of-teaching-
[3] http://prog21.dadgum.com/129.html
[4] https://en.wikipedia.org/wiki/Java_(programming_language)
[5] https://en.wikipedia.org/wiki/Perl
[6] https://en.wikipedia.org/wiki/Pascal_(programming_language)
[7] https://en.wikipedia.org/wiki/Apple_II
[9] http://www.nydailynews.com/opinion/jeff-atwood-learning-code-overrated-
[10] https://www.reddit.com/r/programming/comments/3mlhr4/jeff_atwood_learni