Thursday, October 23, 2008

Get with the program(ming)

Did you get a chance to see the Randy Pausch's Last Lecture on KCTS during the recent pledge drive (it has also been playing on KBTC and can be seen on the web here)? Pausch was a professor of computer science who was diagnosed with pancreatic cancer in 2006. This lecture, titled Really Achieving your Childhood Dreams, was given at Carnegie Mellon University in September 2007. It's a funny, yet inspiring look at computer science, academia, football, teamwork, user interface design, Star Trek and one man's journey to achieve his childhood dreams. The 48-year old Pausch died July 25th, 2008. If you have 90 minutes someday, watch the video. You won't be disappointed.

In the lecture, Pausch talks about indirect learning several times, something he calls head fakes. An example of a head fake is how kids indirectly learn really important things like teamwork and sportsmanship when all they thought they were learning was to play football.

Pausch's head fake legacy is Alice, the 3D programming environment that allows kids to build animated 3D stories and videos while introducing them to the concepts of object oriented programming. The use of animation allows students to better understand how they control the objects through the language and it gives them an introduction to key programming concepts. It also appears to be a more inviting introduction to programming to traditionally under-represented segments of our society (see their promotional video here).

Similarly, Alan Kay has been working on Squeak, a programming language based on the Smalltalk language. In particular, Squeak eToys is an implementation designed to help younger kids learn about science and math through modeling and experimentation. This video is another from the TED Talks series, features Kay talking about the educational value of the tools and demonstrating eToys on one of the one laptop per child (OLPC) machines.

I don't know if computer programming is being taught in the younger grades but these guys are making a really compelling case for focusing on it at a much younger age. Even if kids aren't becoming computer science majors, and most aren't, it seems like it offers important head fake opportunities to teach critical thinking, experimentation and what-if analysis. These are skills that are important to people who are working in finance or marketing. Heck, it's a pretty useful set of skills for picking the right mortgage (assuming anyone's allowed to have a mortgage anymore).

So what do you think? I'd like to know if any of the local school districts are teaching programming with eToys or Alice in middle or high schools? Is anyone teaching programming with any language in middle schools or are we all too busy studying for the WASL? Is there an opportunity to reach out to segments of our population that are traditionally under-represented in information technology/computer science?

Tags: , , , , ,