Why #CS4All Won’t Be Your Flavor of CS: It will be more

Amazing and exciting to be doing CS Education in NYC right now. In case you are living in a news-free zone, Mayor DeBlasio announced a 10 year initiative to bring CS to every school in NYC, giving every student access to experiences that will engage, teach, and hopefully inspire them. (#CS4All on twitter)

Because this was a policy announcement, there have been lots of questions and some concern. Here’s some of the bare details: CSNYC (the foundation I work for) will be an ongoing partner in this work throughout the 10-year period and is leveraging private sector funding to match the Mayor’s public funding of $40m, bringing the 10 year total to $80m. (See Fred Wilson’s post)

There are lots of people publicly on board, and even more behind the scenes ready to dig in and make the whole thing go. Lots more structural information coming out over the next few months, but this involves the expansion of experts at the city/district level, local support staff for teachers spread around the city, massive teacher professional development initiatives, and a lot of thoughtful curricular and pedagogical work. In addition, there is money set aside for external, independent evaluation to make sure that we do a good job with everyone’s money.

A question I’m getting a lot, and wanted to take some space (not on FB or Twitter) to answer was – What are you teaching them?

Underneath that question is another – what does CS mean for NYC public schools? Theres lots of folks expressing concerns in every direction – responding to key words in the policy address (or previous press) including “coding”, “computational thinking”, “problem solving”, “Java”, “scratch”, “robots”, and “skills”. My answer – Yes. Yes to all of the above, and at the same time, no. No to all of the above.

I know, not helpful (and maybe a little crazy).

But here’s the thing. NYC is not a one size fits all town, and CS doesn’t need to have only one implementation in education to be rigorous.

Let me also set the record straight, we are not simply spreading CS1 out over 13 years of school. (nor CS1 and 2)

College CS1 is exactly that – a college entry level course for students at that institution. K12 computer science should not seek to emulate that. We are the prequel. The algebra and arithmetic to it’s calculus. And that is a good thing.

We get to explore the underlying concepts of computer science in great detail, while also helping kids without daily access to technology catch up. We get to show them how colors work on a computer, how numbers can be used to encode things, why a computer game is no fun without decisions or boolean expressions, and why some things on a computer take longer than others. We want to inspire them to think creatively (and many of our programs explicitly teach design thinking) and prototype (yes sometimes even on paper)! We want them to plan, to debug, to take problems apart and put them back together. We want them to build, to modify, to replicate.

Yes, skills are in there too. They need to be able to read and write code in some fashion. They need to produce digital artifacts that are interactive and not static. And they need to talk or write about those artifacts to communicate why they are a milestone in their learning. Check out the flavors of CS that CSNYC already supports for a starting point. More details to come.

I say that #CS4All won’t be your flavor of CS – although you might find your flavor in some of the programs that eventually fall under the umbrella – but odds are you will find much more.

Leave a Reply