Drupal Open Curriculum Project

Welcome to the DOC project. Here you can participate in creating Drupal training courses that anyone can use.

Help create outstanding training for Drupal by creating training in the open, source code controlled, where anyone can use and improve.

Immediate Needs of the Project

  1. A docbook style guide that defines what tags we use and how
  2. Documentation for recommended “toolchains” for each operating system. Editors and how to set them up properly, etc.

Courses (Current, Planned, Desired)

CurrentCourses
PlannedCourses
DesiredCourses

Questions and Answers

Why not just edit documentation pages on drupal.org?

Documentation is very important. If you are inclined to edit/maintain documentation on drupal.org by all means do so. However, we don’t think documentation and training courses are the same thing. Much like a module on drupal.org we think that a training course should have a maintainer who can ensure that the course works well and adheres to a vision for who should take the course, what they will learn from the course, and how.

Why are you using Docbook format?!?

Or, “why not just make a wiki somewhere”, etc..

There is a trade off here of course. We could just use word documents, or openoffice document format, but tracking changes over time would be much more difficult with each of those. Also, both of those formats combine the raw text and the presentation (formatting) of the course which again limit the ability to control the course or define alternate formats after the fact.

With docbook with have a well defined xml format already suited for creating books with chapters, sections, etc. We also have well defined methods for outputting the docbook xml to html format or pdf format. These techniques are well documented and can even be automated.

By separating content from presentation we allow those who want to use the courseware to easily over-ride the appearance of the final result.
Try clicking this link for the current version of the Drupal 6 Sitebuilding course. Note the very nice styling. All the styling is css that was added after the html was created. It would be easy to attach alternate css to get a very different appearance if desired.

The downside of course is the requirement to learn docbook. However, we seek to minimize that by using a very small number of docbook tags and documenting how to create courses for beginners to docbook.

Why are you hosting this on gitorious?

Or, “why are you putting this in source code control”?

Source code control makes it easier for the maintainer of the course to accept contributions and edits. The maintainer can easily see what changes are being proposed.

We are using git because git is the future direction of source code control for the Drupal project so we expect many Drupal course authors will be familiar with it over time.

We are NOT currently hosting it on Drupal.org currently as the git migration hasn’t occurred yet (and we felt that forcing folks to learn CVS was too big of a hurdle). However, once drupal.org is on git we hope to move this project back to drupal.org so we can get the benefits of issue queues, etc. which we currently lack.

Where are the docbook tags you are using documented?

They aren’t yet. That is a TBD. However you can review the drupal 6 sitebuilding course XML for a complete course example.

How do I use git and edit docbook on my system?

Defining editors, git tools, etc. for each operating system is a TBD for this project. Contributions welcome. If you are editing courses in the Drupal Open Curriculum please consider documenting what tools you are using to edit the docbook xml, how you set up xslt to convert it to html, and what procedures you are using for git.

How do I download a course?

I want to download a course, but I don’t want to use git – is there a way I can just download a whole course?
– Find a course on the drupal open curriculum
– Click “Source Tree” for that course
– On the right side of that page look for a link to “Download master as tar.gz”. Note: If you are on Microsoft Windows you’ll need something that can extract files from a tar.gz. 7-Zip is one freely available option.

Can I charge to deliver a course in the Drupal Open Curriculum?

Absolutely! It is open source! Please do let us know if you are using Drupal Open Curriculum courses, and please contribute back any modifications or proposed improvements.

Join The Team

If you have a new course to write go ahead and write it. As soon as there is enough where you can benefit from others reviewing it, let me know and I’ll invite you to join the doc team.

If you want to edit a course that is already posted, you may simply clone the repo for the course you want to write (git clone git://gitorious.org/drupal-open-curriculum/drupal_6_site_building.git drupal_6_site_building), make your mods, then post it as a merge request. OR, if you are not comfortable with source code control then simply download the tarball for the course you want to edit. Edit the files, then let the course owner know you have edits to contribute.

Lot’s of folks have written about what curriculums should look like. Better in my view is pick something and start writing!

Write A Course

You can create a new course. Courses in this project should be written in DocBook format. Don’t know Docbook? If you write it in a plain text format, members of the DOC Team can help you convert it.

If you do know Docbook, all the better. We’ll be publishing a “style guide” detailing, among other things, our preferences for which docbook tags to use. By limiting which docbook tags we use and being consistent, our courses will be easier to maintain and edit.

Edit A Course

Know Git? No problem. Clone the repo containing the course you want to work on. Have at it. Then make a request to merge it back.

Style Guide

Coming soon. This will mostly be a “which tags to use for what” sort of style guide. We want to identify the minimum set of docbook tags that can be used to create a serviceable course. For now, use the minimum docbook tags possible and try to be consistent. By all means use the Drupal Intro course already published as a starting point towards which tags to use.

Don’t want to work with docbook xml? That’s no problem either. Simply write your course in PLAIN TEXT and submit it that way! By keeping it plain text you’ll make it easier for someone else to add the appropriate docbook tags.

Either way, follow the simple principle of “Define – Show – Do – Review”. So as your write your course you DEFINE what you will teach them (the WHY is often more important than the WHAT), SHOW them how to do something demo style if possible, have them DO it by writing a lab exercise, then write a REVIEW to remind them briefly what they just learned and how it fit in with the rest of the course so far.