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

Update on the free online interactive c-test generator

Flash logoIn January of this year (2013) I published an article on my C-Test Generator which I made freely available for everyone to use so that they can generate their own c-tests quickly and easily. Since then, it has occured to me that it would also be useful to be able to generate text versions of c-tests that can be printed and photocopied for those who don’t have computers readily available or if teachers would like to create specific language proficiency tests for their learners.

What is it and what does it do?

Please see the previous article, Free online interactive c-test generator, for more information about what c-tests are, how they are an improvement on cloze tests, and what the C-Test Generator app does.

What has changed?

The c-test generator app, in addition to creating an interactive online c-test, now generates an additional pure text version. By clicking on the “Copy” button, the text is automatically saved to your operating system’s clip board. You can then paste it into a text document such as OpenOffice/LibreOffice Writer or MS Word. If you adjust the kerning (space between letters), you’ll be able to see one underscore for each deleted letter, which looks more like betw_ _ _ than betw___. In OpenOffice/LibreOffice:

  1. Highlight the text that you want to adjust the kerning on
  2. Go to Format > Character… > Position
  3. Under “Spacing”, select “Expanded” from the dropdown list
  4. In the “by” section increase the pts to widen the character spacing (You should see a preview). About 2.0 pts should be enough.

The process wil be similar in MS Word. Check their help and documentation for details. Please note the the same C-Test Generator app is embedded in this page and the previos C-Test Generator article page.

[swfobj src=”https://matbury.com/wordpress/wp-content/uploads/2013/06/blog_c_test.swf” width=”600″ height=”600″ allowfullscreen=”true”]

Click here for direct link to C-Test Generator app for full browser window.

There’s also a licensable version of the C-Test Generator app that integrates with Moodle and saves learners’ grades and c-test texts in Moodle’s grade book.

Are Flash and HTML5 locked in a mortal struggle for control of the internet?

Are Flash and HTML5 locked in a mortal struggle for control of the internet?

It’s a loaded question, isn’t it? The kind of attention grabbing headline we’ve come to expect from the mainstream media who receive a substantial portion of the $691,000,000 (2010) of Apple Inc.’s annual marketing budget. So what of this epic struggle between Adobe’s flagship software platform and the open source, open standard HTML5?

Some sobering facts

  • HTML was born* in 1995.
  • Javascript was also born in 1995.
  • CSS was born in 1996.
  • Flash was born in 1997.

* By “born” I mean the first working versions of the respective languages and runtimes were released to the public, i.e. HTML 2.0 and Flash Player 2.0.

So none of them are new and they all get significant new features added to them from time to time. HTML, CSS, Javascript and Flash have co-existed, collaborated and integrated with each other for the past 14 or so years. They’ve done very well together and if we took any one of them away, the WWW would be a poorer place for it. They all have their merits:

  • HTML is open specification and great for flexibility and accessibility. HTML text flows naturally across the screen, browsers can apply anti-aliasing to make it smoother on the eye, the text can be resized (Ctrl + mouse wheel) which is perfect for the sight-impaired, assistive technologies can convert the text to speech for accessibility, etc. In short HTML is wonderful for everyone.
  • CSS (Cascading Style Sheet) defines the physical appearance (look and formatting) of web pages, for example defining text fonts, sizes, colours and styles, the arrangement of areas of text, images and other elements on the page.
  • Javascript is a flexible, open format, object oriented scripting language that runs natively in web browsers. It adds interactivity to web pages transforming static, inert HTML elements into interactive objects that respond to users’ actions. Since 2000, Javascript has also been commonly used in elearning SCOs, e.g. Adobe Captivate, Articulate and Raptivity, to relay data from Flash applications to Learning Management Systems’ SCORM modules. It’s now becoming more widespread with the introduction of code libraries such as JQuery and MooTools which make programming with Javascript’s idiosyncrasies much easier.
  • Flash and its native programming language, Actionscript, provide the whiz-bang wow factor on the WWW. Its role has always been to do the things that web developers couldn’t and can’t currently do on the WWW with HTML, CSS and Javascript alone or where it is impractical to do so. Its primary rise to internet fame was in providing a platform to display scaleable vector graphics (SVG) and animation in web browsers, i.e. images that move and don’t get pixelated when you expand or zoom them. Shortly after that it provided support for sound and then video. Before Flash Player supported video, it was possible to play video on web pages with other plugins like Apple Quicktime, Windows Media Player and Real Networks Real Player. However, they all used different, proprietary video formats that weren’t cross-compatible (See Youtube API Blog link below). Flash Player is currently the only way to do web conferencing with access to webcam and microphone in a browser. The most recent version of Flash Player (11) introduces 3D graphics engines and GPU hardware acceleration: http://away3d.com/

In short, they’ve all had a long and productive history together and they’ve all contributed to making the web a richer, more enaging, more accessible medium. At one time or another, they’ve all had their critics and predictions of their demise. Will HTML5 kill Flash? More likely, HTML5 will gradually replace HTML4 and some but not all of what Flash currently does. No killers, no victims and not very sensational after all.

Further reading

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

New Avatar (profile picture) Camera app

New Avatar (profile picture) Camera appIntroducing a new Flash app for the SWF Activity Module for Moodle that is possibly the quickest easiest way for learners and teachers to change or update their avatars (profile pictures). Using your computer or mobile device’s webcam, the app saves your photo directly to Moodle without saving images to your desktop or uploading.

When you’re creating online communities of learning and teaching, the ease at which learners and teachers can personalise their user accounts so that they can recognise each other while communicating and collaborating is vital for success. Indeed, many papers, journal articles have been written and presentations given on the importance of sociability and usability.  However, Moodle’s user profile pages are notoriously difficult for users to find and edit and then learners and teachers are left with the responsibility of taking or finding their own photos, editing them to a suitable size and uploading them. Some learners and teachers  don’t have the time or the facilities needed and just don’t get round to doing it. So the Avatar Camera at least resolves this issue. Using it couldn’t be easier.

Instructions

  1. Enter an instance of the Avatar Camera activity where it’s deployed in a Moodle course.
  2. On the Adobe Flash Player Settings dialogue box, select “Allow” to activate your webcam.
  3. The app will show your current avatar and a live feed from your webcam.
  4. Click on the camera icon button as many times as you like to take photos.
  5. The photos will appear, in sequence, on your screen.
  6. To save the photo you want, click on it.
  7. The app will overwrite your current avatar with the new one.

Please note: Moodle course, forum, glossary, message, etc. pages don’t handle caching very well so you may need to click the refresh button on your web browser to see the changed avatar.

Where can I see it?

An Avatar Camera demo is up and running on my Moodle on the Multimedia Interactive Learning Applications (MILAs) course. Guest access is allowed but guests can’t save avatar photos. It’s best deployed with the latest version of the SWF Activity Module for Moodle but, with a some programming know-how, it can also be deployed in other learning management systems (LMS) and content management systems (CMS).