Android, Desktop Flash Player, Flash 10, Flash 11, Flash Enabled Devices, Flash Lite ports, Operating Systems, Processors- ARM January 25th, 2012
Much is being debated about Adobe’s decision to end life for Flash mobile. Remarks have ranged from ‘didn’t Steve Jobs say so’ to ‘what the *#$$’ to ‘I feel like I’ve been let down by Adobe’ and so on. While I am sure Adobe has its own reasons, but in my opinion, it simply came down to ‘Return on Investment’. Now keep in mind, we are Adobe’s scaling partners. So our goal is also to make profit with Flash player (identical to Adobe’s), and have experienced every pain that Adobe has. In this capitalist world, goal of any business is to create ‘value’ in exchange of the ‘effort’ one puts in. In this case, it was just a matter of deciding whether the return on investment on Flash was worth the effort. Ultimately Adobe decided to follow route that would generate dollars as a business and in the process ended up killing Flash on mobile.
First, lets look at it from pure technical perspective. Developing, enhancing and maintaining Flash player is extremely difficult process in itself. The amount of technology that is use in Flash is overwhelming. (Where do you think all those ‘cool’ features come from??). Now multiply that difficulty by number of different operating systems (Android, Windows Mobile, QNX….), number of CPUs (ARM, MIPS, X86), number of platform versions (Froyo, Gingerbread…..), number of Flash versions (Flash 10/11, AIR….) and we are looking at a nightmare scenario. To support this kind of product, you need strong engineering organization, alongwith support, QA, and other functions - a big investment indeed.
To further complicate things, Adobe decided that every Flash player must be ‘certified’ that made sure that all features of Flash are tested thoroughly. Now the test suite has more than 2000 tests, and failure of test number say 146 often required drilling down from application to OS to device driver and sometimes even hardware layer. This often resulted in delayed Flash release to market. To top it off, even after certification, there were still one or two instances where Flash did not behave as on desktop and got bad publicity.
Embedded world is fragmented and a single player would never have worked on numerous devices out there. Compare that with desktop which has a single (or may be two) dominant OSes, a single CPU architecture and pretty much standard interface for OS/device drivers. Since Flash on this platform is being developed for several years, all the pieces to develop, maintain and enhance are already in place and a single binary works on millions of desktops around the world. (This may change in the future if and when ARM becomes dominant force in desktop market but your guess is as good as mine on that front).
Now, to the business part. Adobe makes money by selling tools and infrastructure around Flash. Clearly Flash developers were not sure on how to create content for mobile and naturally few purchased Adobe tools to create content on mobile devices. So the equation ‘if Flash is installed on X million devices, Y number of CS5 seats are sold’ simply didn’t hold. To add to that, it became pretty clear that key mobile device OS manufactures will not follow ‘plug-in’ model in the future- so the future did not look great for Flash player on mobile.
Therefore, Adobe had to make a hard decision whether to continue investing in Flash or look for other ways to monetize their products. Clearly they chose the later option. I am sure new products and services are being hashed out by Adobe based on Flash technology at the moment and we’ll see announcements in the future.
In the meantime, we (scaling partners) will continue to work with existing customers on ongoing Flash player requirements. I mean let’s face it- there is no alternative to Flash on internet today. If you are providing internet enabled device, you still need Flash to augment the value. Adobe has given time until next year to ramp down and essentially move away from Flash. What happens after that? Its anybody’s guess!