It is fascinating to see how HTML 5 buzz is spreading all over the Internet. Accelerated by Apple's decision to not support Flash on iPad, the news is now everywhere. Just follow HTML 5 keyword on Twitter and there will be no shortage of folks expressing their love to the new buzz word.
It is understandable that Scribd's CEO is "ditching" three years of Flash development in favor of HTML 5, but to say across the board that HTML5/CSS3 + JavaScript is a good replacement for Flash or Silverlight is absurd. Playing video is one thing and HTML 5 with appropriate browser support can probably compete there, though when it comes to anything a bit more complex than rendering text and changing button colors, the mix of HTML, CSS and JavaScript is an unfortunate choice.
Lets face it, HTML/CSS was created to output static textual content and images. JavaScript, a Netscape by-product, was broadly adopted later to provide for the lack of interactivity via browsers' crippled and buggy DOM interfaces. Since then it seems that the greatest invention was jQuery that gave us a simplified interface for DOM manipulations and XMLHttpRequest that provided some means for asynchronous processing. Now there is canvas and the ability to draw lines and have pixel access... Not too shabby. Adobe's Flash/Flex/AS3 is light years ahead.
Here is just a few thoughts that come to mind:
- Strongly typed ActionScript language
- Truly object oriented with real classes and inheritance
- Compile time error/type checking
- Robust security model
- Exceptions
- Modular (packages, libraries, components)
- Compiles into binary packages
- Rich event architecture
- Native XML support
- Clear code/presentation separation (not talking about frame scripts here)
- World class design and development tools with profound integration
- Slew of multipurpose libraries
Silverlight is even further ahead with mature C# language, feature rich .NET platform/FCL, multi-threading, real debugger, and best development tools.
Who is to say that these RIA technologies are closed or proprietary? They are as closed as Safari, Chrome, Internet Explorer, Opera, etc., all of which have their own proprietary take on how to interpret HTML/CSS specifications, DOM, and the rest of the "modern" hotchpotch of open web standards.
We at WebRotate 360 are affected by Apple's decision to stop supporting Flash on their mobile devices. 360 product photography aside, all of our 360 product views and other rich media components are done in Flash. It makes perfect sense for us and a few thousands of other companies who wants superior technology for client-side web development. Yes, absolute majority of browsers out there do support Flash. More so, its adoption will be expanding rapidly thanks to the new Flash plug-in that will be coming soon to the Android devices. Still, we and our clients now have to adjust to the growing issue of compatibility.
On the bright side, our new rich media solution has been designed with the goal of addressing this and many other problems that e-commerce companies are facing today.