I've taught programming on a volunteer basis to high school kids on behalf of a non-profit in NYC for the past two years. [0]<p>Rough thoughts:<p>* This is great news. I'm not the biggest fan of DeBlasio but this is a step in the right direction. There are too many bright and talented kids who never get exposed to computers or the field of programming. Getting to these kids and showing them that they're capable of manipulating the machines they use everyday is huge.<p>* There needs to be more effort put toward sourcing qualified teachers. I talked about this in more detail in another comment in this thread but a TFA equivalent might be a good idea.<p>* I'm pleased this is not a mandate to teach all kids programming. I've seen kids in my classroom who are there because they want to be with their friends. There needs to be a small amount of organic interest on the student's part.<p>* What will the curriculum be? Is it going to be AP CS which has serious issues around it and over-emphasizes theory over practice? I've found that---especially with high school kids---it <i>needs</i> to be fun and have immediate feedback involved (ideally visual).<p>Sidenote - if you're a programmer who lives in NYC and wants to make an impact now, consider volunteering for ScriptEd (<a href="https://scripted.org/" rel="nofollow">https://scripted.org/</a>).<p>[0] - <a href="http://dopeboy.github.io/teaching-code/" rel="nofollow">http://dopeboy.github.io/teaching-code/</a>
When I was 8 my public school had a gifted program that I was fortunate enough to have participated in. They attempted to teach us BASIC on Apple IIe's, or rather the teacher (who had little or no understanding of programming) followed through a lesson book and told us what to do. We were creating still color images, pixel by pixel, and I thought it was the most boring, pointless, and stupid exercise we did that year. No connection was made to the programs that we used on a daily basis or the Nintendo games that I was so happy to run home and play. It completely disinterested me in computers for the next 15 years as I was more drawn to competent teachers who could share their love of music, mathematics, and literature.<p>I wince when I think about the years I spent not coding because of poorly-intentioned education. I'm not sure that a mandate to have that many CS teachers at that level will create positive educational experiences on the net.
I imagine most of us programming now will be dead by the time (if at all) programming reaches some kind of universal acceptance; think of how long it took for literacy to become universally important, even though reading and writing was done centuries before Gutenberg.<p>20 years ago, learning programming wasn't as important because the technology just wasn't there to make it a good return on investment. But the value of reading and writing was also relatively minimal when it cost a fortune just to <i>make</i> a single copy of a book. If programming is how we turn human thought into machine-understandable commands and subroutines, and more and more of our work is delegated to machines...it's hard to imagine the long-term argument against learning programming.
* Getting a little exposure to it is wonderful and valuable for all. But I believe that being good at computer science requires having some skill at a type of abstract thinking that many people, even otherwise really intelligent people, don't possess. If this ever becomes mandatory for all students, I believe that it will be a recipe for a lot of wasted time and frustration.<p>* If it ever becomes mandatory, I also wonder if this could also be a recipe for really hampering kids who are actually interested and talented in this field. You'll have a bunch of untrained teachers trying to corral a group of kids, the majority of which won't be interested in the subject matter. That will end up with dumbed down classes so the majority don't feel uncomfortable and the talented folks also being frustrated at being slowed down and made to do a bunch of busy work.
The original title "De Blasio to Announce 10-Year Deadline to Offer Computer Science to All Students" is a better headline. Of note in the article, "Computer science will not become a graduation requirement, and middle and high schools may choose to offer it only as an elective." This is quite different than the HN modified title.
>“The difficulty is getting enough teachers who are trained in it, and trained well enough to make it a good introduction to computer science,” said Barbara Ericson, the director of computing outreach at Georgia Tech’s College of Computing. “And if you are well-trained in computer science, you can make a lot more money in industry than teaching.”<p>Seems to be the real problem here. What kind of negative effect might result from a bunch of unqualified high school teachers teaching CS poorly? Is some exposure better than none regardless of teaching quality?
> “I’ve literally had a conversation with a student where she’s saying, ‘I really don’t like math,’ as she’s walking me through a JavaScript function to have an interactive photo gallery on a web page that she had also built from scratch,” Mr. Samuels-Kalow said. “I looked at her and said, ‘This is harder math than what you’re doing in your math class.’ ”<p>And being a baseball pitcher requires lots of physics knowledge. If they actually want to teach computer science, then they'll be teaching some math. But this will probably turn into a practical programming curriculum. Maybe we need to accept that vocational schools are actually what our country needs. And a vocational programming course just doesn't carry the same stigma as other fields.
I wonder what impact there will be in places that will require the availability of CS classes for students.<p>Who's going to teach, and what will be expected- a credential, a CS degree? Programs that have a shortage of qualified teachers, e.g. special education in California, have some streamlined process, but it still requires a credential.<p>What will the CS-skilled teachers get paid- the same as others? What material will they use? Hopefully good digital content will help students with teachers of all quality levels be exposed to good lectures and material.<p>Will universities see even larger increases in CS class demand?<p>Will poorer students join the middle class with skills gained through programs like this?<p>Large companies will be so happy when they get a huge increase in their applicant pools, especially more overall women/non-whites/non-Asians, for good pr/stats. And with an increased supply, a decline in price they'll have to pay for simpler/lower-level work. This could have a knock-on effect up the chain over time.
I admire the sentiment but I have to believe that at any scale someone qualified to teach CS would be doing something a bit more lucrative than teaching public school. Altruism is a beautiful thing, and something I wish I had more of, but let's face it: it's easier to demand this than to actually deliver it.<p>I imagine that when our industry has the next culling, public interest in CS will wane as usual until the next revolution is quickly unleashed by software fueled technology.
By the time kids who are taught to program in K-12 enter the workforce, knowing syntax, computer details, and data structures will be a thing of the past or a thing for really hardcore engineers who have to use a strict language like Python. By that time, most common programming tasks will be a matter of writing plain English and testing the AI interpreters, and students will be stuck learning archaic programming just as they are presently forced to learn archaic and impractical math techniques that could be done very intuitively with a few lines of Python and arithmetic. I say this jokingly, but there may be some truth to it.
It's great to give the oportunity to kids to learn computer science but it looks like everyone associates computer science with programming. That's true at university level but does that make sense for young kids? Shouldn't we rather focus on the basics of computing: typing on a keyboard, understanding how an OS works, how internet works, a browser, etc. Then in high school some basics of programming in an easy but useful language like VB, java or python. And leave the hardcore stuff for university.
It's a good start but I think it better to focus on getting kids interesting in general math and sciences (of which computer science is a part). The next generation of entrepreneurs need to focus on solving bigger problems and not just focused on making apps. Of course all of it depends on how we can get kids more engaged and interested in learning (whatever subject that moves them).
I'm just worried that the kids are going to get arrested: <a href="http://www.dallasnews.com/news/community-news/northwest-dallas-county/headlines/20150915-irving-ninth-grader-arrested-after-taking-homemade-clock-to-school.ece" rel="nofollow">http://www.dallasnews.com/news/community-news/northwest-dall...</a>
I had a class in C++ in 10th grade and an advanced class in C++ in 11th grade. It clued me into the fact that I was pretty good at building things (I played with legos a lot as a child) with software.<p>Fast forward 18+ years, and I'm a successful software engineer at a leading financial firm. Yup, this is a great idea.
From what I have seen gov't typically does things for the benefit of the lobbyist and oligopolies and not the general public.<p>So I have a hard time not thinking that all this attention and push to teach programming isn't really a ploy to saturate the computer field with software engineers and programmers to lower their compensation.<p>IMO it looks like software engineers are getting compensated fairly well , perhaps to well and to close to executive and director pay. Increase the pool of software engineers and the less you have to pay them.
Hal Abelson's foreword to Harvey & Wright's "Simply Scheme" comes to mind: "One of the best ways to stifle the growth of an idea is to enshrine it in an educational curriculum" [1]<p>[1] <a href="https://www.cs.berkeley.edu/~bh/ssch0/foreword.html" rel="nofollow">https://www.cs.berkeley.edu/~bh/ssch0/foreword.html</a>
This is the most "New York" way to do something: i.e. enforce it with LAW!!
What do Stop-and-Frisk, junk food tax and CS all have in common in NY? Government enforcement hahaha.<p>How about just getting kids to pass basic Math and English courses first.
As someone that attended public school in NYC, all I can say is good luck finding qualified teachers and paying them enough to keep 'em from quitting.