Enabling web conferencing in Ubuntu Linux

Ubuntu logoUbuntu Linux and other distributions like Edubuntu, Kubuntu, Lubuntu, and Xubuntu have come in leaps and bounds in recent years and are becoming more fully featured and easier to use. I think they are now getting to the stage where they are potential replacements for Microsoft’s Windows and Apple’s OS X for elearning. Well, almost…

Web conferencing usually requires Flash

Elearning increasingly includes live multi-way video web conferencing, which on Ubuntu Linux can be problematic. Most web conferencing platforms and systems require either Adobe Flash Player or Java Runtime Environment (JRE) to be installed. If you use the standard Firefox web browser, you need to install Flash Player as an extra, since it isn’t free and open source software (FOSS) and cannot be included in FOSS distributions. Luckily, it’s easy enough to do via Ubuntu’s software centre. It’s a similar process to installing apps on a smartphone or tablet but faster and easier.

More uses of Flash in Ubuntu Linux

There are other areas where Flash Player can be useful. For example, Ubuntu Linux doesn’t have support for the H.264 video CODEC. H.264 is used all over the web, including Youtube*, Vimeo, and Google Hangouts. Adobe Flash Player is an easy workaround to allow you to access and view those services. Also, the SWF Activity Module, Online Audio Recording, Soundcloud, WizIQ, LiveStreaming, and many more plugins for Moodle, as well as Moodle’s default media player, all use Flash.

* Youtube will play video without Flash or H.264 as HTML5 but only low-resolution versions intended for some mobile phones and not all videos are available in this format.

How to install Flash Player in Chrome, Chromium, and Opera

However, installing Adobe Flash Player doesn’t make it available to all web browsers on your operating system (Even on Windows, you need to install one Flash player for Internet Explorer and then one for other browsers). If you want to install Flash Player for other web browsers in Ubuntu, e.g. Google Chrome, Google Chromium (the FOSS version of Google Chrome) or in Opera, it’s a bit more complicated. This means using the Terminal (Ubuntu’s command line; press “Ctrl + Alt + t” to open it) and carefully typing in the following commands. After the first command, Ubuntu will prompt you for your admin password, which is usually the same password you use to log in with (if you’re the computer owner):

sudo apt-get install pepperflashplugin-nonfree
sudo apt-get update
sudo apt-get autoremove

How to install Java Runtime Environment

Some video web conferencing services and systems require Java Runtime Environment (JRE) to run on your computer. Most notably, Blackboard Collaborate, formerly known as Elluminate Live, requires JRE but even with it and the Iced-Tea browser plugin installed, it can have issues with connecting the audio. This is a frustrating issue that I haven’t found a workaround for yet. Please let me know if you know of one!

You can install JRE and the browser plugin from the Ubuntu Software centre. Look for the OpenJDK Java 7 Runtime and the Icedtea Java Browser plugin and install them both. If you’re feeling more confident with using the Ubuntu Terminal (Ctrl + Alt + t), it’s quicker and easier to install them like this and it will make sure that your computer uses the latest installed version of JRE by default:

sudo apt-get install openjdk-7-jre
sudo apt-get install icedtea-plugin
sudo update-alternatives --config java
sudo apt-get update

More uses of Java Runtime Environment

There are a number of web resources and projects for elearning that require JRE. These include Tufts University’s Virtual Understanding Environment (VUE), a feature rich concept mapping tool, as well as the NanoGong audio recording, Scratch learning games, Java Molecular Editor, Easy Java Simulations (and Open Source Physics), Jmol 3D molecular chemical structure, GroupDocs Viewer plugins for Moodle all require JRE.

Finally

So it looks like Ubuntu Linux is almost there… but not quite yet. Support for multi-way video web conferencing is there and is possible but not complete, especially in the case of Blackboard Collaborate. It’s also sometimes necessary to install additional software in ways that most “normal” users may find confusing and/or discouraging to do themselves on their own computers. Additionally, many learners and teachers may not know why their web conferencing platform doesn’t work or know that it can be fixed by installing the correct software. Let’s hope things improve further in the coming months or years.

Free and low-cost Moodle hosting options

MoodleEvery year, web hosting and installing web apps becomes less technically demanding, quicker, and simpler and it’s getting to the point nowadays where it’s a consumer level endeavour. Here’s a few of the easiest low-cost options for hosting Moodle that I’ve seen so far.

