[TOS] profs: good simple open source in-class techniques?

C. Titus Brown ctb at msu.edu
Tue Sep 1 01:40:04 UTC 2009


On Mon, Aug 31, 2009 at 07:18:01PM -0400, Greg DeKoenigsberg wrote:
-> 
-> So we'd all love to see real open source projects make their way into real 
-> classrooms, and that's certainly one of our goals.
-> 
-> However, there's lots of techniques to get students familiar with open 
-> source tools and methodologies that fall well short of "full 
-> participation," but are still useful on-ramps for students.  Things like 
-> getting students to turn in their homework via a commit to a svn 
-> repository.
-> 
-> Do any of you profs out there have any ideas like this that you've tested 
-> out in your own classrooms?

Hi Greg,

I did a few different things in my Web dev class last year,

	http://ged.msu.edu/courses/2008-fall-cse-491/

Apart from using Python, jQuery, Selenium, and twill, I had them turn in
the homeworks via svn.  That became a disaster for a few reasons:

 - I used a completely broken submit model.  They worked off of
   hw-specific directories, such as hw5/ and hw6/; since the homeworks
   were progressive, they would then copy hw6/ to hw7/.  Anyone want to
   guess what happens to subversion checkouts when you do that? ;) [0]

   I honestly have no idea what mental aberration led to that plan, but
   this next term (starting Th!) I will be having them work off of trunk
   and then make tags or branches for each hw, the way sane people work.

 - the machine they were working on (NOT the svn server, but the
   department server) had a really slow disk.  When I introduced them to
   Selenium with its trillions of tiny little files, it took them 15
   minutes to do a simple checkout.

   It's hard to blame this on subversion, I guess, but the model of
   making "new" copies of their work every week didn't interact well
   with the slow disk.

This term I'd really like to use git, but I won't because it's pretty
hard to teach.  If I had a github-like site with good security access I
might still try... DVCS is awesome and has changed the way I think about
developing myself, so I'd like to bring it to the students.

I also have a very simple continuous integration system that I'd like to
introduce; this would let them check in their code and then have my
system run the tests automatically.  Too much to write for this term.

Incidentally, after force-feeding svn to the undergrads (and getting
some pretty negative comments about it) I then got several "THANK YOU!"
notes from people who had to use it for their internships.

--titus

[0] Each directory under subversion control has a '.svn' subdirectory
that contains the subversion metadata.  When you copy the directory, you
copy the subdirectory, and end up confusing the heck out of subversion.
-- 
C. Titus Brown, ctb at msu.edu



More information about the tos mailing list