The E-Learning Curve Blog has moved!

You will be automatically redirected to the new address in 10 seconds. If that does not occur for some reason, visit
http://michaelhanley.ie/elearningcurve/
and update your bookmarks.

Friday, October 9, 2009

Open Source E-Learning Development 3: Open Office.org

Having discussed two key components of this Open Environment for E-learning; an XML-based authoring and content-generation tool, and an image-manipulation application, today I will discuss an XML-based productivity suite - a word processor, spreadsheet application, and presentation tool called OpenOffice.org.

In my view, tools like DocBook XML and XMLmind XML Editor are excellent primary content creation and generation applications; they provide imagecourseware developers with a familiar UI in which to create their content, while retaining the flexibility and interoperability of an XML-based structure.

One of the main benefits of using XML-based tools (as we will see in a future post) is that it facilitates a "create once, reuse many times" approach to content objects. By creating one appropriately-tagged XML-based master document, content can be refactored as a printable manual, an HTML-based guide, a PowerPoint-type presentation, and integrated into an e-learning content delivery platform, all based on one set of source XML-based information.

Now read on...

It is a truism that instructional designers, courseware developers and learning professionals (particularly in organizations) will source knowledge and learning materials from subject matter experts (SMEs) if possible. This research can be undertaken by using a range of strategies, including searching corporate knowledge-bases, interviewing SMEs, task-based collaboration, and so on.

While SMEs have the tacit and explicit knowledge, skills and domain expertise to inform your instructional design and content requirements, typically they have neither the time nor the inclination to learn a quite complex application like DocBook XML or XXE. However, we can say that the substantial majority of knowledge workers are competent in office productivity programs including word processors, spreadsheet, and presentation applications, such as those included in the Microsoft Office suite.

Sun’s OpenOffice.org is a collection of applications that provide the features expected from a modern office suite. These components are designed to reflect the functionality available in Microsoft Office.

According to their mission statement, the OpenOffice.org project aims

…to create, as a community, the leading international office suite that will run on all major platforms and provide access to all functionality and data through open-component based APIs and an XML-based file format.

OpenOffice.org UI

Figure 1. PPT format presentation authored in OpenOffice.org

The primary benefit of OpenOffice.org for this open environment is the ability to author XML-based content to develop presentations that may be used in instructor-led classroom environments, as well as provide media developers with a PowerPoint-formatted file to facilitate insertion into the media authoring tool Microsoft Producer 2.

In my view, the real power of OpenOffice.org is that it enables courseware developers to take (for example) PowerPoint presentations developed by SMEs, modify this content, and output it in an XML-based format, allowing integration with the other tools we are discussing in this series.

In a sense, it is a "bridge": despite the much-vaunted interoperability of Microsoft XML Core Services (MSXML) in Office 2007, I would assert that there are still many issues associated with integrating MS Office-produced content into an open environment, and by extension problems using this suite if you need to integrate your content into another environment or platform.

__________

References:

OpenOffice.org version 3.x. [Internet] Available from: http://www.openoffice.org [Accessed 24 August 2009]

--

Thursday, October 8, 2009

Open Source E-learning Development 2: Image Manipulation

First today, a preamble, in which I shall use the word “beauty.”

I’ve had some queries about my forthcoming article, wherein I will revisit themes I addressed in my 2008 post Recession and the challenge to e-learning. I’m still researching this topic: there are many sources to reference and data to be interpreted – and of course, the socio-economic landscape is still changing apace.

I am also re-reading Joseph Conrad’s Typhoon, a short story about the travails of Captain McWhirr and the steamer Nan-Shan, as I attempt to find a suitable context for the piece. You don’t know Conrad’s work, you say? of course you do; Francis Ford Coppola’s Vietnam epic Apocalypse Now was based on Conrad’s novel Heart of Darkness.

I’m not going to discuss this further here, except to express how extraordinary I think it is that a Polish man who did not speak English fluently until he was in his twenties became one of the 20th Century’s master prose stylists and novelist in English - which was essentially his second language - while most of us native speakers incompetently attempt to turn words into something meaningful, with utility, if not beauty.

Now read on…

The second open environment authoring tool highlighted in this series is an image editing application.image

