A (HTML5) decision, vindicated!

by Richard on 16/08/2011

You will have to forgive me this opening paragraph dear reader for its self congratulatory tone. You see back in university roughly 7 years ago now I approached a point where I had to decide whether or not to truly throw myself into acquiring a deep understanding of Abobe Flash and make the bet that it would be time well invested in respect of being able to get a good job and progress in my career. The issue I had was that I never felt ‘right’ in Flash. I understand it’s benefits, and I’m not one to suggest it doesn’t have some advantages. The problem was I never thought of it as being the future. I went back and forth internally on whether to become and pitch myself as a Flash developer. One day I may have seen a cool Flash site and thought let’s do it while the next day I was back to worrying about the plug-ins long term viability. Anyway not to bore you any longer than necessary I eventually decided to focus on becoming a web developer with a focus on open and standards compliant technologies.

I’m ecstatic to say that my analysis and choice were bang on! With this decision myself and all others who agreed with me managed to hit the ball out of the park. Of course to anyone watching the industry this is old news. Some would say that Adobe Flash was ‘dead’ the minute the iPhone caught on. Personally I hate the tendency of recent articles to brand things as dead and pitch rival approaches to problems in the technology sector as a ‘there can be only one’ fight, though minus the swords and beheadings!

What I believe is that Flash isn’t necessarily dead but rather becoming a more niche solution to the problems broached in our industry. Eventually I think it may disappear into obscurity but that day is many years away Consider for a minute the sheer penetration Flash has as a plugin and how many sites currently use it and continue to do so.

So why write this article now? In essence because I believe we have reached a sort off critical mass with HTML5.

A quick note before I begin. When I say HTML5 I include in that statement a number of technologies such as CSS3, Javascript, SVG and WebGL in addition to the actual HTML5 markup.

In no particular order then let me sum up my reasoning.

Booming support

Major players in a variety of industries are hoping on the HTML5 train. From the ever supporting Google to online storage company box.net to the Kobo and Kindle eReaders they have all created fantastic HTML5 web apps in addition to each platforms native apps.

Lets take one as an example. I choose the new Kindle web app as I can use it to demonstrate many of the following points.

Kindle Web app

Apple’s 30%

Apple make a great device in the iPhone but the fee they are charging companies to be present on their iOS platform is beginning to be too high for a lot of companies.

If you run your own business image that I come to you and say that you must give me 30% of each and every sale you make to a customer. Now yes Apple can only demand this for companies that want to be present on the iOS App Store. Note I said want but moving forward being present on the now emerging mobile platforms won’t be a choice but rather a necessity. Imagine a serious attempt at a business not having a website today. Can you even do it. I can’t! In the coming years that will be the case with mobile applications as well.

A big reason for the most recent wave of HTML5 interest has been generated by companies large and small not wanting to pay the fruity middleman his cut and instead go direct to the customer using the open web.

An example of a company doing this? Why Amazon have done it with the new Kindle web app. Come on now you seen that coming didn’t you! Amazon I’m sure you understand aren’t very happy about ceding 30% of every ebook sale made on an iOS device to Apple. So what do they do. They comply fully with the native app rules that Apple instate but launch the HTML5 kindle based web app alongside it.

This new web app I believe has feature parity with the native app with the benefit of Amazon keeping all the revenue it generates.

Offline Support

One such feature of the Kindle web app is offline reading. When you will be out of range of an internet connection you can simple ‘pin’ one of the books in the web app and have it available for offline reading. All 100% done with HTML5.

Now this may on the surface appear as just another feature but it is more. Offline support for web apps is essential for them to keep growing and seriously compete with their native counterparts.

I don’t want to rehash already available information here just for the sake of it so I highly recommend you read Cyan’s short but impacting Techcrunch article on the matter – Time to rethink every website in the world.

Browser competition/support

I’m not so young as to not remember the ‘dark days’ of the industry. When innovation had stopped and web developers were in danger of losing their minds!

Thankfully things have been changing for many years now. It’s taken Microsoft a long time to see it and get moving but finally we have browser competition again. Firefox, Chrome, Safari, Opera and yes IE9 are all fiercely competing for user. Firefox was at the vanguard of this assault on the languorous, slack and feeble state of the browser industry though it has been joined by Safari contributing greatly to advancements in the mobile sphere and Chrome advancing the vision of what a desktop browser is.

All these browsers and companies are falling over each other to top the speed charts and HTML5 compatibility charts. Even more than this the term HTML5 seems to be being taken up as a marketing term for these companies so is working it’s way into the mainstream (I say that with a loose definition of mainstream). This will only cement HTML5′s position and quicken it’s advancement.

Cross device compatibility

iPhone 3G. iPhone 4. Win phone 7. Web OS, Blackberry and Android. If you want to build native apps and get total coverage of smatphone users these are all the different platforms you have to cater for. Some have small differences, iPhone 3G to 4 while some have large differences Android to blackberry for instance.  Whatever your development capacity, be it a lone ranger or a team of people I find it hard that anyone would seriously be able to justify development of native apps for all of these different platforms.

Except you don’t have to! The web IS the platform!

The mythical write once run anywhere, auto updating, easily customisable, interoperable and localisable platform. Ok maybe the write once run anywhere statement will need a few more years to be fully true but in my opinion the web especially with HTML5 is the most sensible choice for development.

If you write your web app using HTML5 then you get access to all these devices for free! Yes there may be small quirks to work out between them all but it’s a tiny detail compared to the work required to build, maintain and support at least 5 independent native apps.

Some will be shouting at the screen this very minute. They scream that there are just some things you can’t possibly do via the web. Some things need native code to access. Firstly yes it’s true. Shocker! But this argument doesn’t take into account that the vast majority of apps would be very well served by using the web as their platform. Also it doesn’t take into account how fast the web evolves. It is likely that access to these features of each individual platforms come to the web via APIs. Lastly on this point. If you develop for the web as your primary source and find you do need a local app then by all means convert your web app to have access to each platforms APIs. Try PhoneGap!

Media

It’s pretty clear that HTML5 can handle media very well so I’ll not waste too many words on this. Once the issue of what format to support gets ironed out and browser support for it hits a certain level then very quickly we will see the majority of media distribution on the web switch to HTML5. It’s just better. No more will I have to have flash simply to play a video. No more will my computer actually burn my legs when I’m streaming a flash video. No more will media be sectioned of from the access and manipulation of web developers. Media will finally be a first class citizen within HTML5 markup, able to be manipulated at will by standard and well known technologies.

And if you don’t agree with me yet how about this…

Windows 8 will make HTML5 + JS + CSS3 a primary method to develop apps for it. Let that sink in a minute. Microsoft Windows will eschew it’s other proprietary technologies such as Silverlight in favour of open standards such is the power building behind HTML5.

This is very exciting news. In a few years when windows 8 has decent market share web developers will be able to take their skills and if they want develop native applications on the largest desktop platform in the world. I still think the web makes the best platform but I fully back giving developers the choice.

There you have it, my brain dump on why I’m very pleased with my choice to support the open web. If you think I’ve missed anything important or you disagree vehemently with anything I’ve said let me know in the comments.

Update – I added the Windows 8 video 16/08/2011

*image above kindly supplied by Svilen Milev

richard@richardjohnashe.com

There is 1 comment in this article:

  1. 27/08/2011Avari says:

    Way to go on this essay, hpeled a ton.

Write a comment: