The Rumors of Flash Player’s Death are Greatly Exaggerated

This morning ZD Net published an article stating the Adobe will cease development of Flash Player on Mobile in favor of packaging mobile applications in Adobe AIR.

The Flash Player haters quickly picked up this news and to draw attention to their blogs/tabloids started to cash on Steve Job’s name stating that he won the battle with Adobe since Steve was the one who didn’t let Flash Player on iOS.
As of now, I don’t know if these rumors are valid, but even if they are, this ain’t breaking news. Let me explain why in three simple sentences.

1. Adobe AIR includes Flash Player
2. Adobe AIR remains the main and the only means (at the time of this writing) for development of cross-platform mobile applications
3. Adobe AIR 3 Captive Runtime is a way of packaging the runtime inside the mobile application.

In other words, a mobile application developed in Adobe AIR and deployed in Android or iOS has inside the entire AIR runtime (this increases the size of the app only by 6-8MB) and won’t require neither iOS nor Android to ship the proper version of the runtime separately.

Once again, your mobile application has AIR inside, which, in turn, has Flash player under the hood. Machinarium is a good example of a console-quality game for iPad written in Adobe AIR.

The only question remains what will happen with Web pages that includes the videos requiring Flash Player. Most likely Web browsers will use HTML5-based video players. But let’s not confuse mobile applications and Web sites.

Anyway, no need to mourn. Have a wonderful day!

Update. The morning after

Next morning, Danny Winokur, Adobe’s VP and General Manager published a blog confirming the information from Adoleaks. This caused a storm of posts in the blogosphere, which predominantly blamed Adobe for betrayal. Peter Elst, an independent Flash developer even started gathering signatures to have Adobe CEO realize that he’s a bad guy and step down.

Our company, Farata Systems, has been working with Adobe’s product that were relying on Flash Player for more than five years, and we managed to build great relations with lots of corporate customers who used our services in building Flash-based rich Internet applications. After the announcement we started getting questions – was Flex the right choice? Can we reuse our investments in Flex in the mobile space? Should we abandon Flex and switched to HTML5 and JavaScript?

Adobe have caused serious damage to their image by having Mr. Winokur writing this infamous blog. I’m sure the top management of the company has approved it so Danny Winokur bears only a partial responsibility for this. My question is why Adobe decided to use one person’s blog for spreading this rather important news instead of publishing press release prepared with collaboration with their PR agency? Were their top executives ashamed to state it in a manly fashion?

Can you imagine the president of the USA making a war announcement by posting a blog? Adobe just did it. Professionally prepared press release could have include the proper wording along with the quotes of industry analysts who would offer their interpretation of the news. Have anyone seen an official PR on this subject? I didn’t.

I guess, after Adobe’s executives realized the size of the damage caused by that unfortunate blog (I hope Mr. Winokur is still employed with the firm), they asked other managers and technical evangelists to save the situation. Have a read:

1. Your Questions About Flex by Andrew Shorten & Deepa Subramaniam. Nice try, but these guys failed to deliver the main message: Adobe AIR 3 is a solid replacement of Flash Player for the mobile.

2. Adobe’s technical evangelist Lee Brimelow has mentioned AIR, but has deliver another wrong message, “No longer having to support the mobile browser version of Flash frees up valuable resources that we can redirect to these more important areas.” This is yet another mistake. Does Abobe put their customers first, or the most important goal is to do a reorg after laying off 750 people?

3. Mike Chambers, the lead product manager, speaks about AIR, but this message can be understood only by techies, and not corporate clients who were sitting on the fence trying to decide if they should develop with Flash or go with HTML 5. And we are talking about the corporate world that brings a huge portion of Adobe’s revenues.

Why people didn’t realize that Steve Jobs was heavily promoting writing pixel-perfect applications for iOS-powered devices, not Web pages? Adobe AIR 3 fits this bill. And as I wrote earlier, replacing engines in the browser-embedded Flash videos with HTML-5 one is not a major undertaking. So what the mobile world as the result of this misinterpreted Adobe’s announcement? Nothing. MXML, ActionScript, Flex framework, and AIR 3 remain the tools of choice for cross-platform mobile applications.

When HTML5 can be considered as a main choice for development of applications for both mobile and desktop platforms? It may happen several years from now. It’s great that Adobe is working into this direction, but they should have done it in parallel, not by stopping development of Flash Player without offering HTML5 alternative.

Anyway, the damage is done. Adobe spent years to become a recognized tool maker for the enterprise developers. Five years ago they were known as a company that created Photoshop. They managed to change this image. I really hope that they will find a way to remain on this market.

Here’s my message to Flex, Flash, and AIR developers:

“All IT shops that have invested in learning Flex or ActionScript for developing their desktop-based Rich Internet Applications will use these skills in development of the mobile applications in Adobe AIR. There is no need to jump the ship”

Update 2. After publishing this update I’ve learned that Oliver Goldman, a tech lead from the AIR team has been moved to the team that develops creative cloud. It’s time for Adobe to give away AIR to open source too.

Update 3. Two weeks after the infamous blog of Danny Winokur was published, Adobe made a statement explaining its upcoming strategic transformations.

16 Responses

They did promise flash lite, then flash on mobile.. It is just like they are trying to prove Jobs was right. I am not sure if they really believe and invest on Air. Can they really catch up with Google and Apple to implement new APIs?

Yakov, you say: “Really? Who’s ready to start the development of their next cross-platform enterprise project using HTML5 and JavaScript? Does Adobe or any other company has any production-grade solution in this area? Would love to hear about such tools”.

Furthermore, I would even prefer to redevelop some existing frontend applications to HTML to reduce dependency on the unstable platform.

That is why I am looking for the right replacement.

Developing HTML applications “from scratch” is not an option at all, because this technology is not suited for application development.

So I’m looking toward frameworks and middleware.

Although jQuery looks like a standard de facto in HTML applications world, I do not like it first of all due to lack of its own components (3rd party plug-ins from Vasiliys Pupkins is not the way to go).

A lot of other frameworks have the same disadvantage and they are less popular than jQuery.

At the same time Google GWT approach seems much more interesting to me as it allows to develop frontend applications in Java that is much better than JavaScript as for me.

With Ext GWT from Sencha it is quite close to Flex SDK possibilities, although still far from silver bullet.

Whatever, it is better than nothing.

I hope ActionScript and MXML will go in that direction with sort of new framework to replace DisplayObject derivatives with some HTMLObject hierarchy and eventually the possibility to develop Flex applications which are published to browser, not Flash Player.

Sergey, you wrote “I can’t afford deep involvement with Flex”. IMO if you’re a professional Flex developer (people pay you to develop Mobile apps) you can’t afford using anything but Adobe AIR. You can’t afford to have two teams developing and maintaining the same app in Java and Objective-C.

When Html5 will offer the same results and tooling as AIR3 today, I’ll reconsider. Meanwhile it’s just too costly and risky to use Alfa-grade technology for the real-worrld development.

On mobile we develop native apps for iOS. Unfortunately, in our specific case we have some performance challenges which we have to address even on native.

With Air we just can’t achieve some crucial functionality.

But I admit that there are plenty of cases when Air is the right tool for cross-platform mobile development.

My comment is more about complex enterprise web applications targeted to browser.

Although Flex is still the best choice for me in that scope, I just feel uncomfortable when Adobe says: “In the long-term, we believe HTML5 will be the best technology for enterprise application development”.

With such a statement from the people behind the Flex SDK I will have a hard time advocating technology myself.

There is so many haters of Flash and although most of them are ignorant, this attitude makes an impact.

We came up with a solution for Android, where AIR talks to a native API via a Java server running on the same device. I suspect that our solution can gain popularity if Adobe decides to pull the plug on the native AIR extensions. We have no such powerful solution for iOS though.

The only answer I can offer to your “What should we do?” question is this: “Count your money and decide what’s cost effective for your next project”.

Let’s see. Adobe decided to make money on services like Cloud-based Photoshop-Touch that runs on tablets, desktop – everywhere. Did you notice Ben Forta’s twit during the MAX Keynote: “Why do you think all these apps are not made with AIR?”

In addition, by popular demand, Adobe will make extra money on a framework around HTML5. When it is ready.

If you recall, Flex component development have been dangerously slow even since 4.0. Developers have been developing their own components left and right.So what changed here?

I am an application guy. My company always have been in the application development. So here is my vision: it is not HTML5 vs Flash. It is expanding world of new applications vs contracting world of legacy ones. New ones run on mobile, TV and, consequently, on new generation desktops. New apps make up the new market.

Legacy Market Street is still around browser-based applications. Did you see how ugly is a browser-based app on your tablets: buttons are smaller then a finger tip, soft keyboard eats up all real estate that remains after the chrome, scrollers are confusing, etc? And does it matter if the legacy app was done in HTML or Flash?

OK, here is another way to look at it. If you are a developer: compare rates offered these days for Android or iOS development with the rest of the market. If you run a business: can you can afford developing multiple software for Xoom, iPad and PC?

At a time Adobe capitalizes on AIR. So is Farata Systems: for the last 1.5 years we design and develop “mobile first”.

Oliver is the best guy for twisting AIR to accommodate Adobe apps needs. Evolving a product around a specific project’s needs is a usual practice. Evolving AIR around Adobe cloud may turn positive for everyone.

I think we all can agree that HTML5 is not for Enterprises. In the short term companies will hire Farata to port Flex to both Android and iOS using native toolkit ( as expected early adoption/hedging always pays off). In the long term, we need to talk internally how much business needs to be moved to native platforms, and how much can sustain the current Adobe direction.

I would start offering training in native platforms for former Flex developers right away. Seems like much needed book as well.
We need to help this great community to weather the blow. I see number of client’s competing teams that spent the last 10 years developing HTML3 solutions taking over RIA place with obsolete technologies just because Adobe screwed up their transition policy. We need to provide community with viable productive path without sacrificing functionality.