[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