Using Silverlight/Expression Blend for eLearning Development

Written by

Elearning development tools: only Adobe?
Over the last ten years or so, major elearning developers have preferred to use tools like Flash, Authorware and Director from Adobe (earlier Macromedia). The reason was simple– it was an easier way to achieve the multimedia integration needed to deliver engaging content over variety of media (standalone CD based and then transitioning to web based).

In recent years, with the inclusion of various features in Flash and the vast installation base of Flash Player amongst internet users, Flash has become be first choice for eLearning development and delivery over web. With the growing popularity of Flash for elearning, many elearning vendors developed their Rapid authoring tools which were aimed to publish Flash based elearning content without requiring major programming. One of the other major advantages of Flash is that is supports close designer-developer collaboration. It blurred the boundaries between the design and development of eLearning content.

Is there a competitor to Flash?
Is there an alternative to Flash? Perhaps not better than Flash, but at least its equal? Till the release of Silverlight 1.1, realistically there was no competitor to Flash. However, the release of Silverlight 2.0 last year changed that. Silverlight is positioning itself as a major competitor to Flash, especially from the RIA development perspective because of its functional aspects. However, we haven’t heard much about elearning development using Silverlight.

Given the architecture of Silverlight, it does seem more structured to produce feature rich RIAs rather than eLearning content. We considered what features are required to produce engaging eLearning content, areas where we see Silverlight is lacking. We’ve been playing with Silverlight to understand its power and limitations relevant to eLearning.

Using Silverlight/Expression Blend

Our experience started with the installation of Silverlight and associated tools. Before one can start developing Silverlight applications, you need to install a whole bunch of software and tools – the SilverLight runtime, Visual Studio, Silverlight tools, Blend and various service packs. An average eLearning developer will find the installation a daunting process. Post installation, configuration and getting it all to work seamlessly is another task altogether.

Expression Blend

Elearning content more focuses on presentation and experience rather than functionality. Hence for from that perspective, perhaps the MS Expression suite is more important than Silverlight itself and its underlying. NET framework features. The Expression Blend provides features to create and edit XAML files which in turn rendered by the Silverlight runtime. Expression also provides familiar drawing and editing tool similar to that of other graphics creation tool.
If Silverlight is used alone within the Visual Studio IDE, it’s cumbersome to create and edit graphics and layouts. Creating animation is also quite complicated as one has to code time slots and animation effects parameters manually into the XAML file. This implies the use of tool separate tools, always – one to create and edit graphical content and another to write the program logic which manipulates the graphics and environment.

Designer/ developer collaboration
In eLearning content development, the skill sets required by a graphic designer and a programmer are very different. The architecture of Silverlight and Blend is such that the process of graphics creation and associated programming overlaps closely. Using file sharing and versioning tools to get various people to work together on a single project will be quite complex using the Silverlight/Blend combination.
While creating any eLearning content, there is a mix of people with different skill sets working on same project. The tendency is to adopt a methodology where there is minimal dependency on each other while developing elearning content.

Audio / Video synching
Another aspect is the use of audio / video in the content. While there is quite a buzz on the high quality audio / video presented through Silverlight, it lacks an essential aspect i.e. synching audio with the animating graphical content on stage. Although, it is supported in Silverlight Windows Application (WPF application which is standalone), there is no direct method to sync audio with onscreen content for web-application. As of now, majority of eLearning content is delivered through the web and all audio driven courses require audio to be in sync with the onscreen content (graphics / text animation).

Shell / Content player
The elearning course is generally presented with the help of some kind of shell or content player which lets the learner navigate learning modules using simple user interfaces. Creating such a content player may be tough job using Silverlight (relative to Flash).

Standard compliance and course delivery
ELearning content is typically hosted and delivered through various Learning Management Systems. To be able to host the courses hosted on the LMS, the elearning content should comply with standards guidelines published by SCORM, AICC or custom compliance conventions which the LMS in question supports.
While, implementation of these guidelines in the Silverlight architecture is possible, it not going to be as easy as ensuring compliance using Flash and JavaScript.

Reaching the Intended Audience
ELearning courses are meant for specific groups of learners – the audience. These groups could consist of children, adults, individuals living in specific territory, or those who understand a specific language, employees of a certain company. Course developers would like to ensure that the courses they develop reach their intended audiences.

As compared to Flash, which has about 85% install base, Silverlight runtime penetration is about 25%+ on PCs as depicted by Scott Guthrie in this article. Apart from installation of development environment, there are some goof ups in runtime installations too which need to be addressed while targeting the intended version. The article here depicts the problems that would be faced and the associated tweaks if you are targeting for SL3 beta. The runtime installable size too is quite bigger than its Flash counterpart. This article has the comparison figures.

The Silverlight runtime is not yet available on Linux and the Mac version has some issues. The open source implementation – Moonlight for Linux – is still in development. A preview version of Moonlight was released some time ago.

Silverlight is not yet available on mobile and handheld devices. This means learning content can’t yet be delivered to mobile devices. This is a snafu as more and more learning content will be accessed on mobile devices.

So, should you be developing elearning using Silverlight / Blend?

As we’ve discussed, eLearning solutions emphasize user experience more than features and functionality. We rarely need the superb data binding features provided by Silverlight or rich feature set of the Visual Studio IDE.

As eLearning developers, these are things we need before we consider using Silverlight:
The development environment should be simple, easy to install and configure
It should support efficient team collaboration – in light of the graphic designer programmer divide.
Implementation / development time should be reduced as the low shelf-life elearning content may get outdated given our experience with the time it takes to develop applications using Silverlight.
As the majority of eLearning content is audio driven, there should be efficient way to sync audio with onscreen content
The architecture must support the ability to develop scalable, feature rich and efficient content players (shells) which can be re-used to deliver content modules

No product is perfect, we’ve seen that Adobe Flash has its own drawbacks; ones that have persisted from its earliest versions. However, due to its dominant nature in past few years, a world-wide developer community was able to overcome those problems with tweaks and techniques. The majority of eLearning developers use Adobe products and have a HTML-JavaScript development background; for these individuals there is a considerably steeper learning curve to move to the Silverlight development environment.

Silverlight has a long way to go to beat Adobe Flash in eLearning content development. While the new Silverlight marks a major improvement and gives companies and developers new reasons to give it a try, it still lacks the basics required for eLearning content development. Silverlight’s universal acceptance and adoption rate is not satisfactory yet. There is mounting evidence that major organizations like the NY Times, and the MLB has dropped Silverlight in favor of Adobe products.

Microsoft has a very deep base for building good functional solutions; with Silverlight, they are slowly moving to building experience-based solutions. We’ll be watching closely to see if Silverlight and its accompanying toolset will give us what we need to develop eLearning content.

Write a Comment

Leave a Reply

Your email address will not be published. Required fields are marked *


    Enter Your Email

    Published on

    Don't forget to share this post!

    Achievements of Upside Learning Solutions