LOCO embedding

LOCO splash screen

Promotional video

Organisational overview

The TAFE NSW eHub provides support to the 10 TAFE NSW Institutes, with a focus on advancing teachers' eLearning capability via learning experiences and knowledge sharing.

Trial overview

LOCO – the Learning Object Composer – is an innovative software product developed at the TAFE eLearning Hub, which allows teachers to quickly create learning resources and assessment items, publish to HTML, MS Word and Moodle XML, and save to the Equella LCMS.

For more information see the detailed rationale.

LOCO was developed and beta tested in 2011, and the user feedback has been very encouraging. LOCO was an Australian regional finalist in the 2011 Learning Impact Awards.

In this project we focused on the sustainability of LOCO from the user, organisational and developer perspectives. To accomplish this we have:
  1. established sustainable mechanisms for installation and support,
  2. rolled out the product more extensively and worked to embed the product in teacher practice,
  3. trialed the LOCO output from a universal design perspective, with a range of students that require resources in different format
  4. made the product available to the wider developer community so that it may developed collaboratively.

Trialing the technology


The first series of LOCO trials were conducted in 2011 with a range of teachers from South Western Sydney Institute and Western Sydney Institute. Many suggestions and important features have been incorporated from that first trial. The feedback from those trials has been used to improve and extend the product.

Trial groups

Several OTEN teaching sections were to trial LOCO to support the particular needs of their learners.
  1. The property section trialled LOCO for creating learning resources and quizzes.
  2. The OTEN resource development section used LOCO to develop teacher support materials.
  3. The OTEN accounting section already has an extensive corpus of Moodle quizzes. They have students from correctional institutions who cannot access the internet, and they had a problem of how to create a printable MS Word equivalent and an HTML version of the existing Moodle quizzes. Also, there is a need for MS Word version so that students have a record of their completed work. The section trialled primarily the import of Moodle quizzes to LOCO and subsequent export to MS Word.
  4. The OTEN disability unit supports students with special needs across all OTEN courses. They will use the capabilities of LOCO in creating small content objects for tutorial support, and the conversion of these to Microsoft Word for accessibility purposes.
  5. Children’s services have a large enrolment with extensive use of online learning materials and the need to respond rapidly to changes in curriculum or legislation. They have not used Moodle extensively, and are mainly interested in using LOCO to easily create quizzes.

Training and setup for teaching sections

  • Head teachers were interviewed to determine what features of LOCO they were interested in trialling.
  • Two two-hour professional development sessions were held to introduce LOCO to the teaching sections.


The trials consisted of having the selected OTEN teaching sections use LOCO to create resources to be used in training.

Implementing the technology

Technical development

Many improvements, new features, and bug fixes have been incorporated into to the LOCO code base during the course of this trial. Descriptions of all commits to the codebase are available at the bitbucket site. There have been about 200 commits since we began to use this repository. We are currently working toward release 0.8.3.

Some of the features developed during the trial period include:
  • A validation scheme for user input.
  • A more powerful template system (Jinja2 templates). This change has the advantages that rendering templates are easier to create, and can be modified and tested while running the LOCO application, which gives a big improvement in speed of development.
  • A multi-page resource document type, allowing the user to create a hierarchy of pages with navigation. Navigation is pure html/css and works well with screen-readers Jaws, Window Eyes and NVDA.
  • A mechanism for copyright attributions for third party resources including images, audios, videos, or attached documents. Feedback from the National Copyright Unit and the reference group has helped to refine this feature.
  • Additional question types including true/false and short answer (known in Moodle as the 'Essay' type). We had resisted this initially as true/false question were seen of little value for either formative or summative assessment, and the short answer question cannot be automatically marked. However these types were repeatedly requested by teachers.
  • Addition of an INI file containing configuration details for LOCO, which should allow LOCO to be used in different environments.
  • The quiz now supports three presentation modes. 'Formative quiz' mode allows immediate feedback after answering a question; in 'Summative quiz' mode the learner must complete all questions before they can review their answers; and in 'Test' mode there is no feedback provided.
  • A new audio node type, including provision for an associated image, description and audio transcript.

GPL3 licensing and open source project setup

In addition to the source code development, we have taken these steps to release the codebase under a GPL3 licence:
  • We have established an account and code repository for LOCO on the bitbucket code hosting service.
  • We will use this site for bug and enhancement request tickets.
  • The latest MS Windows installer for LOCO is be available for download from this site.
  • The wiki on the bitbucket site contains a brief introduction to the product.
  • We are now using the Mercurial distributed version control system to manage the LOCO codebase.
  • A brief developer's guide is available for download and will be expanded over the coming months.
  • Four short screencasts demonstrating LOCO have been moved to YouTube and are available from the bitbucket project site wiki.
  • GPL3 license headers have been added to the LOCO source files.
  • The Pearson-owned Equella SOAP interface code is not currently GPL3 licensed. We have approached Pearson and have been given permission to distribute their code with the LOCO product. We have made the bitbucket site known to Pearson Education Inc.

