I'm not trying to teach XP at this point, just brainstorming about new ways to approach an introduction to programming.
Westwood is not a traditional college, but a technical/vocational school that offers four year degrees as well as associate certificates. Therefore, our student demographic consists mainly of folks who would not do well in a traditional university setting. Therefore, while we certainly use most of the usual teaching techniques, we also try to think about creative ways to present the material to our students.
So, we keep lecturing to a minimum, hands-on practice to a maximum. The reason I was thinking about pairing students up was two-fold:
- Our class sizes are usually fairly small, from 9 to twenty students, so the team work would be manageable from my perspective.
- One of the common issues we face is where students get stuck right at the beginning, either with little idea how to proceed or so anxious that the code they write or algorithms they design won't be 'perfect' the first time out of the gate that they get incredibly frustrated. (We've occasionally had one or two students burst into tears when the compilers reported errors in their code.)
My thought was that pairing them up would take some of the pressure off them as individuals and create a situation where each member could encourage and motivate the other.
But like I said, it was just a thought. I'm not married to it.