If you’ve been on the latest news on the web development standards, you probably know that HTML version 5 is slowly being adopted by mainstream browsers, despite it has not reached its final release yet (it is still a draft). I’ve always been a fan of the impressive results that you can get with Adobe Flash and, since it is today present in almost 99% of the browsers, it has been almost a no-brainer for anyone that wanted to create a highly dynamic and interactive website for the last couple years. Despite its many drawbacks, Flash has managed to become almost ubiquitous and extremely popular in the web. Just to cite a few of these weaknesses:
It is a proprietary technology held by Adobe. This, by definition, is not good for the community, since we’re all in Adobe’s hands;
Even after 10 major releases during the last 13 years, Adobe did not managed to create a decent IDE for it, which today still relies mainly on a timeframe for movie clip creation and has poor debugging support;
Its programming language, ActionScript, which only recently became more robust with its version 3, is based on ECMAScript (prototype oriented), which implies loose typing and few compile time checks -> more runtime errors.
Now that HTML5 is here, we’re clearly seeing that Flash is slowly and progressively losing market share, mostly because of the new canvas element introduced with this standard. Canvas allows 2D vector based drawing directly to the browser. This opens an entire new world of possibilities to web development, allowing creators to leverage the HTML 5 open standard to switch from Flash to canvas and, therefore, forcing browsers to implement it and improve rendering performance. Other elements like audio and video embedding are also planned to be available in this standard.