Sunday, February 21, 2010

Steve Jobs is right to avoid Adobe flash

html5 logo.pngThe combination of new features in HTML5 and fast execution speed of Javascript in modern browsers means that it's time to finally cast off dependance on Flash for sites that want to do animation or play video.

Jobs is right, when using laptops I notice the operation of the fan and very often a web page with Flash in it single handedly uses enough CPU to heat up the device so that the fan kicks in. Undoubtably this sucks battery and there's nothing I hate more than a portable device that goes flat too soon.

The effect on memory and CPU of using Flash can be simply seen by comparing memory use on the Flash or HTML5 version of YouTube.

Here's Flash:

flash memory.png

And here's the HTML5 version:

html5 memory.png

So 76.9MB to play flash compared to 53.9MB using HTML5. A total of 37.7% CPU for Flash, compared to 10.3% for HTML5. Hardware acceleration of H.264 video promises to further reduce CPU and power consumption in the future.

The thing that Flash has is mature development tools. Recently I've been using the animation effects in jQuery and they look very smooth. What's needed is a tool to construct animations that play in the modern browser.

Step one is for manufacturers of potentially very popular devices, like Apple with the iPad, to have the guts to not allow Flash on there. Once major site builders see their site littered with little lego bricks they'll have to start getting by without flash.

I choose battery life, stability and standards over Flash any day. Only Apple and Google (YouTube) have the power to pull this off, I support them.

4 comments:

Anonymous said...

Hi Peter,
See your point, but am not sure if
I agree with the outcome.
Efficiency almost always never seems
to beat inertia.
Anyway, good luck and nice to see
you posting.
Always an interesting read.
Cheers.

Christopher said...

Do you think that the whole concept of web plugins in wrong or is it just that Flash's poor implementation on OS X is wrong?

Personally I want to see support for NPAPI plugins continue. There are things that you just can't do with Browser technologies that must be done at a lower level; however you still want these things to play and integrate with the browser. By way of example, I have a home-grown OpenGL plugin that allows me to create non-compromised 3D experiences that are contained within HTML and driven by Javascript. Plugins are therefore essential to my architecture.

So yes, I would agree that Flash's OS X implementation is poor, but no that plugins are a bad thing generally.

I'm also feeling increasingly against Jobs dictating what I can and can't do...

Peter Marks said...

I'm not totally against plugins but I am opposed to plugins that replicate what can be done in standard html.

When playing video and audio and doing animation can be done in a standard way then I think it should be.

Google Earth plugin is a good example of where a plugin is currently needed.

Jobs' authoritarian approach hopefully falls in to the category of "benevolent dictator".

Damian said...

I think that Apple may be a big enough force to make people re-consider using flash.

Flash sites are starting to become a burden rather than a benefit - slow to load, ignored by google and almost redundant with the video options available now (although a lot of video sites use flash).

It's surprising how many entertainment sites still use flash, despite getting better exposure through a platform like facebook.

I'm behind Steve Jobs on this one!