Future Of Flash

Flash Is Dead!

Or so you’d think. It’s been a fascinating couple of days in the Flash community. Everyone has had their say. ZDNet are telling everyone that Without Mobile, Adobe Flash is irrelevant. CNN talks about the Beginning of the End for Adobe Flash.

Adobe Shrinks!

This week, Adobe laid off 750 jobs. We should remember that 1950 jobs have been lost at Adobe in the last three years now (600 in 2009 and 600 in 2008 – from daringfireball.net).

Part of this was belt-tightening was the entire US-based Flash Authoring team. This article blithely jumps from this premise to the conclusion that “offering a free Flash Player runtime subsidized by selling tools is no longer a business Adobe is interested in”. Does it? Had Adobe said that they no longer have that business interest, then things would be a lot clearer. They haven’t said that at all. The media and the community is jumping to apocalyptic conclusions. (The community should know better)

Tired Communities

Last night I watched a chunk of an online meeting about the Flash Platform of about 80 developers, that notably included @seantheflexguy, @j0eflash, Lee Brimelow and Thibault Imbert.

The most noticeable thing about that conversation for me was the exasperation and ill-feeling in the room directed towards Adobe. The Flash Platform Community feels that it has been ill-treated by Adobe.

On one level, that’s absurd. Without Adobe the community would be fragmented across myriad other communities. Adobe’s investment into the platform is a primary reason the community exists. For many years now, Adobe has given us tools that allow us to make best-in-class products (or bad, buggy products as per our abilities) and display them on the web, desktop and mobile.

Diluting Juice

There has definitely been a dilution of Adobe’s lead in the interactive experience space. HTML5 has taken a lot of the wind out of Flash’s sails. The player performance on Apple products has been frustrating. The gradual loss of Flash’s performance advantage against other platforms has been demoralizing. But it is hardly surprising that other platforms and developers have looked at what Flash did right and have tried to implement similar functionality targetting other platforms and other languages. What would we have Adobe do about this? Somehow continually out-compete all other vendors? If they don’t, should we consider it a betrayal?

Buoyant Communities

Right now, if you attend a JavaScript developer meetup there are a hundred kids in their 20s inventing the stuff we invented over the last decade (a lot of which was invented before us for other platforms, of course). They’re excited and young and vibrant.

At the equivalent Flash developer meetup down the street the picture is very different. There’s a mash of artists, Flex developers, game developers, developers who make banner ads for platforms, developers who use Flash to produce graphics for massive stadium gigs for rock stars. Meetup after meetup fewer developers attend, they are older, less enthusiastic, jaded.

So the apocalyptic conclusions are understandable, if misguided. You can understand why developers might be angry with Adobe, having watched the platform lose out to the new kids on the block over several years. Now it feels that Adobe have finally admitted as much, they are venting that frustration.

Flash Is Alive!

Could it be that the Flash Player has tried to be all things to all people? That the banner ad guy, the RIA guy building data grids and the game developer are all targetting the same platform could be a problem. Add into that mix a requirement that these games, RIAs and ads display on every browser on every desktop, but also on every browser on every mobile, and you can see what a headache Adobe has been contending with over years.

The rise of HTML5 simplifies this issue: gradually, banner ads and simple RIAs will be doable in pure JavaScript. That may upset a lot of Flex developers, but seriously, if you can actually do it better on another platform, wouldn’t you?

But games, and those more powerful RIAs that really juice the Flash Player are not going anywhere. They need not only the current Flash Player, but a beefed-up, more aggressively powerful Flash Player. These apps may remain in the browser for desktops, but will take over the screen on mobiles, wrapped in an AIR wrapper.

Flash Player can still deliver a particular set of experiences across desktop and mobile better than any other platform. The stats about Flash Player are indisputable and compelling. In an attempt to make bolster their business case against the brunt of criticism this week, Adobe published some of these stats.

Everything dies, even the Flash Player. Just because it isn’t a kid anymore, doesn’t mean it’s dead, and these stats demonstrate it pretty convincingly.

Where Does Flash Go?

Thibault Imbert wrote an article yesterday called Focusing, in which he made the case that what has happened this week is a good thing. I broadly agree with this commentary, if this frees up the team to innovate on the current Flash Player.

I have been arguing the case for generics in AS3 so long that it has become a standing joke. AS3 should also adopt inline functions, enums, typedefs and every other good idea that Nicolas Cannasse has baked into haXe. In fact, Adobe should have brought Nicolas into the fold long ago, and would be well advised to do so now, if they can. This sort of language innovation would free-up the open-source developers to create better, faster tools and architectures for other people to build their games on.

They should also be working hard to develop better tooling. That FDT remains broadly better than Flash Builder should be a cause of embarrassment. That we have to use a creaky buggy platform like Eclipse in the first place, when we are using tooling from the company that leads the world in creating tools for creative professionals is continually frustrating. It makes you think that they still don’t really understand what coders want.

They need to continue to improve the performance of the player and the compiler. That people are still doing things like byte-weaving or using Apparat means that Adobe continue to miss really simple tricks in this area.

Conclusions

The community has gone nuts, but you can understand why. They’re mostly wrong, and are probably largely jealous of those JS script kiddies who seem to be having so much fun! But, they also like their not-quite Java, not-quite JS middle-road language, and want to stick with it. They want Adobe to help them stick with it. Adobe are helping! It just doesn’t feel much like it, because Flash isn’t new anymore, and like all old things, it has its problems.

After a week or two, calmer heads will prevail, and the pendulum will swing back. People will think to themselves “when was the last time I used a Flash app in the browser on a mobile?” and also think “wasn’t the Flash IDE mostly junk?”, and on reflection, may even have something positive to say about Adobe.

Did I miss anything?

2 thoughts on “Future Of Flash

  1. I love the way Flash handles graphics and code so interchangeably. Flash IDE allows us to develop OO graphics with inheritance, and AS3 is lovely to draw with.  I don’t know much about HTML5/JS (yet) but until it can do ‘public class SpinningVideoCube extends SpinningCube’ in one line of code, I’m going to be very cautious about how long it will take to develop something in it.

    Mind you – now that Illustrator can create MovieClips and swfs, I’ve almost eliminated Flash IDE from my workflow entirely, because as a drawing tool it’s really not very good.

  2. At the FlashInTO user group meetings in Toronto, there’s always plenty of fresh blood in the mix. Mainly because the college computer teachers have had a relationship with the user group and point it out to new students.

    That mention aside,  I think there’s plenty of cool things going on in the Flash world, such as Stage3D and native extensions in AIR. However, what I think many developers are upset about is the upwards battle when dealing with their clients and bosses. It seemed that many were beginning to come around and Adobe AIR mobile was starting to get a lot more traction. Unfortunately, a lot of ground was lost because of Adobe’s fumbling the PR side of things. At times it doesn’t matter what the platform is capable of, it matters what the public or at least the ones who writes the cheques. The current perception is that Flash is dead or dying technology and puts a lot of developers in really difficult positions.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>