Rethinking CS101: Or, How Robots Revolutionize Introductory Computer Programming
Description
Introductory computer science education is entrenched in an outdated computational model. Although it corresponds neither to our computing environments nor to our work, we insist on teaching our introductory students computation-as-calculation, a mathematical problem-solving view of the role of the computer program. We can dramatically improve this situation -- and, as a corollary, all of undergraduate computer science -- by focusing on the kind of dynamic, interactive, inherently parallel computation that occurs in spreadsheets and video games, web applications and robots.