The GNU Image Manipulation Program, or GIMP, is an open source graphics editor that is available for Linux, Windows, and OS X. It is a freely-distributed raster graphics editor used to process digital graphics and photographs. GIMP is primarily used for photo manipulation, including sizing, editing, and cropping images, combining multiple images, and converting between different image formats. GIMP can also be used to create basic animated GIFs.

According to GIMP.org,

[GIMP] has many capabilities. It can be used as a simple paint program, an expert quality photo retouching program, an online batch processing system, a mass production image renderer, an image format converter, etc.

GIMP is expandable and extensible. It is designed to be augmented with plug-ins and extensions to do just about anything. The advanced scripting interface allows everything from the simplest task to the most complex image manipulation procedures to be easily scripted.

Typical uses include:

  • creating graphics and logos
  • resizing and cropping photos
  • color management
  • combining multiple images
  • removing unwanted image features
  • converting between different image formats

GIMP can also be used to create simple animated GIF images. It is often used as a “software replacement” (Paul, 2008) for Adobe Photoshop.

The application has read/write support for popular image formats such as BMP, JPEG, PNG, GIF and TIFF, as well as the proprietary file formats of several other applications such as Autodesk *.flic animations, Paintshop Pro images and Adobe Photoshop Documents. Other formats with read/write support include PostScript documents. GIMP can also read and write path information from SVG files. GIMP can also read/write ICO Windows icon files. Its native format is XCF.

Figure 1. A screenshot of the GIMP UI

GIMP can also import Adobe PDF documents and the raw image formats used by many digital cameras. However, it can’t save to these formats; rather files must be exported to one of the image file types it does support.

__________

References:

GNU Image Manipulation Program Home Page: http://www.gimp.org/

Paul, R. (2008). GIMP 2.6 released, one step closer to taking on Photoshop. Ars Technica. [Internet] Available from: http://arstechnica.com/open-source/news/2008/10/gimp-2-6-released-one-step-closer-to-taking-on-photoshop.ars. Accessed 2nd July 2009.

--

Wednesday, October 7, 2009

Open Environment E-learning: DocBook and XXE

I received an unexpected but nonetheless very welcome comment on yesterday's blog post from Brent Schlenker. In his remarks, Brent reinforced my own view about the viability of open source-based e-learning development; he said that

I truly do believe that there are enough OpenSource tools out there that we can be creating completely opensource learning solutions/environments. Once people get past their initial fears and the stigma, the Open Source learning development community will grow exponentially.

...thanks for keeping the Open Source movement alive in eLearning.

Thanks Brent!

Now, on with the show.

As discussed in a previous post, we can say that there are certain unresolved philosophical matters surrounding the notion of open environments; I will return to these presently. However, the gratis/libre debate should not preclude you from taking advantage of the range of 'open' and 'free' tools to develop an effective e-learning solution.

As a reminder, here are the categories of tools I recommend to implement this open development environment:

  • Content Creation Tools
  • Media Creation and Integration: OSS Tools
  • Media Creation and Integration: Proprietary Tools
  • Content Delivery Platform
  • Optional Proprietary Tools

Click here for a full list of the applications and utilities.

While the tools themselves are a disparate group, their common characteristic is that they are XML-based. This, in theory at least, means that either the applications or their outputs are interoperable, and this creates the foundation for the "openness" that we seek.

Now read on...

Over the next few days, I will describe in detail the 'toolkit' used in this e-learning content development environment, before discussing pedagogical approaches and implementation processes. As the focus here is on developing e-learning in a specific environment, I am making the assumption that the learning content has already been developed, as learning content development and instructional design per se is not the topic being investigated. Click here to find out more about instructional design for e-learning.

The Powerhouse: DocBook and XXE

DocBook is a semantic markup language for technical documentation. While it was originally created for the purpose of writing technical documents for computer hardware and software, its inherent flexibility led to it being used authoring a broad range of documentation, including e-learning. Unlike proprietary word processors, DocBook documents do not describe what their contents "look like," but rather the meaning of those contents. For example, rather than explaining how an e-learning lesson page might be visually formatted, DocBook simply says that it is a page. An external processing tool or application is required to determine where the lesson page should go, and what it should look like – and to decide whether or not it should be included in the final output at all.

Because DocBook is XML-based, content can be authored and edited with any text editor.

