So what are Adobe up to with Flash?

It has been an interesting week in the Flash world. Various announcements and clarifications about the future of Flash, which seem to add up to

  1. Adobe will stop development of the Flash mobile browser plug-in, but mobile operating system and hardware developers are free to continue developing on top of Adobe’s existing source code if they wish to license it from Adobe.
  2. The Flex framework will be freed from Adobe’s control, and will become more open under the guidance of an as yet undecided open source foundation which will include Adobe contributors and the Spoon project.
  3. Development of the Flash plug-in for desktop browsers continues as normal.
  4. Development of Adobe Air, including publishing for mobile apps, continues as normal.
  5. There’s renewed emphasis on the Flash platform as a platform for game development.
  6. There has been some movement of jobs on the Flash CS Professional team, but the team still exists and the next version of the product is in development.

There’s been a lot of hand-wringing as Flash developers struggle to figure out what this means for them. I don’t propose to resolve that here – what this means for you depends on both your skill-set and your job. But I guess if I had one bit of advice it would be, if Actionscript is the only development language you know it’s well past time for you to diversify your skills. Learning a second programming language makes you a better programmer in general, and learning a third, fourth, etc becomes easier with each language. I have lost track of the number of programming languages I have learnt, but each one has made me a better programmer.

What follows is merely my personal take on the situation. Make of it what you will. I’ll start with an important question.

Why did Adobe buy Macromedia?

For some time I’ve been meaning to write a blog post about why Adobe bought Macromedia (it only happened six years ago ;-)). I don’t actually know the answer, but I have my suspicions and they’re different from those I hear voiced elsewhere.

I suspect it is true that Adobe bought Macromedia to get their hands on Flash. This is a common assumption, and I see no reason for it to be wrong. There was nothing else in the Macromedia toolkit that mattered much to Adobe, except perhaps Dreamweaver which is now taking on renewed significance.

I suspect that the Flash platform tools (Flash Builder and Flash CS Professional) were not the target. These tools are for developers, unlike Adobe’s other tools, and are built atop a free plug-in which Adobe also have to develop and maintain. I also suspect the Flash platform generates far smaller profit margins than Photoshop, Illustrator and InDesign.

One reasonable suspicion is that Adobe bought Macromedia simply so that someone else didn’t. They didn’t want Macromedia’s design tools in the hands of a company with deeper pockets. This may well be true.

But my suspicion is, back when Adobe bought Macromedia, they looked at the application landscape and concluded, as many others did, that the future of applications was as web-based services. They needed a platform on which to develop web-based versions of Photoshop, Illustrator and InDesign and Flash was an obvious choice for that platform. By buying Macromedia, Adobe gained control of Flash’s development, and hence of the platform they proposed to use for web-based applications. This enabled them to move development of the Flash player in directions that they needed.

Unfortunately for Adobe, while they were following this strategy the world moved in a different direction. Six years later, the present is not web-based applications, it’s small, cheap, sometimes throwaway, native applications that use the web as a data source and nothing more.

Adobe were not the only ones caught out by this – Apple themselves, when they launched the iPhone, thought most phone apps would be web apps. They were just more agile in moving with the times and switching emphasis to native apps.

Adobe are making their move now. In fact, they have been for the last couple of years, but it’s only now that killing bits of the Flash platform (specifically the mobile browser plug-in) has become part of that move.

What now?

So now Adobe find themselves with a profitable, but not massively so, set of products in the Flash platform that don’t fit neatly within their product portfolio. I wonder if Adobe now wish they hadn’t bought Macromedia, but that’s all in the past. They need to make the best of the current situation.

Killing Flash on the desktop would be madness, although I suspect maintaining Flash’s 98% desktop penetration is now less important, and it’s a decline in this figure that will be the first indication of Flash’s true decline. But, while there’s money to be made and a reasonable profit margin available, the Flash plug-in and the tools surrounding it will continue.

On top of that, the one thing the development world needs is a good cross-platform mobile app development platform. Unity3d provides a good tool for cross-platform game development, but the best cross-platform tools for general app development are mediocre at best. Adobe Air is currently one of those mediocre platforms, and with sufficient work it could become a good platform for mobile development. I hope it does. It has a lot of merit.

It sounds like Adobe may have identified this need and the potential of Air, so it’s just possible that Actionscript developers have a bright future ahead of them. Time will tell.

Meanwhile, if you’re an Actionscript developer it’s high time to diversify in whatever direction makes most sense to you. Javascript/Unity3d/Objective-C/Ruby… there’s lots of interesting stuff out there. Go and have fun. But you don’t have to abandon Flash and Actionscript just yet – Adobe haven’t.

6 thoughts on “So what are Adobe up to with Flash?

  1. what are the other languages that you know? it’s exciting for me that know what’s your idea!

  2. just 3 months ago , Adobe said :

    “That doesn’t mean, however, that HTML5 is the right choice for all use cases – the performance, framework maturity and robust tooling provided by Adobe are cited as critical factors by enterprise customers as to why they continue to select Flex.
    We firmly believe that Flex is already the best technology for building complex, high-fidelity enterprise applications such as business dashboards, line of business tools, real-time trading applications and desktop replacement applications, and see leading companies in healthcare, financial services, communications and other industries standardizing on it. We will continue to heavily invest in strengthening Flex for enterprise use, ensuring that you can deliver expressive, robust applications. As we share more details about our upcoming releases, you’ll see our commitment to tackle areas such as Spark component completion, accessibility, build system integration, performance analysis tooling and integration of a next-generation compiler, making Flex the #1 choice for building enterprise-grade RIAs.

    Mobile – the next big thing for Flex”
    Now they said:

    Q: Does Adobe recommend we use Flex or HTML5 for our enterprise application development?

    A: In the long-term, we believe HTML5 will be the best technology for enterprise application development. We also know that, currently, Flex has clear benefits for large-scale client projects typically associated with desktop application profiles.

    Also, Now, Ben Forta from Adobe said:

    ” However, I’ll be the first to admit that (to my knowledge) there are not yet any HTML options that have the breadth and capabilities of Flex, and so Flex remains a viable and important option for many uses cases, and as Deepa and Andrew noted we are still committed to Flex.”

    see also in 2010:

    What an amazing Strategy Adobe !!!

  3. Pedram: Languages that I know that I think are currently relevant are Actionscript, Javascript, C, C++, Objective-C, Java, C#, PHP. Because it was interesting, I’ve studied but never used Erlang and Scala. Less relevant now but also studied are Fortran, Basic, BCPL, Forth, Pascal, Assembler, Lingo, Perl, the last three of which I used a lot at one time or another in the past.

    If all you know is Actionscript, you need to consider what area you want to work in. For the web, Javascript will be essential, with jQuery and various other frameworks and toolkits. For games, I would look at Unity3D, including Unityscript and C#. If you’re interested in server-side development, consider Ruby, Python or PHP. And for mobile app development, try Java for Android or Objective-C for iOS, along with publishing from Actionscript to Air for mobile.

  4. Ryan: I’ve heard a lot of talk about Haxe recently, and it is an interesting proposition. I’ve never used Haxe myself, mainly because it’s developed by one individual and, brilliant as Nicolas is, if he decided to do something else it seems almost certain that Haxe would die. That makes it a difficult technology to base a company’s entire development programme on.

    However, recent developments with Adobe and Flash remind us that the same is true of technology that’s owned and maintained by a single company, so maybe I should worry less about the lack of diversity in the Haxe development team.

Leave a Reply

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