Disclaimer: I have no affiliation with any of the hosting providers mentioned in this article, neither am I endorsing any of their services. I’m citing them, without prejudice, as examples of types of Moodle hosting and they are by no means the best or only options that are available.

Why not use a regular web hosting service?

By “regular” I mean website hosting providers like GoDaddy, BlueHost, HostGator, etc. that are aimed at individuals and small businesses who only want to set up and blog or website to offer information, contact details, product and service catalogues, shopping carts, news, small downloads, etc.

Moodle 2.x is a large, powerful, and resource hungry piece of software. It’s a content management system, contacts and messaging management system, course management system, and can deploy multiple instances of discussion forums, wikis, blogs, presentations, documentation, multimedia resources, etc.. In other words, it requires a web hosting service that is more powerful than what most websites do. Using a regular web hosting service for Moodle is like using a car when you need a truck. The price gap between a website that runs WordPress, Joomla, or Drupal (a shared hosting service from about $5 per month) to a website that can handle Moodle (dedicated servers from about $80 per month) is a large jump and prohibitive to people who just want to try it out or run small, experimental, and/or exploratory projects (e.g. for research).

Are there cheaper ways to host or use Moodle?

Yes, there are. Here’s a few examples:

MoodleCloud[update 2015-07-05] MoodleCloud

Moodle Pty., the people who develop Moodle are now offering free Moodle accounts on their cloud hosting platform. It works in the same way as MDL2.com (see below) but has the following restrictions:

  • 50 users maximum
  • 200Mb disk space
  • Core themes and plugins only
  • Requires a mobile phone number to verify your identity

However, it does also include use of BigBlueButton, the free and open source video web conferencing and virtual classroom system for up to 6 users at a time.

Linkhttps://moodle.com/cloud/

FreeMoodle.org FreeMoodle.org

If you’re a complete beginner and just want to try out Moodle as a teacher and course content developer, and/or curriculum developer, you can get started for free with FreeMoodle.org. This service has been running consistently and, as far as I know, under the same terms of service for as long as I’ve been using Moodle (Since 2006).

Pricing: Free for your own course(s) but very limited admin controls or privileges and on your courses only.

Link: http://www.freemoodle.org/

If you don’t need an online Moodle and only want it for personal use, you can install it on your personal computer, on Windows, OS X, or Linux. Please see this article: Update: Do you want to get started with Moodle?

In the past few months, I’ve come across a couple of new Moodle hosting service providers that I think offer good value for money. They are:

MDLSpot.com

This is a shared hosting service which runs one installation of the Moodle software but creates multiple instances of Moodle so that everyone can set up their very own Moodle and have admin access and control over the entire instance (WordPress.com operates in a similar way). AFAIK, you can’t install any 3rd party plugins or extensions yourself, so you’re limited to what standard Moodle can do “out of the box” plus a few “pre-approved” plugins and extensions.

Pricing: They don’t publish their pricing but they informed me that they charge something similar to Amazon Web Services usage rates (you pay per hour for what resources you use) which starts at around $200 USD per year. I suggest contacting them to confirm exactly how much your Moodle hosting would cost and what plugins and extensions they make available.

Link: http://www.mdlspot.com/

MDL2.comMDL2.com

This is an advertising supported service, i.e. free if you allow advertising in your courses (which may or may not be appropriate). Again, you get your own “out of the box” Moodle and have admin access to it.

Pricing: Advertising supported

Link: http://www.mdl2.com/

Here’s a list of free and ad supported Moodle hosting services.

Bitnami.comBitnami.com

Bitnami.com are more than just a Moodle hosting service. They’re a full cloud hosting service provider, mostly aimed at web developers, that have also developed a number of consumer level, user friendly website installation systems and services. If you create a Moodle instance with them, you get a virtual private server (VPS) which allows you sysadmin level access. This gives you almost complete freedom to install and add whatever features to Moodle and also install other software alongside it, meaning you can do some very advanced things with Bitnami that most low-cost web hosting services don’t allow.

BTW, Moodle is designed to be run on a “LAMP stack” (Linux, Apache, MySQL, and PHP) so Windows hosting options are not advisable.

Pricing: https://bitnami.com/cloud/pricing (See the FAQs at the bottom of the page; They offer very favourable terms and conditions). A “micro instance” with Moodle installed starts at around $200 USD per year.