XMLmind XML Editor (XXE) allows content creators to edit large, complex, modular, XML documents. In one sense, it is the friendly face of my open authoring environment. XXE is a ‘nearly’ WYSIWYG (What You See Is What You Get) editor that uses CSS to control the layout and style of DocBook XML (or XHTML) content. It successfully hides the complexities of XML markup from the author, so that the focus can be on the words, rather than the code.

In XXE, the document author does not see the DocBook XML tags; rather, XXE interprets the tags, and the application UI displays the content in the familiar look, feel, and style of a word processor interface (see Figure 1).

Figure 1 Screenshot of XMLmind XML Editor

Using XXE, the content author creates and edits content in the structured XML document by adding elements, setting attributes, selecting, cutting, pasting, and so on, and the editor automatically applies the appropriate styles.

The style is an interpretation of the DocBook DTD to simplify identification of the formatting elements without the need to understand all the XML tags.

Note, however that these styles are not linked to how the content is rendered. The final look and feel of the document is controlled by CSS style sheets.

XXE supports the following features:

  • Converts to XSLT-FO format then to PDF format
  • Converts to HTML format
  • Produces metadata files to support SCORM
  • Checks spelling
  • Checks that a document conforms to the DTD
  • Checks that a document conforms to relevant documentation conventions
  • Documents can be rendered as a number of separate files
  • Controls document look and feel

Transformations (outputting content to a commonly-used delivery format) are applied to the XXE-authored XML using Formatting Objects Processor. Formatting Objects Processor (FOP) is driven by XSL Formatting Objects (XSL-FO). A Java application reads a formatting object (FO) tree and renders the resulting pages to a specified output.

Currently supported output formats include:

  • Portable Document Format (PDF)
  • Printer Command Language (PCL)
  • PostScript (PS)
  • Scalable Vector Graphics (SVG)
  • eXtensible Markup Language XML (area tree representation)
  • Print
  • Abstract Window Toolkit (AWT)
  • MapInfo Interchange Format (MIF)
  • Text File (TXT)
The primary output target is PDF (see Figure 2).

Figure 2 Screenshot of PDF file generated from XXE via XSL-FO

Other outputs include HTML pages (see Figure 3) and help files.

Figure 3 Screenshot of HTML file generated from XXE via XSL-FO

These two outputs were generated from a command-line FO, because I’m a bit of a purist about this stuff, though I’m not a coder, so it must be straight-forward and usable!

Depending upon the level of expertise in your organization, you may decide to use a GUI shell to enable content authors to generate their outputs.

Figure 4 Screenshot of XSL-FO command line interface in Windows

More…

__________

Resources:

DocBook.org: http://www.docbook.org/

XMLMind XML Editor: http://www.xmlmind.com/xmleditor/

HyperWrite Ltd. (2006) Review of XMLmind XML Editor v3.0. [Internet] Available from: http://www.hyperwrite.com/Articles/showarticle.aspx?id=63 Retrieved 24th September 2009

--

Tuesday, October 6, 2009

A Toolkit to Develop E-Learning in an Open (XML) Environment

Returning from content development theory, the gratis/libre debate, and the pros and cons of each approach, this post will focus on the range Opensource.svg of tools that you need to develop e-learning content in a (relatively) open environment.

Now read on…

The key to developing e-learning courseware in an open environment is to use a production model that liberates instructional design and content authoring from your final media outputs. In my view, this means taking an XML-based approach to your e-learning development environment. I would suggest that you need tools and components like the following tools to create an effective authoring and delivering system:

Content Creation Tools

  • DocBook
  • XMLmind XML Editor (XXE)
  • GNU Image Manipulation Program (GIMP)
  • XSLT transformations and XS-FOP formatting object processors


Media Creation and Integration: OSS Tools

  • Audacity
  • CineFX
  • Kompozer
  • OpenOffice.org
  • GNU Image Manipulation Program (GIMP)

Media Creation and Integration: Free-to-use Proprietary Tools
  • Microsoft Producer 2
  • Windows Media Developer’s Kit
  • Garageband
  • iMovie
  • Jing

Content Delivery Platform
  • Apache / MySQL / PHP
  • Moodle
  • Joomla
  • Drupal

Optional Proprietary Tools
  • Adobe Flash
  • Camtasia
  • Roxio Easy Media Creator or Toast

I'll be discussing developing a production model using this toolkit, starting tomorrow.
--