Khan Academy Tackles CS Education

I’m very excited to learn that Khan Academy has been working with John Resig (creator of jQuery) to develop a new computer science curriculum heavily influenced by Bret Victor’s talk on responsive programming environments.

Check out the video they made discussing their plans:

It’s very interesting to me to see the ways that academically trained developers differ (in ways both positive and negative) from self-taught developers. As I’ve said here before, I believe that having at least some minimal proficiency programming computers is an important part of basic literacy in the 21st century, and it’s not at all clear to me how to implement that on a wide basis. The work that people like Khan and the folks at Udacity are doing with flipped classrooms and the like are something that I’m watching very closely.

Update 27 Sep 2012:

Bret Victor responds (to the Khan Academy, not to me):

Here’s a trick question: How do we get people to understand programming?

Khan Academy recently launched an online environment for

learning to program. It offers a set of tutorials based on the JavaScript and Processing languages, and features a “live coding” environment, where the program’s output updates as the programmer types.

Because my work was cited as an inspiration for the Khan system, I felt I should respond with two thoughts about learning:

  • Programming is a way of thinking, not a rote skill. Learning about “for” loops is not learning to program, any more than learning about pencils is learning to draw.
  • People understand what they can see. If a programmer cannot see what a program is doing, she can’t understand it.

Go read the whole thing.