AWS pricing: http://aws.amazon.com/pricing/ If you’ve ever bought anything from Amazon, e.g. books, movies, electronics, or whatever, you already have an Amazon account. All you have to do is activate an Amazon Web Services account.

Link: https://bitnami.com/stack/moodle

Finally

These are just a few examples of the options available and there are many more. If you know of any others or are a service provider that offers low-cost hosting services capable of supporting Moodle (2.5 and later), please let me know.

Discussion

You can follow and participate in the Moodle.org community’s response to this article here.

Free and open source concept map app for Moodle

Concept MapI’m pleased to announce that the  Concept Map app is now available on my Github.com repository as a free and open source project. It works with the SWF Activity Module for Moodle 1.9 and 2.5+ and a compiled version of the app is included pre-installed with the latest version of the SWF Activity Module for Moodle 2.5+.

What does the Concept Map app do?

Learners are presented with a blank page and drawing and writing tools with a limited palate of colours and shapes. Limiting the colour and shape options is intended to reduce the time and effort that learners spend on those aspects and hopefully focus their attention more on their learning objectives. Learners can draw and write and move the drawn lines, shapes, and text. The app works with all the usual input tools such as mouse, keyboard, and touch screen.

When learners are ready, they can click on the camera icon button to send a copy of the image to the server which gets saved as a PNG image file. Subsequent camera icon button clicks will overwrite the existing image for that particular activity for that particular learner. However, if you’d like to keep a history of images, the service script that saves the images can be modified to do that. If it’s deployed in Moodle, a corresponding grade book entry is created for the learner and the image is embedded in the grade book feedback column. The saved concept map can then be viewed and graded by teachers. In addition, learners with the appropriate permissions can view their concept maps in the grade book or in the File System repository and embed them in other Moodle activities.

Free and open source

As a free and open source project, it’s free to download, use, edit, and redistribute under the terms of the GPLv3 licence. This means that you can develop the project further to perform more or different functions according to your learners’ particular needs and learning ideas. The project is configured to work with FlashDevelop, a free and open source Actionscript and Flash integrated development environment (IDE) but can also be edited and compiled with other Flash and Actionscript IDEs.

Useful links

Greenwood College SchoolAcknowledgement

The interactive whiteboard SWF idea was conceived at Greenwood College School as a means to further personalize the learning experience for its students. Greenwood is excited to be partnering with Matt Bury on this project because this module enhancement will help educators using Moodle to track student progress using a flexible, online input method.

Greenwood College School

I’m moving my open source projects from Google to GitHub

github logoThis is a quick announcement concerning my open source project hosting. On the 20th May 2013, Google Code posted the following announcement;

Starting today, existing projects that do not have any downloads and all new projects will not have the ability to create downloads. Existing projects with downloads will see no visible changes until January 14, 2014 and will no longer have the ability to create new downloads starting on January 15, 2014.  All existing downloads in these projects will continue to be accessible for the foreseeable future.” — Source: http://google-opensource.blogspot.ca/2013/05/a-change-to-google-code-download-service.html

In other words, as of 15th January 2014, I will not longer be able to provide installer packages for my open source projects on Google Code. Because of this and the greater flexibility, functionality, IDE integration, and social features of Github, I am moving my projects there. My Github repositories are available here: https://github.com/matbury

Safe social networking alternatives

Safe social networking alternativesIn a previous post that I co-authored with Jeff Dionne, A thorny issue: Protecting teachers’ and learners’ right to privacy, we highlighted some of the ethical and legal risks of using popular commercial social networking and micro blogging sites such as Facebook, Google+ and Twitter for educational purposes. Although modern LMS’ built on Social Constructivist approaches provide a number of tools for collaboration and social interaction, they don’t quite offer the persistence and immediacy of the services offered by Facebook, Google, Twitter, et al. So as a follow up to that article, here’s some secure, free and open source alternatives.

What are the criteria that make a social networking platform lower-risk?

For details about what some of the risks are, please see A thorny issue: Protecting teachers’ and learners’ right to privacy. Here’s a few points that make a social networking platform more ethical and legal for your learners to use:

  • Own and administer your teachers’ and learners’ personal information and user generated content.
  • Audit and monitor all channels of communication, including private messages.
  • Manage and define individual teachers’ and learners’ user access privileges.
  • Take down any inappropriate posts, comments or content as soon as they’re reported or detected.
  • Prevent inappropriate or distracting messages from being shown to teachers and learners, i.e. advertising, apps, games, etc.
  • In the case of younger learners, contact parents and/or guardians quickly and easily, e.g. via email, as soon as issues arise.

