eCampus

Flash, Multimedia & E-Learning

October 3rd, 2006 by Nick Stephenson

The average web application has a torturous UI that kills goats at fifteen paces. For some more complex activity, such as laying out graphics, it just doesn’t work as well as, say, as your average well-designed desktop-based application from 1996. It can’t do obvious things: such as access you web cam or allow you to drag and drop files into it. Web apps still use page re-load pages quite often. Things that worked once, stop working with new browsers. Some things work in Opera in mysterious ways. Some things work in Explorer in strange ways. Firefox does odd things. Safari does eccentric Steve Jobsy things. Nothing looks the same across all browsers. Browser incompatibility, mysterious hacks, and really diabolical bracketology rule the day. It requires hacking to make it all work.

The solution to this miasma of browser quirks and hacking? Some people call them “RIAs”, or rich internet applications. You can do things in them that you can do in normal applications such as Word or on your desktop. Drag things around. Click on windows. Play videos. Record your voice. Show presentations. That sort of stuff. They run on remote servers, and you access them via your browser.

The whole notion of web-based apps really took off when people started taking a combination of html, the document object model, css, javascript and XMLHttpRequest, to create things such as Gmail and flickr. Of course, people had been doing this stuff since Microsoft originally put the XMLHttp activeX object into IE 5, and even before that using iFrames and other hacks, but circumstances contrived to make Gmail and other apps like it a minor buzz point; and so Tim O’Reilly coined the phrase “web 2.0″, a load of colourful logos were created, another coined the phrase ajax (”Asynchronous JavaScript + XML”, a word which is also the name of a household cleanser) and, with a general increase in jargon, controversy arose about the possibility of a new internet bubble.

But as more students, customers, colleagues, etc, have faster and faster internet connections web applications start to make more and more sense. Particularly when people want to collaborate over the ‘net. Indeed, some of the most useful applications simply wouldn’t make sense as anything else except server-based web apps: search engines, online collaboration software of most kinds, ecommerce sites, and so on. Indeed, the discussion is over bar the protestations of a few. Web apps are the future. No-one wants to support multiple code bases for Macs, Windows, Linux and so on (they’d rather support multiple browsers :-)). No-one wants to deal with boxes of software anymore. Punters don’t want to worry about upgrades, software installs and all that. And, for e-Learning, the punters are used to learning things from the internet and socialising using everything from mobile phones to internet forums. For web-based e-Learning, indeed for most applications, the web application is a given.

But programming web applications still makes grown men weep. Really great projects such as the dojo toolkit and prototype help a lot, but they are still in a nascent form. Dojo, for example, is really wonderful, with some AOP and some handy use of the functional programming possibilities of javascript and all sorts of other cool stuff - but it is still only approaching version 0.4. Google, of course, is in on the act with GWT, which actually tries the abstract the whole “ajax” hack behind a java library. Microsoft has it’s own thing: Atlas, all built around it’s ASP.NET platform. The problem is, no matter how good they are, they can’t expand the web application much beyond the limitations of the browser and the hackology inherent in it.

There is, of course Java web start as an alternative to all this javascript hackology. But that requires a large plugin to work and it just doesn’t work a lot of the time. How many people have had bad experiences trying to get applets to run? Quite a few. Although there is talk of making it smaller. And Adobe’s Flex, and the Apollo project, which makes use of the cross-browser Flash plugin, which I’ve written about before. And possibly something by Microsoft called XAML. And so the list goes on. In other words, there are a lot of buzzwords …

… and with buzzwords comes the traditional sound of buzzing, which addles the brain and makes programmers wish they were born in Age of Reason were Everything Just Worked. But … it doesn’t.

What does this mean for the typical e-Learning site? Major redevelopment. Why bother? Because as I’ve posted about before, as multimedia becomes more common on web sites we’ll need more sophisticated applications to make the most of it. Plus, a better UI is a better user experience, and by extension a better educational experience.

Leave a Reply