Teaching Drupal online

I have now taught my Content Management Systems class twice for the University of Kentucky. This time it was online, taught to library and information science students. I have already written up my thoughts on Drupal as an LMS.
Now I want to describe the class itself and compare it with the first time I taught it face-to-face.

'Third boy, what's horse?'
'A beast, sir,' replied the boy.
'So it is,' said Squeers. 'Ain't it, Nickleby?'
'I believe there is no doubt of that, sir,' answered Nicholas.
'Of course there isn't,' said Squeers. 'A horse is a quadruped, and quadruped's Latin for beast, as everybody that's gone through the grammar knows, or else where's the use of having grammars at all?'
'Where, indeed!' said Nicholas abstractedly.
'As you're perfect in that,' resumed Squeers, turning to the boy, 'go and look after MY horse, and rub him down well, or I'll rub you down.
- Charles Dickens, Nicholas Nickleby

The foundation of the class is hands-on development, which means the following:
- you don't learn Drupal or CMS by talking about, but by creating a CMS of your own on your own
- the instructor is there to facilitate your learning and get you unstuck when you are confused
- even though it is all about practice, we don't teach the students where to click in the GUI; we teach them why to click there
- following from the above, even though the ending two thirds of the semester are all about practice, we start with the foundations - understanding what content management is, and what web technologies it relies upon.

Class structure

You can see a full syllabus and schedule here; let me point out the key elements:
- 40 "tiny tasks" throughout the semester - small applied checkpoints to monitor your mastery of the skills
- 3 short papers based on readings (mostly selected from the excellent A book apart series) that illustrate adjacent fields - knowledge management, content strategy, and mobile development
- a Drupal Sprint - a 24 hour window to create a CMS from scratch, to test students' strategy and time planning skills, as well as their knowledge of Drupal
- a final project - a full-blown CMS on which we work throughout the semester - from the initial ideas to one-on-one consultations, to peer reviews, and finally to a complete product.

Online or face-to-face?

Having taught it twice in both formats, I can say it can be done either way; I liked the online version better - probably because it was my second time doing it and some of the original bugs have been worked out the first time around. There were two big changes I had to make going from face-to-face to the online environment:
- write down explicitly as many ideas and explanations as possible and provide them as resources on the course support site
- deliver more of the materials (videos and articles) early in the semester since the students need the resources up front to start working on their ideas and kept coming back to them throughout the semester and asking questions.

Next steps

Here are a few things I would like to do differently next time:
- run the course sites and the student sites off of a robust platform optimized for Drupal rather than a generic shared hosting solution
- have full transcripts of all videos; improve the video delivery interface taking cues from the beautifully designed and beautifully usable interface of coursera
- have more guest speakers (ran out of time this time)
- add a private communication tool for students at the course support site (private messages rather than forum messages or comments)
- connect the course into a two-course sequence with our Information Architecture offering, moving all the theory out into the first semester (like our discussion of content strategy) and then going more in-depth into Drupal in the second semester.
- scale the model I have developed for Drupal to teaching other IT skills (computational linguistics, analytics, usability, etc)

If you are interested in learning more about my course or if you would like to collaborate on any of these ideas, let me know or just post a comment here!