How can we achieve this?

There are free and open source projects that enable schools, academies, colleges, universities and companies to create and maintain their own social networking services. It’s early days but the outlook is promising.

StatusNetStatusNet

StatusNet is free open source micro blogging software that offers functionality similar to Twitter, Facebook and Google+. However, StatusNet seeks to provide the potential for open, inter-service and distributed communications between micro blogging communities by adopting the OStatus micro blogging communications standard. Enterprises and individuals can install and control their own services and data.

StatusNet is ready for production use (Version 1.0.1) and I’ve installed an instance on my server: http://statusnet.matbury.com

[update] Having explored StatusNet further, I think it’s still not ready for production use. For example, there’s no moderator or admin interface for managing user accounts so you have to go into the database to find the list of users’ IDs in order to discover their profile pages.

Diaspora*Diaspora*

Diaspora* is currently in Alpha development so it isn’t yet ready for production use. It’s a free personal web server that implements a distributed social networking and micro blogging service. Installations of the software can optionally form nodes (termed “pods”) which make up the distributed Diaspora social network. Diaspora is intended to address privacy concerns related to centralized social networks, such as Facebook, Twitter and Google+, by allowing users set up their own server (or “pod”) to host content; pods can then interact to share status updates, photographs, and other social data. It allows its users to host their data with a traditional web host, a cloud-based host, an ISP, or a friend. (Source: Wikipedia.org)

There are currently a number of experimental Diaspora* pods up and running that users can join. If you want to try it out, here’s a list of available pods.

The development team are currently working on a feature whereby teachers and learners can export their own data, making it easier for schools, academies, colleges, universities and companies to comply with existing freedom of information laws.

BuddyPressBuddyPress

BuddyPress is a plugin for WordPress which transforms it into a social networking platform. It’s smaller in scope compared to StatusNet and Diaspora* but it’s also ready for use on production servers. It isn’t possible to connect instances of BuddyPress into a network so users have to rely on RSS feeds and pingbacks to keep track of other BuddyPress sites. It’s suitable if you only want your social networks to run from a single site and collaboration between different schools, academies, colleges, universities, agencies and companies will be difficult.

I’m currently experimenting with an installation of WordPress + BuddyPress here. Please feel free to enroll and join in!

elgg.elgg.

