The war of words between Apple and Adobe continued this past week with Steve Jobs taking a direct shot at Adobe. As, Jobs apparently commented that were the upcoming iPad to use Adobe flash the battery life would be cut from 10 hours down to 1.5 hours. Ouch!
There’s no question that Steve Jobs is trying to do to Adobe Flash what he did to the 3 1/2 inch floppy drive — kill it in favor of newer, seemingly better, technology. Having gotten a little bit of a taste of what that newer technology might provide thanks to a demo site showing high quality HTML5 video, I am increasingly convinced that he may not be wrong. While the transition from Flash to HTML5 may not happen overnight there is an excellent argument to be made that it should happen and sooner rather than later.
Let me explain what I mean by going through some of the differences in non-technical terms.
Adobe Flash was originally called “Macromedia flash”. It is the most widely used technology for creating web-based animations. If you go to a website and you see action taking place in a small window you’re very likely seeing Flash in action. If you watch movies using Hulu, you’re using flash. And if a page is slow to load it is likely because it is… using Flash.
In fact it’s rare that you will go to a website now and not have some element of the page built using Flash technology.
The problems with Flash come in when you look at the specifics of what is taking place while using the technology. First and foremost, for some reason it has been shown that Flash tends to work better on Windows than it does if you’re using a Mac or Linux-based system. So on Macs Flash is often problematic, introducing slowdowns and crashes. In fact, Flash is often cited as the single biggest causes of crashes on Mac OS X!
It is for that reason that many of us use Flash Blockers in our browsers. Thanks to them, Flash windows don’t automatically load. The result is faster, more stable browsing.
Moreover, when you use Flash, you often need to add a special plug-ins that allows it to be rendered in your browser. It’s not a huge problem, but it is a pain since very often you need to download the plug-in and then restart your browser or computer in order for it to work. And when there’s an update, often you need to repeat the process. Trust me about the pain part. My wife Elana and her mother both wanted to listen to WOR Radio New York on their Macs and could not understand why they couldn’t get it to stream. It was, of course, a Flash plug-in issue in both cases.
In addition, it is not uncommon for Flash plug-ins to crash and require a browser restart. Again, it isn’t the end of the world, but it’s a pain in neck.
Furthermore, Flash doesn’t always render properly from one browser to another. I recently redid our synagogue’s entire website and used a great deal of flash when building it. The flexibility with regard to what I’m able to publish is tremendous, but the downsides are tremendous as well. Pages take longer than ever to load. Pages built in flash are not viewable on many devices including the iPhone and the iPod touch, and pages don’t render properly on certain older browsers. (Trust me many people use those browsers because I’ve been hearing about it a lot.)
Perhaps the biggest issue with Adobe flash is it is a resource hog. I viewed a high-definition video on YouTube while monitoring my MacBook pros CPU.
Prior to starting the video, the CPU usage was running below 10%.
As soon as the YouTube video began the CPU usage jumped to well over 50% and stayed there.
At times it got even higher.
I then went to the webpage for Sublime Video — an upcoming HTML5 video player — I began watching the demonstration video. This CPU jumped all the way to — wait for it — 18%.
I then enlarge the video to full screen. It was crisp, clear and gorgeous to watch.
And the CPU usage never went above 50%. The difference in the amount of strain that flash puts on a computer system versus HTML5 is totally clear, even to someone who is non-technical such as me.
To use Flash properly you need a new incredibly beefy system and even then, when you have a MacBook Pro with 4 GB of RAM, running at 2.53 GHz on a dual core processor it uses up more than 50% of the computer’s resources to watch one high-definition YouTube video in a relatively small window.
The next big difference that I found in looking at both with a rather critical eye, had to do with the process of scrubbing. With HTML5 I was able to scrub to any point in the video that I wanted instantaneously. There was no buffering. There was no stuttering. There was no delay. I moved the scrubber to a different point in the video and it simply continued playing from that point. It was awesome.
I then went back to that same YouTube video. Sure, it was able to scrub as well. But each time I moved the cursor the video stuttered for a moment before it began again. Sometimes I had to wait more than a few seconds for it to load fully because the buffering takes some time even on a high-speed Internet connection such as mine. Finally, when I began moving the cursor quickly scrubbing from one point to another in rapid succession this is what I got –
You won’t get that with HTML5 because there’s no plug-in required.
I talked about this post with my buddy Patrick from JustAnotheriPhoneBlog and JustAnotheriPadBlog, and he pointed me to this informative video. While a bit on the long side it adds some pretty interesting details to the argument.
Do I think we’re going to see Adobe flash disappearing anytime soon? No. I think it’s too well entrenched into many sites including the one that I’ve created. Nevertheless, there is no doubt that HTML5 is a huge leap forward from a technological perspective. There’s no question that Steve Jobs is on to something in wanting to replace flash with HTML5. And if that means that there will be some content that will be immediately available but the lack of which will help encourage the transition — I can live with that.