Lots of things happened in 2011 that changed the face of programming, but the one big change it that HTML5 took over. What is really strange is that HTML5 isn't even a programming language.
What is it that has big companies running so scared that they bin their existing technologies, rip up the foundations they have built empires upon, and start again from scratch?
As always, it's another one of those false marketing ideas with very little substance.
But it doesn't matter that there is little substance to it all - HTML5 has taken over the key to the kingdom like a viral kitten video.
What is this meme, this viral marketing spark?
HTML5 grew out of the train wreck that was XHTML and the inability to move HTML on by a committee of industry leaders who wanted stagnation as a way of protecting their assets. Eventually the log jam was freed by the WHATWG back in 2004. It took until 2010 to gain media attention, but by 2011 it had all but taken over the programming world.
At the very start of 2011 W3C announced a logo for HTML5:
It stands strong and true, resilient and universal as the markup you write. It shines as bright and as bold as the forward-thinking, dedicated web developers you are. It's the standard's standard, a pennant for progress. And it certainly doesn't use tables for layout.
We present an HTML5 logo.
The logo probably didn't help HTML5 into its position of power as the browser makers were already arguing who had done a better job of implementing the standard. Of course, it all depends what you mean by "the standard".
As the year moved on, it became apparent that "great things were afoot". Apple had already banned Flash from its kingdom and generally browser addins, Flash in particular, were acquiring the reputation of something evil.
This is perhaps the most reckless abandonment of a technology in the history of technology. Silverlight is arguably the best thing Microsoft ever created for web and desktop programming and it's still at the heart of Windows Phone 7 - although this cannot continue for much longer. To throw so much away on a completely unproven and obviously inferior programming environment is crazy, but it represents Microsoft's last chance to get on the mobile/tablet bandwagon. This is a part of the story that will be written in the coming year starting with the release of Windows 8 beta in late February.
So by about the middle of the year HTML5 had toppled Microsoft's proprietary technologies and had all but finished off Silverlight. The second big coup for HTML5 started to be visible early in the year for anyone with the hindsight to see it. Adobe rolled out tools to let users work with HTML5 to create animations - this is of course what Flash is good at. Then Google rolled out Swiffy, a tool that converted Flash into HTML5. Then, in October, Adobe acquired Nitobi, the company that created PhoneGap - a way of allowing HTML5 apps to run on an equal footing with mobile native apps on all of the standard platforms. Why would Adobe do this when they already had Flash and Flex to do the same job? In November the reasoning became very clear. Adobe stopped development of mobile Flash and open sourced the Flex framework. Despite Adobe's pledge to support Flash, Flex and all the old technologies, it is clear to any reasonable programmer that the future of just about everything now resided in a single entity - HTML5 and its associated technologies.
You have to pause at this point and ask why?
Why adopt such an underpowered technology and dump all of the, admittedly imperfect, alternatives?
Part of the answer comes from the freedom that adopting a standards-based technology brings. With Apple demanding a cut of everything sold thought native apps, what could be better than to cut the dependence by implementing pure HTML5 apps and pay Apple nothing at all - which is exactly what Amazon did.
With both Google and Mozilla trying to make the browser the operating system, it looks even more obvious that targeting the browser is the right thing to do. After all, there are no big single-interest organizations that can take the HTML5 standard away from you. Compare this with the future facing the .NET programmer or the Flex programmer. There might be a future but it isn't quite as rosy as it was before HTML5 came on the scene.
As the year 2011 comes to an end, we have to admit that we have seen a paradigm shift. It may not be, almost certainly is not, over yet and 2012 will see some significant developments - Windows 8, browser native code support, WebGL becoming essential and more...
Whatever happens in detail, it is obvious that in the coming year we will see HTML5 move from being a marketing term to something we have to work with.
Let us hope that someone thinks to work on the underpinnings that we need to turn it into a usable technology rather than simply inventing more marketing slogans and logos.
A class that is the cutting edge of machine learning and artificial intelligence is being run for the second time at Stanford this trimester. It is also available online to anyone who cares to follow [ ... ]