Lillie Kitteredge

In the intro programming class I TA, we frequently pair students for projects.  The main challenge in this is to make pairings that are likely to work out sufficiently well, without one student slacking off and the other doing everything.  The general tack is to pair students based on enthusiasm levels - slackers with slackers and go-getters with go-getters.  We do this as TAs for our separate sections, which makes the individual populations that must be matched small in comparison to the whole class.  It would be likely to produce a higher percentage of good pairings if we could pair any students from the class.   

So how do we tell student enthusiasm level?  It would, of course, be possible to just ask students if they are enjoying the class and finding it worthwhile, but aside from the uncommonly frank individuals in the student population, we'd be unlikely to get honest answers.  (Furthermore, given the rigamarole surrounding formal course evaluations, I suspect it would be going against University policy at some level.)  So what about automatically determining enthusiasm?  Certainly if we scan for curse words in their posts or in the pre-submitted stages of their concept maps and so on, that would be an indicator.  But how about their work habits?  I'd suspect that starting assignments at the last minute is correlated with low interest level, as would be both doing a fast and sloppy job (though unfortunately sloppiness requires a human to judge, unless other people have good ideas for automatically determining that!) or working in fits and starts for a long time and coming up with a mediocre product.  From the posting boards, I suspect there would be a high correlation between low enthusiasm and low posting frequency with short posts.  These data could be gathered for a subset of students who would then be classified by human TAs.  Since it's easy and intuitive to arrange factors like posting frequency and homework start time on linear scales, I would be inclined to use a classification method that plots students in n-space (where n is the number of factors considered).   Clustering algorithms capable of weighting different factors differently might be a good choice for this, as might support vector machines.

The danger with automatically determining enthusiasm would be of misclassifying interested but busy students as uninterested, combined with the danger that classifying a student as uninterested could become a self-fulfilling prophesy, since pairing them with a slacker could be discouraging.  On the other hand, pairing an interested student who's got the time to work with an interested student without time could be similarly frustrating for the less busy student.  Despite these, I think it's a worthwhile endeavor.