thebeebs

Also known as Martin Beeby, I am a web developer and work for Microsoft as a developer evangelist

The need for speed?

IT Pro Portal ran a story the other week– HTML5 Mobile Performance Lags Way Behind Laptops. In it, Darren Allan points to a new set of benchmarks showing that HTML5 runs up to 6 to 10 times slower than on a current laptop. The conclusion is that this will limit the ability of developers to create more complex multi-platform HTML5 games.

Now I’d be the first to admit that mobile presents some pretty unique challenges. As Darren concedes, compared to a laptop, everything about a mobile device is a compromise. Less powerful processors. Smaller screens. Lower memory. Limited battery life.

So in some ways this is a bit like saying a Mini goes slower than an Aston Martin. It’s true, but no one expects the same level of performance (and ultimately no one is choosing between the two for the same task). And when it comes to laptops and mobiles, the performance comparison is also true of native apps versus web apps.

There are, of course, plenty of HTML5 mobile apps (games and others) that work just fine as far as their users are concerned. They make all the right compromises and their developers put in the extra effort and ingenuity required to ensure they deliver a great experience.

A lot of the performance/non-performance argument centres around frame-rate. Yet we’ve already shown with the likes of Cut the Rope that delivering an experience that's utterly comparable to the native app is possible with a lot of hard work.

To be clear, this is not to say that all gaming apps can be simply ported to HTML5 – something like Infinity Blade is likely to stay out of reach. But few in the HTML5 developer community claim that everyone should abandon native apps completely (despite the wish to write once and deliver cross-platform). And besides, games are only a small part of the overall picture.

While these kinds of comparisons will always focus on what one side is lacking, it can be easy to forget that in some areas mobile typically outperforms laptops. With built-in hardware decoders many mobiles will deliver video performance which outclasses that on a comparably-priced laptop. And virtually all laptops lack any kind of GPS capability – which could offer many new opportunities for game developers.

In the final analysis, performance is in the eye of the user. The only real question is: does the app deliver a good experience or not when compared to other similar apps available on the same platform? And the answer for HTML5 on mobile can be yes.