This is my 2 cents on how perl should be getting taught at my school. My school’s curriculum sucks in general across the board. But assuming I can’t change what classes are taught, when and what prerequisites this is how I would teach perl given the current computer science curriculum.
Since people reading this are probably not familiar with the Fail that is Baker College (I would not choose Baker if I had to start again but credits don’t transfer easily, so it was easier to continue on with it). Baker has 10 week courses, and with tech courses they are seemingly exclusively scheduled 6-10pm once per week. So this factors into how I’ll lay this out.
Specifically for the perl class the curriculum provides the schools crux server which is running CentOS linux or something… (I’m not sure which distro it is atm). It does not have the prerequisite of Linux 101 though, and it’s not in there curriculum. I don’t believe it has any prerequisites other than intro to programming. It is a 300 level course, however. This means that most/all students in the course have probably taken a few C++, Visual Basic, and Java classes (there are about 6 of these classes at the 200 level and I imagine most have done at least 2 of the 6).
The book required at Baker is currently Perl by Example (4th Edition). I’d suggest telling students it’s recommended but not required (If you won’t get in trouble) in any event you and students shouldn’t need to use this book at all, because a great book Beginning Perl is free online. Also the non book resources for perl are practically limitless and you should be encouraging the use of these. Some of them include
- kobesearch.cpan.org or
- Iron Man or
- SayPerl (AKA Iron Man with all posts translated)
- Perl Channel on Freenode if they need to ask for help
You may also want a good resource as a Linux CLI reference. This series of tutorials was recommended to me.
I will continue to post on the subject matter that I would cover each week, in this 10 part series (programmers count from zero ;) ). I may also discuss Perl by Example (3rd Edition) because that was the required book when I took the class, even though 4ed was out.
Update: Week 1 (part1)