Evaluating the technology

Those teaching sections that have used LOCO have rated it as very useful and simple to use. WSI/OTEN plans to broaden the use of LOCO beyond this trial, and will recommend LOCO as the preferred mechanism to create Moodle quizzes. OTEN has scheduled a further three training sessions for teachers in third term, and is developing a 'teacher-talk' video to promote LOCO with their teachers, which will be made publicly available on YouTube.

At the same time, apart from this trial, we have had strong interest from groups of teachers using LOCO in South West Sydney Institute, Sydney Institute, and others.

See the reports from OTEN sections trialling LOCO.

Strategies to enable use of the technology

Some strategies we have used to promote and enable use of the technology include:

  • Dedicated face-to-face training sessions and online training sessions. So far we have had three sessions in computer rooms with up to ten teachers, and perhaps 8-10 meetings with smaller groups of teachers from a single faculty or location. (Note: much of this training was with institutes other than WSI/OTEN and outside this particular project, but the strategies are similar).
  • Introducing LOCO to TAFE NSW teachers using the eHub weekly webinars, known as 'TAFE Connects'. These sessions are attended by 50 to 100 teachers and support staff each week. We have held one session in early 2012 and hope to schedule another webinar in mid July.
  • A project page on the eHub eCommunities intranet site, including news, downloads, introductory videos, bug reports etc. Most of this will now be moved over to the bitbucket site.
  • Teacher can call us or send an email to obtain support.

Gaining acceptance

First, some things we have learnt while trialling a new product with users:
  • To successfully roll out a new product such as LOCO, there needs to be an initial training component. Some users are very sensitive to initial hurdles in understanding a new product. Once the product gains a foothold and some positive reputation, we are finding that acceptance is easier.
  • Teachers have responded very positively to the two training sessions we have carried out at WSI/OTEN for this trial, and (separate from the trial) other sessions at other Sydney metropolitan institutes.
  • Many of the new features and affordances of the product have come from specific requests from teachers. This has been a very rewarding process when we see the same features requested, and later appreciated by multiple teachers when those features are implemented. Users are more willing to accept a product when you can be seen to be responding to their specific needs.
  • Often we find teachers' available time and effective attention span severely restricted by competing commitments. Often they will have one specific problem in mind which they are currently facing. Rather than attempt to assess a new product on all its merits, they simply ask if the product can solve this immediate issue. If the product can solve that issue then you have their undivided attention, and if it does solve the problem you have their heartfelt gratitude. If you cannot solve their immediate problem you will have to catch them later,when they are facing a problem that you can solve. This 'satisficing' strategy may in fact be optimally efficient in the short term, but could be of concern in the longer term, particularly when most technical decisions about how to best make use of the range of available tools are being devolved to head teacher level.

Barriers to implementing the technology

As LOCO is a desktop application, most of the technical barriers to adoption revolve around issues of deployment. We have found effective solutions to most issues encountered.

Deployment in a controlled environment

LOCO is a stand-alone desktop application, and while there are good reasons for this, one disadvantage compared with a web-based applications is the deployment to teacher's computers. In public education settings, teachers will not have administrator rights over their computers and so cannot install the product and updates themselves.

To address this we spoke to IT support at our Strathfield site, and they advised that the installation over the network could be automated, provided the LOCO setup executable could be configured to install unattended. This is indeed possible, so IT support proceeded to package LOCO for install using the Symantec Altiris configuration management product. Thereafter, installation of LOCO to teachers machines was very smooth. An IT help desk installation request was made providing a list of user's workstation identifiers, and the software was rolled out on the same day.

Configuration management

When the trial began, LOCO configuration details could only be altered by changing definitions in code and rebuilding the application. Now, in preparation for external use, most configuration details can be changed in an INI file which is deployed to the Windows ProgramData folder, which is in turn copied by LOCO to the user's local application data folder.
This is particularly important for deployment outside TAFE NSW, where the proxy address, the Equella repository address etc will of course be different. Note however that testing of this configuration has not been performed with settings different from those required by TAFE NSW staff.

Platform independence

