Flash
Flash has been all the buzz the past few weeks/months. Ever since the iPad was announced as not carrying the plug-in, bloggers have been up in arms over the lack of what some people say is a critical portion of the web. Some people have gone as far as to say they are refusing to buy an iPad because of the lack of Flash support.
Adobe, who purchased Macromedia in 2005 to obtain Flash (among other products), has had lots to say on the matter: mainly blaming Apple for not doing more to get Flash singing on the iPhone OS. Adobe has been working with other mobile operating system developers to attempt to get Flash on their OSes.
Apple has complained that Flash isn’t optimized for iPhone OS or the Mac OS that it is based on, has historically been a poor performer and crash ridden under Apple software, and that battery life would be seriously and negatively impacted if Flash were added.
I really side with Apple on this issue in a major way. Adobe completely and totally dropped the ball on Flash, both on OS X-based devices from Apple and in the industry as a whole. Flash eats up lots of processing power and memory to do operations that other products can do far more gracefully.
So if that’s all true, why is Flash the de-facto standard for web graphics and web video? Primarily because it filled a need - when Flash first broke onto the scene, the landscape of Internet plug-ins was a mess. If you wanted to play a video, you have to download three different applications/plug-ins. There was no standard, so web developers were stuck: which one do you use? Flash solved these issues be being a single platform that everyone could target.
But it’s important to remember that Flash didn’t start as the plug-in we have today. It was originally targeted as a way to do motion vector graphics on the web. Most of the other often times seemingly random “stuff” it does now was bolted on, and because of the consistant bolting of features, Flash turned from a simple lightweight solution to a single issue into a bloating, heavy beast to try and solve lots of problems.
Adobe will continue to argue that Flash is the way to go - even as it becomes increasingly obvious to developers (and soon to end users) that Flash is a dying technology.
So if Flash is dying, what is going to replace it? HTML5 is the common answer and the correct one. Take a look through the HTML5 apis, and you’ll start to see features from Flash pop out: SVG and Canvas, the video tag for embedded video, the file api for dealing with file uploads.
Is HTML5 ready to immediately replace Flash today? Not really — it still needs wider industry support (hint, hint, Microsoft). But will it have the legs to do so in 5 years? You better believe it.
Adobe should stop talking about Flash as the future of the web. The future of the web is in open standards that can be improved by many individuals across multiple companies (including Microsoft).
Finally, let me just ask a favor: if you are a web developer, and you are working on a site that really doesn’t *need* Flash to get it’s job done: please stop using it. And if you refuse to do that, make a separate non-Flash version. I appreciate it not only because I can access it on my iPhone, but because I have Flash embeds blocked in my main browser.