Elgg is an award-winning open source social networking engine that provides a robust framework on which to build all kinds of social environments, from a campus wide social network for your university, school or college or an internal collaborative platform for your organization through to a brand-building communications tool for your company and its clients. (Source: http://elgg.org/about.php)

I’ve installed elgg. on my server and I’m exploring its functions and possible uses for educational purposes.

What’s SMIL and why should we use it?

What's SMIL and why should we use it?OK, here comes a geeky article about elearning and data management best practices. Although the issues are very technical in nature, they require the support of well-informed management so that the most appropriate decisions can be made. Understanding these issues from the outset can save you or your organisation a lot of time, effort and going up blind alleys in the not-too-distant future.

What are the issues? If it isn’t broken, why fix it?

Currently, most elearning developers use so called “rapid elearning development tools”, e.g. Microsoft PowerPoint + Adobe Presenter, Adobe Captivate, Techsmith Camtasia, Articulate and Raptivity,  to create and publish content. They present quick and easy solutions to elearning novices, enabling them to create and deploy multimedia rich, highly interactive learning content on the web without learning a great deal of technical skills or knowledge. However, the vast majority of these tools publish content that is “single purpose” or “single use” and elearning content developers may end up spending a lot of time and effort on creating very impressive content that has little effect on learning outcomes and, in the long run, may make elearning courses difficult and time consuming to manage, maintain and develop. Here are some of the drawbacks:

Proprietary dependencies (lock-in)

Rapid elearning development tools create source files that only their software can read and edit. Often, they’re not forwardly compatible meaning that if you want to edit files from a newer version of the software, you’ll have to buy an upgrade. If you want to edit the source files in other tools, it’s usually a breach of copyright and the End User Licence Agreement (EULA) to do so. Additionally, some rapid elearning development tools publish content in out-dated versions of Flash leading to some unexpected problems for developers. Vendors rely on this to keep users dependent on their software and to make it as difficult as possible to migrate learning content development away from their tools.

Inflexible learning content

Published presentations from rapid elearning development tools generally take the form of single or multiple Flash (.swf) files that present the learning content in predetermined sequences. All the text, images, audio, video and animations are locked away inside the Flash file(s). If you want to change the order of a sequence, you have to go back to the source files and re-author and re-publish the new sequence. There’s no access to the published learning content from other software than can re-use and re-purpose it and Learning Management Systems (LMS) cannot allow teachers and learners to access media from the files and use it in presentations of their own or in discussion forums, wikis, glossaries, etc. Now that group learning (AKA social learning or Social Constructivism) is becoming increasingly popular among learners and teachers, this is a severe drawback.

Narrow range of uses

Pedagogically, presentations, slide shows, simulations, etc. have a narrow range of uses. Regular, old-fashioned HTML web pages often have comparable learning outcomes to rapid elearning tool produced learning interactions with video and multimedia. Furthermore, with all the multimedia, audio, video and animation options available at your fingertips, it’s easy to get carried away and to include too much media and too many different types media simultaneously resulting in cognitive overload and a subsequent drop in learning efficacy.

Inappropriate use of quizzes

Most rapid elearning development tools recommend and encourage the use of quizzes before, during and after presentations. Indeed, they pride themselves on providing the best possible editors, training and support for learning content developers to add quizzes to their presentations. However, according to the US Department of Education’s Evaluation of Evidence-Based Practices in Online Learning,

Elements such as video or online quizzes do not appear to influence the amount that students learn in online classes. The research does not support the use of some frequently recommended online learning practices. Inclusion of more media in an online application does not appear to enhance learning. The practice of providing online quizzes does not seem to be more effective than other tactics such as assigning homework.

Source: ED.gov (PDF, page 18)

Can your Learning Management System (LMS) do it?

Most modern LMS’ have well-developed and designed presentation authoring modules built in. They almost all have quiz and exam authoring modules. The results can be comparable to rapid elearning development tools. It’s worth spending some time with your LMS and seeing what it can do. While LMS’ don’t typically have the best support for multimedia, there are a lot of advantages to this option:

  • Learning resources can be edited and created immediately online.
  • No extra software or development tools are necessary.
  • LMS’ are usually database driven which means indexing, searching and maintaining libraries of learning resources in them is powerful, flexible and simple.
  • Some LMS’ have text filters that can automatically add links and tags to learning content and learner generated content to make make them more closely integrated, such as glossaries, wikis and discussion forums.
  • Some LMS’ provide easy to use tools for embedding multimedia into presentations, quizzes, glossaries, etc.

I’m not advocating abandoning rapid elearning development tools altogether (I think they’re very appropriate for one-off, highly particular presentations and simulations) but I think it’s important to understand their limitations and that, in many cases, there are more appropriate approaches to creating, maintaining and managing learning content.

Another option: SMIL XML

The Synchronized Multimedia Integration Language (SMIL), is a W3C.org recommended XML markup language for describing multimedia presentations. It defines markup for timing, layout, animations, visual transitions, and media embedding, among other things. SMIL allows the presentation of media items such as text, images, video, and audio, as well as links to other SMIL presentations, and files from multiple web servers. SMIL markup is written in XML, and has similarities to HTML.

Source: Wikipedia.org

SMIL is currently most commonly used as a subtitle or text captioning format for online video, otherwise known as SMILText, TimedText or RealText, and for media play lists like those used with the JW Player and the Media Player module for Moodle but, as you’ll see in this article, it is capable of far more than that.

How does it work?

A SMIL XML file contains all the data necessary to organise a play list or learning interaction such as a PowerPoint style presentation or a multimedia quiz. Note that the main constituent parts of the learning interaction are kept separate; the multimedia files, the SMIL data files, any styling and the SMIL player. Software developers call this the Model-View-Controller* (MVC) design pattern which is used in almost all web software, such as Content Management Systems (CMS), such as WordPress, Joomla, Drupal and Mambo, and LMS’, such as Moodle, Sakai, ATutor and ILIAS. This means that each part of the multimedia, data, styling and player can be edited, substituted and recombined separately without “breaking” the learning interaction. Also multimedia, which tends to be costly and time consuming to produce, can be re-used and re-purposed easily for other learning interactions. For example, if all the learning interactions display an image, only one copy of that image needs to be stored on the LMS. If we want to change or update it, we only need to edit or replace this one copy and this will be reflected across all the learning interactions that use it, so there’s no need to go through the laborious task of editing and republishing tens, hundreds or maybe even thousands of files just to change one image, which is the case with typical rapid elearning SCORM packages.

SMIL diagram

* In the case of elearning MVC would be:

  • Model – SMIL XML files and multimedia files. Additionally, SMIL files often contain layout data.
  • View – Any styling, which could include colour schemes, fonts, graphics, backgrounds, logos and branding.
  • Controller – The software that manipulates the model and applies the styling to create presentations and other learning interactions.

Platform agnosticism

Perhaps one of the biggest advantages of using a web standard format, like SMIL XML, is that it’s “platform agnostic“, i.e. it isn’t limited to just one operating system, software platform, runtime or playback device. This means that you can develop applications in any language for any operating system or runtime to play SMIL presentations. Options include but are not limited to: Flash and Javascript (for web browsers), Adobe AIR and Java (for desktops), Android apps (mobile phones and tablets) and iOS apps (iPhone, iPod and iPad). The following media players also support SMIL playback: Apple’s Quicktime player, Windows Media Player (WMP) and RealNetworks RealPlayer.

Flexible and adaptable

In addition to playing SMIL files from start to finish, as slide show presentations, it’s also possible to develop custom applications that can use the presentation data to create new activities, for example games, quizzes and reference aids. I develop Flash Multimedia Interactive Learning Applications (MILAs) that read SMIL files and use them to create a variety of learning interactions. With this approach it’s possible to create an almost unlimited range of activity types to your exact specifications.

When should we use SMIL?

SMIL XML is a potential replacement for presentations typically produced by using one of the many rapid elearning development tools. If you find yourself copying and pasting layouts, content, templates, etc. from one presentation to the next or you find yourself doing very repetitive tasks frequently, then that’s a good case for considering adopting a SMIL based approach. Typical rapid elearning development tools that SMIL can replace are:

* OpenOffice.org, the free open source alternative to Microsoft Office, can publish presentations directly to Flash. Additionally, it’s compatible with MS Office documents so it’s one of the cheaper and easier ways to convert old legacy presentations to Flash for web deployment. I previously wrote an article, Open source for elearning, which lists alternatives to commercial, proprietary software.

Why should we use SMIL?

The advantages

  • Open file format – Your typos, spelling mistakes, wrong images, audio or video, etc. can be corrected in seconds with a simple text or XML editor. (Moodle 1.9 allows you to edit SMIL XML files in the course files repository directly online.)
  • Media files are stored separately – Images, animations, audio and video can be updated without having to re-author and re-publish elearning packages. Also screen recordings in either video or Flash are separate from the main presentation structure and can be re-recorded without completely rewriting the whole project.
  • All the data and media is available at a “granular” level so it can be manipulated and re-purposed with software to create an almost infinite variety of learning resources.
  • Web browsers cache media files and, instead of unnecessarily downloading them multiple times, taking up bandwidth and time, they are re-used from the cache. It’s faster and more efficient.
  • Video file formats preserved – As long as video file formats are supported, they are played directly in their original form. This avoids the inevitable loss in quality caused when rapid elearning tools transcode video files imported into them.
  • Presentations can share files and data – It’s possible to re-use media files such as video saving you server storage space and reducing internet bandwidth usage.
  • SMIL is “platform agnostic” meaning that you can develop/use SMIL player applications for use on any operating system or runtime.
  • Course/Site wide configuration – Groups of presentations can be configured using a single, shared file and changes to courses or even whole sites can be made easily. With rapid elearning development tools, it’s necessary to edit and re-publish every single presentation.
  • Smaller file sizes – Most rapid elearning development tools typically produce unnecessarily large files. A combination of SMIL content files and software SMIL players typically produces smaller, optimal file sizes, therefore learning resources download and start faster.
  • No problems with rapid elearning development software versions – You can update image, animation and video production software without worrying if it’ll be compatible with previous or later versions. Additionally, you’re not tied to using any particular software to maintain legacy presentations.

In short, you get a leaner, meaner, faster, more flexible, more editable and ultimately more efficient way of producing elearning presentations and learning resources.

The disadvantages

  • Initial cost of developing a SMIL player (Almost no free or open source web based SMIL players available so please let me know if you know of any)
  • Knowledge of SMIL XML schemata for authoring and editing is required
  • Generally requires some specialised, skilled IT support

Ultimately, the choice is determined by the number of presentations you’re likely to deploy and maintain on your elearning courses. If it’s a small number, then the software development and inconvenience of training or hiring developers with the necessary skills and knowledge outweigh the benefits. However, elearning and blended learning programmes can quickly accumulate large numbers of multimedia learning interactions, which can become difficult and time consuming to manage and maintain and subsequently place unreasonable restrictions on your curriculum development programmes.

More information about SMIL

SWF Activity Module now supports conditional sequencing

SWF Activity Module now supports conditional sequencingThe latest build of the SWF Activity Module for Moodle includes support for conditional sequencing between SWF course module instances. This means that teachers and course content developers can require learners to successfully complete one SWF Activity Module instance before moving on to the next.

What is conditional module sequencing?

Normally, on any given Moodle course, learners have the freedom to access any activity modules and resources that are available in any order. Although teachers can hide activities or specify time frames for when they’re available, there’s no provision for only allowing access to an activity when a learner has completed the previous one. Say, for example, a course has six SWF Activity Module instances:

Module 1 – Meeting for the first time
Module 2 – Arranging an appointment
Module 3 – Conducting interviews
Module 4 – Holding meetings
Module 5 – Following up meetings
Module 6 – Dealing with problems

And we want learners to complete three module instances in order, e.g. Module 3 -> Module 4 -> Module 5. All a teacher or course content developer has to do is change the Conditional sequencing parameter in each module instance to “true”. In this case, learners can attempt any of the other module instances, 1, 2 and 6, at any time in any order but Modules 3, 4 and 5 can only be attempted in that order.

How does it work?

SWF Activity Module conditional sequencingFrom a learner’s perspective it works like this:

  • A learner attempts an instance of the SWF Activity Module that is included in the course conditional sequence.
  • If the module instance is the first uncompleted one in the sequence, the module continues to the Flash activity as usual.
  • If the module instance is not the first uncompleted one in the sequence, the module displays a summary of the sequenced modules and a button to navigate to the appropriate module instance (see illustration).
  • When the learner has completed all the modules they are directed to the summary of sequenced modules with a message that they have successfully completed them all if they re-attempt any of the modules in the sequence.

From a teacher or course content developer’s perspective it works like this:

  • Deployed Flash learning applications must be capable of saving grades in Moodle’s grade book, otherwise SWF Activity Module instances cannot be completed.
  • Only one group of SWF Activity Modules can be sequenced per course.
  • Only SWF Activity Module instances that have Grading > Conditional sequencing > true selected are included in the sequence.
  • The order of the sequence is the same as the order of appearance of the module instances on the Moodle course page.
  • Learners must complete the first uncompleted module instance before they can attempt the next in the sequence.
  • Learners are shown a summary page of the sequenced module instances if they attempt a module instance out of sequence with a button that takes them to the next one in the sequence.
  • If the order of the modules is changed or added to before learners have completed all of them, they are simply required to do the first uncompleted module(s) in the new sequence. They do not have to re-attempt already completed module instances.
  • Doesn’t work with guest access, teachers or admins. You must login as a student to test it.

There’s documentation and examples on the SWF Activity Module project site here.

What is Moodle?

What is Moodle?Moodle is my learning management system (LMS) of choice. I’ve contributed two widely used plugin modules to it (the SWF Activity Module and the Media Player module) and use it with groups of volunteer students for my research in course content development and online learning approaches and strategies.

What is Moodle?

Moodle (abbreviation for Modular Object-Oriented Dynamic Learning Environment) is a free source e-learning software platform, also known as a Course Management System, Learning Management System, or Virtual Learning Environment (VLE). As of October 2010 it had a user base of 49,952 registered and verified sites, serving 37 million users in 3.7 million courses.

Moodle was originally developed by Martin Dougiamas to help educators create online courses with a focus on interaction and collaborative construction of content, and is in continual evolution.”

Source: Wikipedia.org

Why Moodle?

There’s a wide and varied selection of LMS’ available. I chose Moodle because it’s built around the Social Constructivist theory of learning, the most widely used, has the largest online community of users and is open source, meaning that I can use the software without paying anyone licence fees and I can modify the source code and add to it in any way, for example the two plugin modules I’ve developed and contributed to the project. It also has a large library of other plugin modules that can provide most of the functionality I need for learning and teaching with second language acquisition.

Where can I find it?

My R&D Moodle is at moodle.matbury.com and includes a demo course (Login as a guest) where you can find examples of the SWF Activity Module and Media Player modules in action as well as a selection of my Flash applications.

SWF Activity Module now supports SWF Address

SWF Activity Module now supports SWF AddressThis article’s aimed at developers and adminstrators and addresses a web usability issue that has an ingenious solution. If you’re not at all “geeky” this article will most probably go right over your head.

A common problem with Flash and web browsers is that they don’t use the same navigation model. Users regularly click on the browser forward and back buttons navigation to navigate to web pages. Unfortunately, if the user is viewing a Flash application and she or he clicks on the browser back button,  the browser exits the Flash application and navigates to the previous web page. Obviously, this can be extremely annoying if a user has just spent a lot of time and loses any unsaved data or grades. Enter SWF Address, the answer to your browser navigation woes.

What is SWF Address?

SWF Address is a combination of Javascript and Actionscript classes that Flash developers can include in their projects. The classes work together to add changes in state in Flash applications to the browser navigation history, such as going to the next slide in a presentation or navigating to a menu. Otherwise known as “deep linking” this technique integrates browser and Flash navigation powerfully, unobtrusively and flexibly and reduces the likelihood of learners losing unsaved data or grades or generally wasting time trying to get back into an application to find where they left off. It even works with bookmarking so teachers and learners can link directly into a specific state or page in Flash applications.

The SWF Address Javascript class is already included and integrated with the latest version of the SWF Activity Module. You can install or upgrade it in your Moodle 1.9 or 1.8 installation immediately. Developers will still need to download and install the Actionscript class in their Flash IDE class path before they can start using it.

Please note that SWFAddress only works with Flash applications that have the necessary Actionscript class and functions included in them. See Lee Brimelow’s tutorial for more details about how to do this.

Where can I find it?

  • I’ve created an introductory wiki page with links to the project site and a very helpful tutorial by Flash and Actionscript guru, Lee Brimelow, on the SWF Activity Module project site wiki.
  • The latest version of the SWF Activity Module, which integrates the SWF Address Javascript class, can be downloaded from the SWF Activity Module project site.
  • So that you can see SWF Address in action in Moodle, I’ve also uploaded a simple demo by Asual and deployed it on my R&D Moodle 1.9 site (Login as a guest).
  • SWF Address project site with examples and demos.

SWF Activity Module updated for PHP 5.3+

SWF Activity Module updated for PHP 5.3In the world of software development, you always have to be looking ahead. The web server language that Moodle and the SWF Activity Module are written in, PHP, is constantly evolving and being updated. PHP 4 is no longer supported, we’ve been on PHP 5 now for over a year and PHP 6 is just around the corner. How does this affect Moodle and the SWF Activity Module? Read on…

The most significant change

With PHP 5.3, a number of functions have been deprecated, or in other words, there are other newer, better, shinier functions to use in their place and we shouldn’t use the old ones anymore. If we try to use these old functions, PHP 5.3 will send a deprecation warning, telling us that we should change the code. Any code that uses the old functions will probably still work at the moment, but their days are numbered and they’ll vanish in the next version, PHP 6.

Changes to the SWF Activity Module

Adapting the SWF Activity Module to these changes is no problem at all and I’ve updated the module download packages on the project site accordingly. However, Moodle 1.9 and 2.0 still contain a large number of these deprecated functions which can cause problems. So far, I’m happy to say, the new version of the SWF Activity Module seems to function if your server is upgraded to PHP 5.3.

Ongoing issues

However, this does mean that Moodle may be unable to confirm whether or not a grade has been successfully recorded in the grade book. It seems to work in all cases that I’ve tested but there’s no confirmation message because instead, all Moodle sends are the deprecation warnings. Until the Moodle core developer team can fix these issues, there isn’t much more I can do about this. From what I understand, they’re working on replacing the deprecated functions as and when specific errors arise.

What should we do?

The solution recommended by Moodle core developers appears to be “don’t upgrade your server’s PHP version to PHP 5.3”. Fine if you’re running your own dedicated servers but that’s out of your control if you use a shared hosting service. Some other CMS’s are reporting similar issues so we can hope that hosting providers won’t be in any great rush to upgrade anytime soon for fear of annoying the majority of their clients. Mmm… all I can say is upgrade to the latest version of the SWF Activity Module and hope that the Moodle development team can sort out the deprecation issues soon!