"NO MATTER WHAT – DO NOT create training from scratch. Really! Before you sit down to create that next manual, quick reference, user’s guide, STOP. Throw your question out to your online social network for help and you will be amazed at all of the information that will come your way. These are, after all, information professionals."
Beg, Borrow, “Steal” – Don’t Reinvent the Wheel When Creating Training
Training programs for open source software provide a tangible, and sellable, product. A successful training program not only builds revenue, it also adds to the overall body of knowledge available for the open source project. By gathering best practices and taking advantage of the collective expertise within a community, it may be possible for a business to partner with an open source project to build a curriculum that promotes the project and supports the needs of the company's training customers.
This article describes the initial approach used by Canonical, the commercial sponsor of the Ubuntu Linux operating system, to engage the community in the creation of its training offerings. We then discuss alternate curriculum creation models and some of the conditions that are necessary for successful collaboration between creators of existing documentation and commercial training providers.
First Attempts
One of Canonical's first attempts at engaging the larger Ubuntu community was a joint effort on the Ubuntu Desktop course. Canonical decided to offer the 7.10 version of the course under a Creative Commons CC-BY-SA-NC license. This license allows sharing and remixing of the materials for non-commercial (NC) use as long as the copyright holder is attributed and a share-alike license is used on remixed works. Mark Shuttleworth, founder of Canonical and the Ubuntu Foundation, announced the effort in 2007 on his personal blog. He began with: "Is it possible to have training materials that are developed in partnership with the community, available under a CC license, AND make those same materials available through formal training providers? We’re trying to find out at Canonical with our Ubuntu Desktop Course."
It didn't take long to hear the outcry from many regarding the NC aspect of the materials. Canonical needed to protect their materials, yet wanted to openly engage the experts in the Ubuntu Documentation Team (Doc Team). Many Doc Team and other community members refused to take part because of the selected license. The Ubuntu documentation and wiki sites are all under the less restrictive CC-BY-SA license, meaning that the training materials license disallowed using much of the existing materials.
In the first round of the effort, Ubuntu community members helped develop the course topics. Canonical then hired a training development firm to write the materials and take over 500 screenshots for inclusion in the more than 400 page course book.
For the open source documentation toolchain, Canonical tried to mirror the existing process used by the Doc Team to try to encourage existing team members to contribute. This also meant that the training vendor had to have their staff learn the toolchain which consists of Ubuntu, Doc Book, Bzr and Launchpad. As the vendor had no experience with any of those tools, it was quite a learning curve.
Coming from a traditional, proprietary training development background myself, I knew this was not an easy path. I recall trying to make documentation changes using the toolchain and finally gave up. In desperation, I made a long distance call to London to the project lead so that my contributions could be included before the final deadline. When I joined Canonical in September of 2008, one of my first tasks was to update the course to the 8.04 Long Term Support (LTS) version. The results in terms of community involvement were similar to the first effort as there was still much resistance due to the license. In the end, instead of using a vendor, I ended up writing much of the material myself and then hired an external copy editor and Doc Book expert to do the final formatting. What did work well was that within days of release, several teams began translating the materials. The Romanian team was first, followed by the Russian and Portuguese teams.
The upcoming 10.04 LTS version will only be offered as an eLearning version of the course. The eLearning version was developed at the same time as the classroom-based version but is under a standard copyright. At this time, there are no plans to change the license to a fully open, CC-BY-SA. For now, the business decision is for further course development to be under a traditional proprietary model with standard copyright.
Training Models
One of the models I will be speaking about at Linux Conf Australia in January 2010 is a hybrid that takes advantage of a more community-based approach. From the commercial side, a company needs products to sell, while the community is often more interested in learning and knowledge sharing. Wikis and documentation are great resources but they are not comprehensive training products ready for classroom use. There is no shortage of subject mattter experts (SMEs) in the Ubuntu community but few, if any, have the expertise to develop classroom materials. This is where a hybrid approach can hopefully accommodate both efforts.
In a hybrid model, training documentation should be licensed in a way that is compatible with existing materials. The license should provide course authors with the freedom to use existing materials as well as contribute back new materials that they develop in the process. The only part of the materials that a company would hold full copyright to are the learning exercises, lab activities, reviews, quizzes and course support files. In an ideal classroom setting, these ancillary files and materials are the key to providing a comprehensive learning experience. The community gets better documentation while the company can still provide a unique and valuable product for its customers.
Some will argue that everything should be provided under a fully open license. We argue that the hybrid approach satisfies corporate decision makers who see their intellectual property as the sole value in the training environment. It also shows the community that the corporation is willing to feed back into the greater documentation efforts. There are considerable financial savings as well. Instead of hiring course developers to create materials from scratch in order to hold full copyright, the community provides an existing source of material and experts in the subject area. Instead of spending time and effort to write technical documentation, the course developer can spend more time in developing quality and authentic classroom exercises.
In many regards, this was the approach we used at NASA. When we developed training materials for the Human Spaceflight program at NASA's Johnson Space Center, we were fortunate to have some very unique training facilities and classrooms. All of the materials for the International Space Station program are in the public domain and available under the U.S. Freedom of Information Act. Yet, unless you have access to those facilities, you cannot replicate the training experience. The same approach could be used by open source companies: focus on the training environment, not the documentation.
One of the most difficult tasks in developing quality training experiences is coming up with authentic lab exercises and case study scenarios. Many people are reluctant to document when they make mistakes but those experiences are what make great learning experiences for others. In my role as a learning consultant, I actively try to engage system administrators to talk about their pain points and problems. How to deal with those issues becomes best practices which can be fed into course development.
For example, during a kick-off meeting for one of our course development groups, one system administrator announced that he was actively working on a hacker attack on one of his systems back atthis office. He wasn't exactly thrilled when I told him "that's a great case study!". How he reacted, the troubleshooting process, who and where he went to for help were exactly what we were trying to capture. Too many times a problem is solved and no record of the process is kept. Think about Grace Hopper's famous entry "Relay # 70 Panel F (moth) on relay. First actual case of bug being found." Document everything!
Two other notable models for developing open source training can be found in the Ubuntu Learning Project and the Flossmanuals.net project. The Ubuntu Learning Project is an entirely community-based team using the Moodle.org learning management system to develop classroom and online materials. While the project is still gaining momentum, it has decided to offer the materials under the CC-BY-SA license. The server is currently being run by volunteers but they have asked that Canonical point a sub-domain, learn.ubuntu.com, to their offerings. Similar to the Doc Team's efforts, these materials would be available for all to use.
The Flossmanuals.net project offers a wiki-based book authoring system and accompanying book sprint model. The one week book sprint model was successfully used by the OLPC team to develop the OLPC Laptop Users Guide. The guide is available as a free download in either HTML or PDF format and is also available for purchase through the online printer, Lulu.com. This innovative model brings together SMEs, instructional designers, copy editors and formatting experts into a central location (participants can be both local and remote) to write a complete book or manual in just one week's time. Key contributors are rewarded by having the project sponsor their travel and the project has a complete book in just one week.
Looking Towards the Future
Open source training is an area where great innovation is still possible and greatly needed. Many training development tools are still in the realm of proprietary software vendors and finding course developers who are familiar with open source toolchains is a challenge. As open source becomes even more widely adopted, we look forward to seeing more training developers join open source communities to help grow the models and toolchains available.