An Education Argument for Squeak

Mark Guzdial guzdial at cc.gatech.edu
Mon Apr 27 20:27:15 UTC 1998


Here's a hot-off-the-press result for those arguing with their department
over whether to use Java or Squeak in their undergraduate courses.

One of the particularly challenging topics in undergrad user interface
software is Model-View-Controller.  Lots of people (Jack Carroll, Randy
Pausch, others) have written about the challenges that students have trying
to understand such a system.  I've been trying a whole bunch of different
techniques over the last few quarters to help students learn this topic,
from more live demonstrations, to teaching the individual pieces separately
(changed/update separate from use in user interface systems).  I've never
got much more than an average of 50% on a midterm problem on MVC.

This quarter I did something different: We "grew" MVC in class.  Students
are building three interfaces in class, and on none of these can they use
library facilities for windows and buttons.  Instead, they can only draw
with Pens, display Forms, and read the Sensor.  Now, they are faced with
the question that MVC was meant to answer.
  During lecture two weeks ago, we "grew" MVC over the course of four
iterations of a user interface.  We started out by just blasting an
interface up and dramatically modifying our model class.  Then we separated
out the buttons, then made them pluggable, then introduced changed/update
and created pluggable textareas.  We talked through creating Controllers
and other kinds of components.

  What's important about this in the Squeak vs. Java argument is that it is
very hard to do this kind of progression with Java, or just about any other
language.  Drawing without windows is a no-no, and grabbing raw user events
is really tricky.  But my hypothesis is that without facing the task of UI
*without a toolkit*, students have a very hard time understanding how the
toolkit works.

Last week was the midterm exam, and again, I included a very similar
problem to ones I've used before.  Here are the results for the last four
offerings of this course (grades normalized to between 0 and 1.0).

		Averages	Sttdev
CS2390Sp98	0.864705882	0.26834552
CS2390W98	0.539622642	0.34186272
CS2390Sum97	0.536170213	0.39902234
CS2390Sp97	0.441568627	0.36106493

Is the Spring 98 Quarter (now) *REALLY* better than Winter 98?  I had the
same grader and the same grading scale last quarter and this.  I did a
one-tailed T-test on the two sets of grades datas.  p=4.4E-13 is much less
than 0.05, so I think I'm safe claiming statistically significant
difference.

I plan to write a technical report on this soon, but I thought that y'all
might be interested in some raw, early results.

Mark

--------------------------
Mark Guzdial : Georgia Tech : College of Computing : Atlanta, GA 30332-0280
(404) 894-5618 : Fax (404) 894-0673 : guzdial at cc.gatech.edu
http://www.cc.gatech.edu/gvu/people/Faculty/Mark.Guzdial.html





More information about the Squeak-dev mailing list