Got Flash Blues? Dalvik VM to the Rescue!
Adobe Flash Platform got some bad press lately, and its exclusion from iPad is a major slap in the face to Adobe by Steve Jobs himself. Even though millions of sites out there (including this one) use Flash to liven up things and provide extra interactivity, Apple is willing to leave users to stare at Big Empty Boxes on iPad, rather than add Flash support.
To be fair, I myself did a lot of Flash/Flex development and still do! I really like what ActionScript can achieve, much more so than messing with JavaScript and CSS/HTML. But, times are tough, so here is my proposal:
How about we setup an Open Source project to build Flash alternative based on Dalvik VM and some existing Android platform components. We already know that it’s very capable, and if Google is true to its mantra, they wouldn’t mind sharing! Why not reuse the great UI library and 3D API’s, and others, and bring them into the browsers on all platforms – Windows, Unix and of course, Mac and iPad/iPhone! Can’t we all just get along?! Plus with JIT for Dalvik, and potential for native hardware video acceleration on Windows/Mac/Ubuntu/Handsets, I see very bright future!
I am not ignoring Silverlight or HTML 5, I just don’t see either as viable solution. Silverlight is still proprietary and you need specific Microsoft tools to develop for it, while HTML 5 feels like a bit “future-ware” and even when materializes, it’s unclear that it can provide all the richness of visual effects, 3D support, overall speed and pixel level manipulation which we expect in this day and age.
But what about JavaFX you ask? Feels like DOA to me, sadly. I love Java, which is yet another reason why I think Android approach is great, but JavaFX is just “overweight” out the door, and many posted about other major shortcomings.
Plus true modularity is still not there with neither technology! Why are we (developers) still forcing users to go through complex installation ritual to get new software on a system? Why does it have to be a gamble, especially when installing complex applications, whether it will interfere with other applications on the system and break things?!
So, I want to see comments! I know it’s rather big project, so without some people weighing in as to it’s merit (or with offers of participation), I am not going to bother starting even. Besides, probably Googlers are already doing it, whether in their 20% or even as main task, who knows…
UPDATE: I just discovered that someone implemented Flash player in JavaScript!? I didn’t think it was possible, but it is seemingly done using HTML5 browser features in modern browsers. More details and browsers compatibility list on the Gordon project on Github.