One Markup Language to rule them all … and in the darkness bind them.
The Web is a living, evolving beast, and it seems certain that the future will hold more interaction with our everyday activities than it did in the past.
The mechanics for these interactions to happen are falling in place virtually every day, but a new standard is on the horizon to tie these ends together and make our lives – and the lives of browser makers – more fluid and transparent with its support.
That standard is HTML 5, the latest in a series of markup languages that rule the world wide web with a velvet glove. The first draft of HTML 5 appeared on January 22, 2008, and it has been under revision ever since.
But while it may be a wonderful time for the propeller-heads to celebrate a new standard for all things online, how does it help the average computer user?
Since a detailed discussion of changes would probably exceed both the space here and the patience of the average curious user, we will focus on some of the major changes, and how that will make our online experience better. Ben Galbraith, co-director of developer tools at Mozilla, agrees as he states:
“HTML 5 features like Canvas, local storage, and Web Workers let us do more in the browser than ever before,”
One of the most exciting changes for the end user is the encapsulation of Canvas within the language.
Canvas gives web designers a rich API to use for 2d drawing. No longer confined to images and boxes, the web artist can use the entire page as an expression of content and design rich interfaces that previously were practical only with third party add ons such as Flash and Silverlight.
It could be argued that Canvas may lessen our dependence on the plugins, at least in name.
For example, Google has developed the Google bridge which maps Canvas to both Silverlight and Flash. In doing so, however, it relegates the plugins to a much lower chain in the overall visibility to the end user, something that both Adobe and Microsoft no doubt wish to maintain, if indeed they are even present in future incarnations of HTML5 browsers. It could be conjectured that this could be one of the reasons that Microsoft, while endorsing and supporting HTML 5 in general, has not in the past supported Canvas as part of the standard.
Another aspect f the evolving HTML 5 standard is the inclusion of local storage.
While our dependence on being interconnected will no doubt continue to grow, having a connection at all times, is not always possible. For this reason, the local storage api can be used to allow a web application to function until connectivity is restored. Indeed, with the spread of web applications, this storage, in its current incarnation referred to as DOM storage, is a requirement now and has been broken out of its HTML5 roots in order to streamline its real world implementation.
Modern browsers are starting to implement this HTML5 feature, and the current model of text based key and value storage is expected to grow into a universal structured data storage as the standard matures. This would greatly expand the usefulness of web applications, and in this author’s opinion it could single handedly make the current model of patching desktop programs obsolete as it would automatically update itself as a connection was restored. Exciting indeed.
HTML 5 also supports Drag and Drop.
This could be used to allow the user to drag files from the web browser to their local storage (or personal online storage, as such as the case may be) for long term keeping. it could also be used to trash files and launching applications, such as video programs. This aspect, while bringing a common user interface to the standard, really seems to bring a browser based operating system a bit closer to reality.
I know that there are naysayers whenever a browser based OS is mentioned, but the Google Chrome OS is under development. However, that is another discussion.
Any discussion on HTML 5 and its advantages would need to include at least a mention of Cross-Document Messaging.
Part of the standard that is already present in the latest browsers (in limited form), Cross-Document Messaging allows for the inclusion of multiple web source objects in a single fluid user page. Imagine gadgets and iFrame objects that are in communication with the rest of the functioning page directly through the browser, not with a backend requirement. This allows web developers greater flexibility in incorporating web components into their design, and even allows the potential of greater end user customization.
While there is much more to the HTML 5 discussion, the last aspect we will discuss at this time is the concept of Web Workers.
This allows for browser based activities to offload some of the processing overhead to background activities, allowing for smoother operation and a better user experience.
HTML 5 is mapping our way into the future, but its final draft is not complete yet. One school of thought puts it W3C Candidate Recommendation stage around 2012, some even later. But the important thing to note is that the standard will be, and is being, implemented in stages. Safari, Internet Explorer 8, and Firefox 3.5 have some of the standard already implemented, with more being planned in future releases.
Microsoft’s hesitation to support some of the APIs (notably Canvas and Web Workers) is probably not going to be a factor this stage of the game, especially since Google and a few other web heavyweights are throwing strong support on those same key features.
The one thing that does seem to be certain is that HTML 5, in its piecemeal appearance on the web, is going to be the de facto standard long before it is officially released. And that fact is already serving the end users with a better online experience today as well as tomorrow.