8 ms·
New York Mayor De Blasio to Require Computer Science in Schools
- danso 11y agoI 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. 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 make 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.
- adamnemecek 11y ago> think of how long it took for literacy to become universally important, even though reading and writing was done centuries before Gutenberg. I think that you are underestimating this. It took so long for reading and writing to become common skills because there had to be a social shift for more people to stop farming and get an education. Shift from one type of education to another is much simpler. These days, you'd have a hard time finding parents who would be opposed to their kid learning programming instead of just about anything else.
- elevenfist 11y agoI think you're missing the point. More and more of the job of programming will be handed over to machines. Meaning that the work will become easier and easier and the skills required will change as time passes. The other issue is the amount of time required to do anything useful with the skill. One you learn how to read you can read books quickly. If you learn how to code, it'll still take you 6 hours at least to produce anything that would be even moderately useful. If you try to use computers to optimize everything, you'll waste more time on the "optimization."
- chongli 11y agoIf you learn how to code, it'll still take you 6 hours at least to produce anything that would be even moderately useful. What? No way. I crank out extremely useful shell scripts in less than 5 minutes all the time. You don't have to use an IDE, compiler and some heavyweight framework just to be a programmer. Cobbling together a quick shell or Python script can let you do TONS of tasks that would be extraordinarily tedious, if not impossible, for a non-programmer.
- vezzy-fnord 11y agoWe have user manuals and documentation for this. One need not devote a public school curriculum to it.
- cinquemb 11y agoTell that to very prominent VC's in NYC that have been blowing this horn for years in contradiction to your sentiments…[0]. I think public schools (and schools in general as an institution) face the same problem universities are facing: the obsolescence on such a mechanism to effectively and efficiently disseminate knowledge as more and more resources are allocated for signaling of such rather than acquiring/pursuit of it. [0] http://avc.com/ http://avc.com/
- vezzy-fnord 11y agoI don't follow. A shell is just a software interface and interpreter like any other. You learn it by reading its manuals, documentation and proceeding to experiment. Whether you acquire the information directly or indirectly via tutorials, examples and other third-party sources is of little relevance to the point. It's an activity divorced from the scope of public education. I do agree schooling is starting to disintegrate.
- cinquemb 11y agoI'm not disagreeing with your sentiments, I was just more or less stating that, there are monied interests in NYC like Fred Wilson, where if you go back through all his blog posts (or crawl the links in the sitemaps and enumerate all the instances of "kids/children" and "programming/code" in the same sentence, or within 1 or two words of each other you will see that it is greater than 0), who feel that it needs to be in the scope of public education.
- userbinator 11y agoUnfortunately I don't know if it ever will reach the same level of importance as literacy, because the industry seems to be trying very hard to discourage regular users from ever becoming programmers or even "advanced users"; see the War on General Purpose Computing: http://boingboing.net/2012/08/23/civilwar.html http://boingboing.net/2012/08/23/civilwar.html http://boingboing.net/2012/01/10/lockdown.html http://boingboing.net/2012/01/10/lockdown.html I mean, how do you even convince someone that learning to program is a good idea if it takes jumping through many serious hoops just to set up? The majority of interaction with computers is with locked-down mobile devices. Contrast this with home computers in the 80s that were practically begging to be programmed as they came with little other than a built-in interpreter, or the early days of the PC where user magazines had source code - in assembly language - that people could enter in DEBUG and create small but useful programs. The walled gardens of app stores have also grown to the point where simply sharing an executable with someone has become an almost taboo act, with some central authority telling the users who to trust. It's in the interests of the software industry to keep the majority of users computer-illiterate, so they can be profited from. On the other hand, basic literacy is valued by the industry, because it makes it easier to persuade users who know how to read and write (adverts wouldn't work if people couldn't read them...)
- perfTerm 11y agoHmm, well I absolutely agree with the hoop jumping, and while yes no one has ever shared an iPhone executable with me (although they could and I could run it without any sort of license without jailbreaking), I've really been pretty content with Apple's walled gardens (hardware and software). Every app runs pretty smooth since there are so few models and screen sizes to accomodate and I never have to worry when I download from the app store, at all! That's a pleasure. Setting up a development environment is an absolute pain in the ass, for a professional developer. But when I was in middle school on my pops pre G3 apple computer (or maybe it was the G3 at that point I'm not sure) I pretty easily figured out how to use a text editor and a preinstalled language to solve project euler problems. Boy those were fun. I'd imagine access to the computer is a big issue, and only god knows where I found projecteuler for the first time but those sparks are really whats needed. If it ends up getting taught in some stale way as proofs in highschool were taught with lots of rote memorization and none of the art it'll probably end up producing a similar amount of interest. Also, I presume, as people get older they're less likely in many cases to spend the time to learn a skill which doesn't offer anywhere near the tangible benefit of speaking and writing. Speaking and writing are practiced near constantly just because they're generally the best tools (along with drawing, gesturing, touch) for a job (communication) which must be performed everyday. I can't imagine the future where programming ever hits that level and see it more like the internals of a car with its standard bellcurve distribution of understanding across society.
- bweitzman 11y agoI think there's a fundamental difference between programing and literacy. Written language is a medium whereas programs are tools. Programming seems more similar to car mechanics to me. When the car was first introduced, everybody who owned one knew exactly how it worked and how to fix it. Partly because they were simpler and partly because the early adopter were just more interested. Over time, as the complexity and ubiquity of the car has grown, the general population knows how to operate a car but not how to fix it (save for some basic things here and there). Similarly with computers. The increasingly abstract operating systems, UIs, and even languages have created stratifications of knowledge across the whole stack (IT, software devs, compiler writers, CEs, etc) . Most people using a computer do not know how it works anymore, just like with cars. I think it's great that schools have to offer computer science because it's a great subject that young people can really take off with since writing software costs so little compared to other hobbies. But it would be silly to force people to learn to code. As much as computers are becoming the most integral things in our lives, it's just not a skill that everybody needs to have.
- danso 11y agoI have to disagree. A car mechanic is akin to a car as a tech support or sysadmin is to a computer. Some tech support people know far more than I do about fixing a computer, even if they aren't programmers. It's been about a couple decades since I wrote my first for-loops and if-statements in Qbasic...but even though computers have grown exponentially, not just in pure power, but in influence and capability -- I use the exact same logic and thinking, every day, as an application programmer -- and very close to the same syntax. Loops and conditionals (and functions, and so forth) are so fundamental to programming that it seems like anyone could learn them -- and use them to some practical effect -- in a few hours of following a few tutorials. But I haven't seen it in the beginners I've taught...It's a profound thing to communicate my exact intent to a thing that only knows, at its core, 1s and 0s...but it's not just the ability to write code, any more than writing is just the ability to make dark marks on a piece of paper. It's the ability to take thoughts and intents inside of me and communicate it to something fundamentally different from me, and yet be understood...in that sense, it's not so much different from traditional writing.
- browseatwork 11y agoI wonder what impact there will be in places that will require the availability of CS classes for students. 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. 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. Will universities see even larger increases in CS class demand? Will poorer students join the middle class with skills gained through programs like this? 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.
- decisiveness 11y ago>“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.” 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?
- dylanjermiah 11y agoYep. I'd rather have a MOOC-esque course where you can be certain the quality of eduction will permeate to the areas where quality education is scarce.
- christopheraden 11y ago>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? Is this problem similar enough to math that we can draw on data about mathematics education in schools? You can make a lot more money in industry with a math degree than you can teaching math to grade schoolers. Certainly, we hear tons of stories about unqualified math and science teachers, and all the harm they do to a desire to learn math, but I'm sure some students get exposure to math that wouldn't normally have much desire to immerse themselves in it.
- zardo 11y agoThe negative effect would be kids with a poor understanding of CS, which is still a step up from kids with no understanding of CS.
- nemo44x 11y agoIs that so? I always figured it's worse to think you know something when you don't than to not know something and know you don't.
- sethbannon 11y agoIt's a noble initiative but I can't help but wonder if some other discipline will be the need-to-know one in a decade's time.
- throwaway420 11y ago* 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. * 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.
- rhino369 11y agoA lot of people are really bad at math and we give them at least 10 years of it. I think at least some exposure to CS is important to just give kids a sense of it before college.
- dopeboy 11y ago> 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. So don't try at all? I don't follow. > If this ever becomes mandatory for all students, I believe that it will be a recipe for a lot of wasted time and frustration. I agree, kids need to self-select into it. Making it mandatory would be a mistake.
- dougabug 11y agoThe assumption that the general public is dumb and must be protected from difficult subjects/intellectual work, is a self-fulfilling prophecy. Removing everything from the curriculum that "a lot of people are bad at" is a bad idea. Most people are bad at something, there's nothing wrong with trying and failing; what's wrong is not trying when there's so much possibility that might be unlocked in people's minds. The ability to program, to debug logic, to understand algorithms brought to the general public could be the biggest cognitive advance to society at large since free compulsory education. Frankly, most people take classes in geometry, trig, linear algebra and calculus which never really gels in their brains and they never productively use in their adult lives. Learning how to make computers solve problems elevates and empowers the mind. Let's suppose that only a third of the population every becomes halfway proficient at writing software. That will be 2.5 billion people! With that many computer literate people in the world, finding teachers for the subject will not be difficult. I wouldn't worry about bright young hackers being crowded out by the dull masses; young hackers have been teaching themselves since there were close to zero teachers who could code.
- xacaxulu 11y agoThis 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. How about just getting kids to pass basic Math and English courses first.
- cpwright 11y agoThe 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.
- natrius 11y agoI think the New York Times changed their headline. The HN headline is the same as the one in the push notification I got.
- mcgwiz 11y agoI thought about this too. The current HN title is basically the title used for this article on the NYT homepage. Prepending "New York Mayor" clarifies the significance of this "De Blasio" fellow. <bikeshedding> Both titles have merit, both titles have flaws. Granted, in the shorter title, it's unclear that the "requirement" is of the school to offer it, not of the students to take it. In the longer title, who cares that it hasn't been formally announced yet, and it's unclear upon whom the deadline is placed. </bikeshedding> Can't please 'em all.
- cm2187 11y agoIt'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.
- dopeboy 11y agoIt's a good thought and in an ideal world with enough resources, I think this is how things should go. But if there aren't enough resources, I think a "JIT" approach is sound where students learn how a browser works as their learning HTML or they learn how the internet works when they're making a call to an API, etc.
- cm2187 11y agoThey could learn the basics of HTML, CSS and javascript when covering browsers. But to me it is equally important to understand why https and certificates matter, how email works, what's a DNS, a router, what's the difference between an IP and a Port, between RAM and ROM, CPU and GPU. And even very basic skills like using Excel, Word and Powerpoint. Programming to me is an advanced topic in computer literacy.
- ngoel36 11y agoIt's too bad he hates one of the most successful apps of all time...[Uber]
- ngoel36 11y agoIt's too bad he hates Uber..
- nemo44x 11y agoI 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. 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.
- cm2187 11y agoTo me it is less about teaching computer science than teaching computer literacy. You learned physics or history in high school but that wasn't to make you a scientist or an historian.
- iLoch 11y agoI agree, also a big benefit of having CS in schools is just in getting kids exposed to it. Would be nice if they named it something a little more friendly too, as I'm sure Conputer Science scares some people off.
- gharbad 11y agoIt would be great if we had more people like Woz in the world. Though he didn't teach in public schools until after making truckloads of cash.
- jboggan 11y agoWhen 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. 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.
- ploxiln 11y agoBy that logic, they shouldn't teach math or english either. (EDIT: maybe just math is the really good example here)
- calibraxis 11y agoYeah, people end up hating Shakespeare and polynomials.
- monort 11y agoIf you think it's important to teach math to uninterested pupil, take a look at the results of PIAAC adult skills survey: https://static1.squarespace.com/static/51bb74b8e4b0139570ddf020/t/535fdfdbe4b032825e56cbf8/1398792155103/PIAAC+Results+Summary+Brochure_Final_041814.pdf https://static1.squarespace.com/static/51bb74b8e4b0139570ddf...
- blister 11y agoThat's interesting. My school in Indiana had a gifted program that taught us the rudiments of Basic programming in almost the exact same way. We used to take home grid paper, draw in the pixels where we wanted them, and then write out the code to display them on the screen. Thus began my life-long love affair with making computers do what I tell them to do. As a 4th grader, even just the exposure of typing words and having graphics show up on the screen was enough to let me know that this was something I would love.
- stanley 11y agoAs 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.
- ghufran_syed 11y agoHal 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] [1] https://www.cs.berkeley.edu/~bh/ssch0/foreword.html https://www.cs.berkeley.edu/~bh/ssch0/foreword.html
- kkalra 11y agoIt'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).
- dopeboy 11y agoI think what's being proposed here is both. I know it varies by country but atleast here in the US, kids learn the core subjects and then have a couple options for elective courses (music, basketball, etc). The objective of the mayor is to get CS into that elective list at all schools.
- kkalra 11y agoAgreed. Having that option is an absolute must. I've been a programmer for 20 years so I think this is a step in the right direction. The point I was trying to make is that in the last few years, there's been a lot of talk about getting kids interested in programming but there's a lot more to the sciences than just programming. We need to make general math and sciences more interesting to kids. Maybe programming will be that catalyst to leads kids to a love of math and sciences.
- SEJeff 11y agoI 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. Fast forward 18+ years, and I'm a successful software engineer at a leading financial firm. Yup, this is a great idea.
- dopeboy 11y agoI'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] Rough thoughts: * 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. * 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. * 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. * 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 needs to be fun and have immediate feedback involved (ideally visual). Sidenote - if you're a programmer who lives in NYC and wants to make an impact now, consider volunteering for ScriptEd (https://scripted.org/ https://scripted.org/). [0] - http://dopeboy.github.io/teaching-code/ http://dopeboy.github.io/teaching-code/
- ytpete 11y ago> it needs to be fun and have immediate feedback involved (ideally visual) This is so huge - it's not just that it's exciting for students and a more rewarding way to show friends & family what you're studying. It's also a great overview of the field: AI, graphics, data structures, performance, network programming, discrete mathematics, concurrency, on and on. You never know what's going to resonate with someone and get them excited about pursuing CS further. But it's also hard to get through to the CS academia establishment on this. I worked with a professor who struggled for years to get a game programming course accepted by his department. They kept rebuffing him because "games aren't serious." (He eventually left and started a very successful game programming track at a different school). This was an Ivy League school, and they also seemed overly fixated on theory over practice. I think they had the mentality that in depth hands-on experience equals vocational school. I hope more of the teaching programs coming online now understand how engaging it is to just make fun things with code - and how it can still be a great learning experience as well.
- throwaway781 11y agoCurrent math teacher looking to teach computer science. Very excited to see this!
- dopeboy 11y agoVery cool! What curriculum are you following? And where do you teach?
- throwaway781 11y agoWe are using the EngageNY curriculum. I am teaching 6th grade in Baltimore.
- deleted 11y ago[deleted]
- logn 11y ago> “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.’ ” 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.
- dopeboy 11y ago> Maybe we need to accept that vocational schools are actually what our country needs. The success of dev bootcamps would seem to indicate they are what's needed. I have mixed feelings here. > But this will probably turn into a practical programming curriculum. I would argue that's what it should be if the pathway is to get the student to major in CS (or related). Most kids need to get excited before they get interested. If the hook is practicable programming (a la jquery photo gallery) in HS, then the catch becomes learning the linear algebra that is behind moving a picture from one spot to another.
- alexvr 11y agoBy 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.
- crapolasplatter 11y agotest
- crapolasplatter 11y agoFrom what I have seen gov't typically does things for the benefit of the lobbyist and oligopolies and not the general public. 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. 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.
- snorrk 11y agoI'm just worried that the kids are going to get arrested: http://www.dallasnews.com/news/community-news/northwest-dallas-county/headlines/20150915-irving-ninth-grader-arrested-after-taking-homemade-clock-to-school.ece http://www.dallasnews.com/news/community-news/northwest-dall...