Several people have asked whether LOCO is available for platforms other than MS Windows, such as the Apple Mac. While most of the LOCO code is cross-platform, creating other versions would be a significant undertaking, and the end product may not be as user-friendly.
The major cross-platform issue is the need for a cross-platform browser component other the Microsoft Internet Explorer. The advantage of IE is that one can expect a version of the browser to be already present on the windows machines typical of Australian educational environments, complete with a compatible flash player to support video and audio playback.
Employing another browser components such as Webkit, although arguably more capable than IE, requires that we deploy the browser component along with LOCO, and somehow attempt to ensure that the compatible Flash player is also available. In controlled IT environments typical of education, this is not an easy thing to guarantee.
Alternatives for deployment to multiple platforms include:
  • Use wxWebkit or wxWebconnect to deploy Webkit or Gecko respectively, while keeping the wxWindows GUI.
  • Switch to the QT GUI and use its inbuilt support for Webkit
  • Move to a pure 'Browser Interface / Local Server' (BILS) application, without any additional native GUI components.
A more detailed consideration of the advantages and disadvantages of these choices may be included in the developer's guide as it is further developed.

Interfacing with other systems

An issue for a product that inter-operates with other systems is that those other systems can change. LOCO interoperates with both Moodle and Equella, and both of these have seen changes which affected LOCO.

Moodle has undergone a major version change recently, from version 1 to version 2. During this change, the Moodle quiz module, which LOCO is most concerned with, has been rewritten. Some of the things that have affected LOCO because of the change are:
  • A new method of embedding files in the XML has meant that the code required to parse XML imported from Moodle has changed. On the plus side, this new embedding method seems to present the opportunity to embed file types other than images, and to import multiple files per question.
  • Some formatting of the questions has changed. Moodle 1.9 had all multiple-choice choices as plain text, whereas in version 2 this is normally html formatted text.
  • With the changes there came several bugs in Moodle that we needed to work around. For example the Cloze question type would fail with en exception when the missing text was configured as a drop-down list. When this type was imported from the XML, the import would also fail. Therefore we disallowed this type in the export, and needed to explain to users why LOCO would only export Cloze type as missing text.
  • With Moodle version 2.2 the quiz module seems to be stable, so this is the version we are targeting with the LOCO XML export.

Equella has also undergone changes that LOCO has needed to respond to:
  • Changes to TAFE NSW Metadata mean that LOCO must keep track. For example there has been a change for the competency unit code metadata entry from /xml/classification/taxonPath/taxon/ntis to /xml/classification/taxonPath/taxon/unitOfCompetency, following the move from NTIS to training.gov.au. Unfortunately these changes are made in Equella at one point in time, but there is no way to synchronise this with an updated LOCO version. Therefore until a new version of LOCO is rolled out, items uploaded to Equella will have an incorrect location for the unit of competency metadata. We do not expect many changes to the Equella metadata of this type.
  • Equella version 5 has added additional fields to the XML record without which the attachments are not visible to the Equella wizard during editing, but Equella has not updated their SOAP interface code to match. So the Equella interface code will have to be modified. On the other hand, resources uploaded via LOCO can be modified by LOCO, and this is the obvious method, so we may not need to do this in the short term.

Support capacity versus user base

We are keenly aware of our limited capacity to support teachers in adopting the product while it is being developed, and the potential negative consequences of undiscovered bugs affecting teachers' work. To mitigate this, we have been careful not to attempt too much too soon. So far the user groups have been kept small enough to contain the effects of any bugs found to affect the resources.
For example, at one point it was found that unescaped ampersands were corrupting the Moodle XML if a teacher used an ampersand in a multiple choice question. Our user base was small enough that we could handle those few cases individually in the interval before releasing the next version.

We will release a third version of LOCO (0.8.3) with TAFE NSW teachers by June 20th. With each version our confidence has grown in the stability of the product, so we feel more comfortable in extending the user base.

Future directions - technical

There are many additional features and refinements which we intend to develop for LOCO. Some have already been agreed and are under development. Further development may be contingent upon the evaluation of institute support by the eHub Institute Advisory Group, the securing of further funding sources, or unpaid volunteer development activity.

Short term development

