Thursday, October 07, 2010

Version control killer app for higher education

In his keynotes address to the MoodlePosium at Australian National University, Martin Dougiamas, developer of Moodle, mentioned how Moodle 2 would de-duplicate files. That is, if two people upload the same file, the system can detect this and only store one copy. This could make considerable savings. But it also got me thinking about the more general issue of version control in courses and more generally in the work of universities. Perhaps version control will be the killer application for higher education.

If a file is changed in Moodle, only the new version is kept, the old version is lost (unless a backup has been done in the interim). As a result there could be numerous slightly different versions of the same file stored (with the user creating a new copy). The system will not know these are versions of the same file. This has implications for computer resource use and also for pedagogy. The copies of the file will take up space, wasting storage. When a file is changed the person making the change will not be alerted that there are other copies which perhaps should be changed. Those using the changed file will not know what changed or why.

Software developers have created a sophisticated revision control process for managing such changes, based on previous manual procedures for engineering documents. Version control software, such as Subversion, can be used to manage versions, allowing for multiple versions of the one document and the merging of changes. Not only does this reduce the system resources required, by just storing the changes, it allows for the management of very complex development processes. Word processors such as Microsoft Word and OpenOffice.org have a limited form of version control built in, with the ability to record changes, as do some content and repository management systems.

During the World Computer Congress in Brisbane I talked to a university professor who was having problems with email. They were keeping copies of all messages from students and book collaborators in the university mail system. As a result their mail box was clogged with copies of draft papers and books. This was partly a failure of the university's administration in not providing suitable online tools for handling large documents which will be required for several years. However, it was also a conceptual failure. When I asked them about version control, they looked at me blankly. I had assumed that this would be something familiar to any professional handling large amounts of information, but it appears to be confined to engineers and IT professionals.

Version control may already be avilable with many Moodle installations, as it is built into the Alfresco content repository, an open source package installed alongside Moodle. Perhpas it would be possible to use Alfresco to add version control to some parts of Moodle.

Also perhaps version control should be part of the basic training for anyone who will be producing large volumes of material at unviersity (essentially anyone doing an undergraduate or postgraduate program or research). They could then be trained to use these techniques as part of their education and research. The versioning process is in some ways analogous to education or research: these are measured on what has changed since we started.

Instead of a student sending hundreds of pages of thesis draft with a few changes, accompanied by a message indicating where the changes are, the system could be used for this. Instead of version control being incidental to education, it could be central.

However, my enthusiasm for versioning may not be shared by others. Peter Sefton, creator of the Integrated Content Environment (ICE) for creating educational course ware, commented: "... versioning is not one of ICE’s most used features and people would be happy to sacrifice it for extra speed ...".

No comments: