Institute for Personal Robots in Education Blog

From the Microsoft Research Faculty Summit 2007: Robots in CS1

This week I'm at the 2007 Microsoft Research Faculty Summit in Seattle/Redmond. The Summit was attended by 400 invitees from all over the world (~92% academics, 3% governemt, 6% corporate). At the opening panel Prof. Ed Lazowska (University of Washington) led the attendees through a series of polls which were recorded through a SRS (Student response System). Among the dozen or so questions posed to the audience (the above percentages are also from one of the questions), Prof. Lazowska asked two questions that are directly relevant to our IPRE endeavor (Thanks, Ed!):
[Sorry, the phrasing of the questions is not exact, but something to that effect.]

Question:Are you (or your department) thinking about making changes to your introductory computer science courses (CS1/CS2) to increase its appeal and to attract more students into computing?


40% Yes, significant
33% Yes, some
22% Not much
5% No.

That is, over 70% of those who responded are thinking about (or making) some or significant changes to their introductory courses. While that was quite alarming, yet heartening, I was also intrigued by the 27% whose responses indicated that they are not planning on doing anything about their CS1/CS2 courses. This may imply that either they are quite happy with their current versions of CS1/CS2 or they may not be happy but do not plan to do anything about it. Perhaps they have already made recent changes and are satisfied with the results. Obviously we will have to do some more exploring on that front. But, if there are people out there who are quite happy about their current versions of CS1/CS2 it would be nice ot hear from them!

For the 73% of the responders, one change probably common to all is a change in the programming language. Again, one wonders if there are changes being considered at the pedagogical level.

The next question Ed posed to the audience was:

Question: Are you (or your department) thinking about changing the major curriculum to accomodate and attract more students?

33% Yes, significant
34% Yes, some
25% Not much
8% No.

Again, over 2/3rd of the respondents are considering some or significant changes to their curriculum.

The highlight of the opening panel was the pitch offered by Jeanneatte Wing (NSF) on the idea of using Computational Thinking as a theme for teaching computing. She went on further to challenge people to proliferate the idea of computational thinking for all people on this planet by the year 2050!

With that as an appetizer, it was no surprise, later in the day, to find a full house at the Brown Bag lunch session titled: CS1: Where's It Going, and What Should We Be Thinking About?

I was on the panel representing the use of robots as a context for teaching computing. I was joined by Charles Isbell (Gatech, Threads model of curriculum design) and Amy Gooch (U. Victoria, Game Programming as a context for CS1).

I will only focus on the robotics context here (for obvious reasons and for brevity which I've already lost!). Following the panel's speil, we had a lively Q&A. Among the questions posed for me were:

Do you think you will be able to teach all the concepts of CS1?
There was an implication that somehow robots were a schtick/gimmick and that the resulting course would be a watered down version. I had to clarify that we were using robots as a context and that inherently requires rethinking what one teaches in CS1 on one hand though also warned that we were not teaching robotics. Also, on the other hand, when one does rethink CS1 in this way, one can end up going much farther in terms of the set of concepts students learn compared to a traditional CS1.

What about abstraction? Do you teach any abstraction? OOP?
No OOP, thank you! But, abstraction, YES. In fact the key foundation of a robot-based computing course is that of abstraction. Given a set of robot primitives (move, turn, ...) students spend much of the semester designing more complex robot behaviors. Prof. Yale Patt (U. texas) was quite happy about that.

I teach my intro course by having students read 150,000 line very nicely designed OOP programs that they are then required to modify and enhance. Can I use that approach using robots?
No. We're talking here about introduction to computing. Throwing a 150K line program (no matter how well it may be designed) at these students is like asking them to read Shakespeare soon after learning their ABC's!

The key thing I wanted to get across was that while we are trying to use robots as a context for introducing computing, we are not prescribing this approach to everyone. There are several others that can work equally well. There are an overwhelming number of schools engaged in changing their CS1/CS2 but the reasons that may have led them to that point may be very different and so different solutions may have to apply.

There is definitely an undercurrent of drastic loss of enrollments that is driving much of this activity. For them, they will be well served if they found some engaging pedagogies to redo their CS1/CS2. A new language by itself is not going to cut it.

Also, last but not the least (and there were questions at the panel to this effect), one has to take into account the overall curriculum and how the redesign affects it. I wouldn't try to just change the CS1/CS2 and retrofit it into an existing curriculum. Please, do rethink your entire curriculum. I was happy to see that over 2/3rds were also considering doing just that!


  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
More information about formatting options