The Future of Web Based IWB Resources.

html5 logoWhen producing the learning resources for teacherLED.com lately I’ve been acutely conscious that they’re not compatible with a growing number of devices used with the internet: all Apple mobile devices.

For those who don’t follow technology developments Apple refuses to allow Flash player to run on any of its mobile devices.  Microsoft is also reducing the reliance on Flash for web experiences in its new Windows 8 operating system.  Flash Player is a virtual computer meaning that it works like a separate computer running on another.  This virtual computer means that software designers can write for it rather than have to produce a different program for each computer that exists.  In teacherLED’s case each IWB resource will work identically on a Mac, a PC or a Linux based machine.   But if there is no Flash Player on a computer they cannot work on it.

Apple chose to not allow Flash Player on the iPod Touch, iPhone, or iPad for a variety of reasons.  These reasons have not gone unchallenged but rather than get into whether it is right or fair this article will attempt to explain what this means for sites that produce resources and teachers who use them.

Flash Player is unlikely to disappear from desktop machines any time soon.  It is on nearly all of them.  Resource sites that have made heavy use of Flash, such as mine, will remain usable for a long time to come for their intended purpose.  However, while it is ubiquitous on desktop machines, and likely to remain so,  the growing number of mobile internet connected devices means that its overall presence across all internet using devices will decrease.  Furthermore while mobile devices other than Apple’s will allow Flash the performance is not good.  Flash seems powerful on a desktop machine because of the sheer amount of power available.  Any virtual machine can only provide a fraction of its host’s power as it has to translate between the virtual machine and the real machine on which it resides.  No problem on a desktop but an issue on the significantly less powerful mobile devices.  Additionally the harder a computer has to work the more power it drains.  Again not a problem when connected to the wall socket but a different matter on a mobile device.  All of these conspire to leave Flash as not the universal solution it once was.

All sites will have to think about how to deal with this.

The options:

Ignore non Flash enabled devices.
Definitely an option – particularly for IWB resource sites.  An IWB can display an iPad’s output but cannot yet be interacted with via the whiteboard itself but most IWBs are connected to a desktop computer.  Therefore nothing changes.  Flash remains a powerful and common platform which continues to evolve.

Go native. 
Produce each resource specifically for each machine in its own language.  Most apps fall into this case.  Here the performance is not an issue.  There is no need for a virtual machine to translate so no performance is lost to this.  On the downside every platform needs a specifically created resource.  Those produced for an Apple device will not work on any other machine.  In the case of Apple a developer must also pay to be able to put his or her creations on to a device.  The facility to make a program for, say an iPad, and then try it on the iPad does not exist out of the box.  The outcome of this is that most apps produced this way will end up on the App store as downloadable apps that have to be paid for in some way or perpetually show advertisements.

Use HTML5.
The language of the web is undergoing revision.  As part of this there are new possibilities.  One is called the Canvas tag.  This allows things that were previously only possible on Flash to be done on a browser that has not had any new plug-ins, such as Flash Player, added to it.  In particular this allows manipulatable elements to be displayed on screen.  As this is a web standard all browsers should support it and it is not dependent on a plug-in being downloaded.

The downside to HTML5 is that while it is meant to be a standard, in practise each browser does things slightly differently.  Whereas a resource programmed in Flash will work the same on any machine, as the Flash Player is controlled and updated a by its owning company Adobe, HTML5 may have differences across browsers.   At the moment it is also less sophisticated with less features available to the programmer, or at least they are much harder to implement.  Neither is it as a powerful.  The sophisticated games seen on Flash are not yet possible in a standard browser.  Furthermore schools are very slow to update.  Technicians often prefer to maintain the status quo that works rather than update to new software versions.  HTML5 requires a recent browser.  In particular Internet Explorer 9 is the first of the IE browsers to be compatible so if your technician has not upgraded the school browsers (they should) HTML5 resources will not work.

The route I have decided to take with teacherLED is to use HTML5 where possible to maximise future compatibility and not ignore the growing popularity of tablets.  Where the extra features are required I will use Flash.  While I hope to in the future release some natively developed apps I am keen to continue to provide free to access, advertisement free resources to teachers.  At this point it is impossible to provide a working solution for all users, I either exclude newer technology which is gradually making inroads into the classroom, or I exclude those whose schools are not upgrading their browsers. If you do have an up to date browser you will have free choice over what to use.  Flash or HTML5 resources.

Unfortunately as I am the only person working on this site the creation of multiple versions of each resource is not feasible.  That being said the first resource to use HTML5 is a new version of the popular Clock Spin.  Another post will explain why I’ve done this.  Actually this post explains why I’ve changed my mind in only 2 days.