We will include as many of the features below as can be completed before end July 2012.

  • Continue work on documentation including Wiki, help pages.
  • SCORM functionality for the quiz is not yet complete. This should be available by late June/early July.
  • Continuing accessibility improvements. For example the Jquery tools modal dialog component currently used in the quiz, is not sufficiently accessible; we will switch to jquery UI modal dialog which is better.
  • Continued improvements to usability,including more informative error messages, improvements to css layouts, streamlining node insertion/editing workflow.
  • Sakai QTI output is under development for Northern Sydney Institute. While Sakai QTI is not really QTI conforming, this effort will bring true QTI output much closer.
  • Add selectable layout options for subsections including expandable subsections (for single section), and accordion, columns or tabs (for multiple subsections).
  • Include the ability to have multiple LOCO documents open simultaneously
  • Cut and paste of LOCO items between documents (drag and drop within the same document is already available).
  • Improve options dialog to include proxy address etc.
  • Rationalise and generalise the export process as a configurable dialog or wizard, rather than adding purpose-built menu options.
  • Save-as functionality. This is useful to create multiple similar documents, and also to prevent a problem where a user may open a LOCO document from and email, modify it, but then not be able to save it because the document is read-only.
  • Further development of options dialog so the user can enter details such as LOCO server address, Proxy, Equella repository adress, and Equella metadata mapping.
  • Additional question types such as Moodle numerical and calculated types.
  • The changes to Moodle question XML with version 2.2 include a more generic method of embedding files. This should allow the inclusion of multiple files per question, will allow the inclusion of files for the cloze type (which previously was not possible) and would seem to allow the inclusion of assets other than images, such as audio or video, in the Moodle question bank exports.
  • Creation of a glossary item type, with export to Moodle glossary.
  • Automated unit testing and integration testing. Whilst some unit tests have been developed, the overall speed of development has meant that automated tests have not been maintained for the codebase. To become a respectable open source project, a full suite of tests must be developed.
  • We did some early work with one of our graphic designers, where we established basic styling for published content. More recent work has been done by the developer alone, with more attention to usability than to 'style' per se. To enable the development and configuration of multiple css themes, we should look at a scheme for css templating, including perhaps the development of css at the LOCO item type level. This would require more assistance from a graphic designer.

Longer Term development (beyond July 2012)

  • Automated re-sizing of images upon insertion using the Python Imaging Library.
  • QTI 1.2 - Truly conforming QTI 1.2 output
  • ePub - whilst we have not studied the standard closely as yet, we see no impediment to implementing ePub output, and OTEN resource development is quite interested in this possibility.
  • Investigate output for mobile including rendering for small screen sizes and navigation with touch/gestures.
  • Meta-nodes. Develop meta-node and meta-field types which will allow an advanced user to create new node types within LOCO itself, without requiring a development environment. Configuration would include field definition, rendering templates, icon definition, allowable child types etc.
  • Math. By generating MathML from a simple expression parser, and then using the MathJax library we should be able to embed the simple equations typical of VET in the HTML version and have it displayed in all browsers.
  • Currently MS Word output is achieved through embedding html into a word document with associated style sheet aligned to MS Word styles. This is relatively easy but limiting. More professional results could be obtained by outputting directly to WordML.
  • Additional field, item and document types for further educational uses, such as 'Student assesssment guide', 'RPL evidence gathering', 'ePortfolio', 'learning design' and so on.
  • Spelling check, basic thesaurus.

Potential for use in standards development

LOCO has great potential for developers in eLearning to:
  • Implement exports/imports to/from a additional standard formats, such as mobile/html5, SCORM, QTI, ePub, leap2a, MathML, wikitext.
  • Implement best-of-breed 'reference implementations' of html/javascript techniques for published content where standards are not prescriptive. Accessibility techniques are a good example of this.

Enabling development and use of LOCO outside TAFE NSW

  • A brief developers guide is available and will be expanded over June/July. This will be uploaded to the bitbucket site.
  • Currently configuration items such as the proxy address, Equella address and Equella SOAP endpoint etc are kept in an INI file. This needs to be tested in other environments, and mechanisms investigated whereby this file is overwritten by a locally developed INI file as part of the IT help desk installation. Some of the INI file parameters may be made configurable within an enhance LOCO options dialog.
  • If other developers wish to contribute, we would need to agree upon a development roadmap and ground-rules. Much of the LOCO functionality is accessible to easy development via templates including node templates, field templates, MS Word templates, help files, css and base html documents. Modification of any of these does not require a development environment, just LOCO itself.

Teacher feedback

Section 4.2 of this wiki contains feedback from teaching sections which have trialled LOCO.


See the new LOCO project site at http://www.bitbucket.org/ehub/loco.

For more information

For more information about the LOCO project, contact:

Paul Wray
Chief Learning Design Officer

51 Wentworth Avenue
Phone: +61 297158012
Email: mailto:paul.wray@det.nsw.edu.au
Website: http://www.ehub.tafensw.edu.au/home/

Strategy contact information

For general enquiries about the National VET E-learning Strategy, please contact:
Secretariat of the Flexible Learning Advisory Group
+61 (0)3 9954 2700
Email: flag_enquiries@natese.gov.au
Website: flexiblelearning.net.au

New Generation Technologies for Learning
incorporating E-standards for Training
Email: e-standards@flexiblelearning.net.au
Website: e-standards.flexiblelearning.net.au