4 YEARS AGO – “A DECLINING ASSET”
I’m working at a technology startup and today I am talking to one of the founders. He looks at me and says, “Our main product is a declining asset.”
This is the product that generates 90% of our revenue and pays both of our paychecks. It’s the one that made our company a success, put us on the map.
Uh oh.
NOVEMBER 12, 2011 – ADOBE’S BIG IDEA
If you watched the Digital Media section of Adobe’s recent analyst meeting, you know that Adobe is putting a lot of focus on HTML5. Their recent announcement regarding dropping mobile web browser support for Flash Player caused a lot of turmoil, too, along with a shift in direction for the Flex SDK, their enterprise app framework.
If you look at the marketplace and the technologies at play, it seems that Adobe has realized that Flash’s position in the marketplace is eroding, that the erosion probably can’t be stopped, and they need to treat Flash as a declining asset. Just to review, here are some reasons that Flash’s position is eroding:
- The many 3rd party mobile, native, and web-targeted development tools like Corona, Moai, Unity and others.
- Non-Adobe Flash runtimes like Scaleform, Iggy. Companies like The Behemoth have their own Flash-compatible runtimes, too.
- And of course the big one – HTML5. It can handle more and more enterprise apps, animation/multimedia content, and 3D. Browser vendors are in competition but increasingly targeting Flash-like capabilities.
Long term, HTML5 and other non-Flash technologies are unlikely to go away. Adobe may as well be proactive about owning the space rather than fight an unwinnable battle to keep everyone on Flash.
One more point to consider: Flash is made up of three big pieces. You have the tools, like Flash Builder and Flash Pro. You have the runtime, like the web plugin, the standalone player binaries, and AIR for desktop and mobile. And finally, you have the platform itself – the file formats, AVM specification, compilers, and APIs that define the behavior of Flash content.
They are all independent to a greater or lesser degree. The only part that probably wouldn’t migrate to HTML5 is the actual runtime (but see Gordon). And Adobe has been rumbling about compiling AS3 to JS/HTML5 and supporting C via Alchemy 2.
LABELS AND COMMUNITIES
Now, the funny thing about that conversation from four years ago is that, because of the mental label of “declining asset” we assigned, (at least) two interesting things happened. First, the company got acquired and tried to diversify into a couple of new markets. Second, I along with a few other guys left the company and went on to start a new one.
But the “declining” product continued to make more money than ever before. And in fact, it lives on today, despite the original company getting liquidated by its owner when the diversification strategy didn’t work out. So what does it mean, exactly, to be a declining asset?
I think “declining asset” is a label you put on something to help you make decisions. In Adobe’s case, the decision they made was to move their long term focus toward HTML5 and away from Flash Player.
There are some important things to keep in mind with the communities that develop around technologies and products. First, realize that the conversation is often dominated by the vocal minority – so what is said most often and loudest often doesn’t reflect on the actual needs of your user base. Second, realize that the people who post on your forums are emotionally invested in the product, have it as part of their identity, and they will be deeply unsettled by any signs that support is fading. Finally, realize that users often have a limited perspective. Community members are not tracking major market trends, they are looking at how they can meet their immediate needs (like getting contract work or finishing a specific project).
In other words, the community tends to act like a mob.
And I saw no better example of this than when I was on a group video chat last week and saw Flash professionals practically weeping, calling out Adobe representatives, demanding, threatening to break up, over these announcements. It was more like seeing your drunk friend vent over his ex-girlfriend than it was watching a group of well-respected developers discuss their future. Everything is in a turmoil, it’s the end of the world, everyone is screwed, etc.
REPORTS OF FLASH’S DEATH
Ok, but that isn’t actually the end of “Flash” as a whole. Probably. Even though it really sounds like it. Let me explain.
Adobe has a ton of outs from this situation that let them preserve their and your investments. The most obvious out is replacing Flash Player with HTML5. You export from Flash Pro or Flash Builder and it runs directly on HTML5. In fact, they have been inching towards this in different forms for a while now (the conversion tool on Labs, Edge, Muse, etc.).
Even if they drop AS3 and go with JS, their tools can still be useful. If Flash Pro can still create banner ads and interactive experiences for a large audience, who cares what the output runs on? Life will continue relatively unchanged for a lot of Adobe customers.
There’s also a more subtle out:
HTML5 has its weaknesses. Lots of them. But public opinion supports it. Maybe it’s just a Betamax vs. VHS difference. Or maybe HTML5 is doomed due to the conflicting goals of vendors and the difficulty of the implementation task.
Maybe HTML5 ends up being great for less demanding uses – like basic enterprise apps, ads, motion graphics, etc. – but can’t get it together for highly demanding and integrated stuff like games. Adobe can keep Flash around and focus specifically on the game use case – which, by the way, is also highly beneficial for non-game apps, since they tend to use subsets of game functionality – and get as much value from it as possible for as long as possible.
Between the games angle and inertia, Flash could remain relevant for years. It could even end up totally dominating that space for a long time to come, even as HTML5 takes over the bottom of the market, due to being able to be more focused and agile.
CONCLUSIONS
Let me add two caveats. First caveat: At some point you can only expect so much out of a platform – you can’t get a guarantee that it will remain relevant for ten years. Even proven, still-relevant technologies like C have had their death announced many times. At some point you just have to say, “well, N years more relevance is good enough and I’ll re-evaluate in a year.”
Second caveat: Maybe Adobe screws the pooch and that’s that. Maybe they cut too many resources from Flash. Maybe they don’t build good stuff on HTML5. Maybe they ruin everything. So don’t bet the farm. Make sure you learn a few different technologies well. It will make you a better developer, even if you still just do Flash work day to day. And you’ll sleep easier knowing that if worst comes to worst you have an out. I’ve never seen a successful programmer regret having learned a new language or paradigm.
I don’t think Adobe is making bad decisions, just difficult ones.
Bottom line: Flash is a declining asset, but declining assets aren’t dead or even out of the fight. Everyone needs to look at technologies on their merits and see if it’s a good fit for your needs. There are a lot of places where Flash will continue to be a good fit for a while to come – and the places where it is ambiguous deserve careful consideration regardless of Adobe’s stated plans.
(Thanks for reading! If you liked this article, please consider voting it up on HackerNews or Reddit)
I honestly think that Flash was purposefully targeted by the big boys in the industry because of competitive reasons. Period. Jobs was the leading hit man that finally was able to do what had been tried for many years; kill flash. It ended up being successful because of the popularity of the Apple mobile devices and because of a lack of willingness by Adobe to really fight for the platform for the long haul. The point is that it’s a great technology and it’s actually fun. The problem is that it’s toouseful and wide spread and it’s independent so the big boys had to do everything they could to take it down. Adobe merely couldn’t handle the media battle any longer, too much hating when it should be excitement about fun technology. Just think about it if you are a flash developer. For me things were very positive and exciting for Flash until Jobs went negative. It’s as simple as that. Html5 won’t even be.finalize until something like 2014. Compare that to yearly releases by a private company. we’re generally just to nice. this whole situation is a sham and we all know it. Flash is something totally different than hypertext markup language.
This article should be titled. Flash developers & Flash haters should know…
Very good article..
Hey Ben, I really like this article. Out of curiosity, do you think using Flash as a downloadable game app development tool is a good investment? I see promising things developing, but I’m worried that I’m looking through rose-colored glasses.
I think if you are looking at downloadable game it becomes less appealing. But games like Machinarium show that you can deliver a great product within the constraints. Mostly it depends on your areas of expertise and what kind of experience you want to deliver. If it’s a good fit for Flash today, why not build it there?
What about Stage3D? I thought this was a game-changer for performance…
This expands the possibilities, but it is not up to par with native. Ultimately you have to run some tests before choosing a tech – and this applies for ANY option, including so-called high performance native code. (I’m not saying that to imply that AIR is way better, I am saying that to imply that people can write bad native code and call it “high performance”.)
Contrary to popular belief, Machinarium is not a succesful use of Flash/Air because it only runs on iPad 2. If the developers had chosen a better, hardware accelerated technology, their product would run on more devices increasing their revenue and market penetration.
Considering Machinarium was released a year and a half before the iPad 2, we might not need to dismiss popular belief just yet.
Sorry, I was referring to the iPad version that was released in September.
I know that. The iPad version is made from the same source as the PC version. It exists because they chose AIR as a platform.
Great post Ben, and thanks for the shout out to Moai.
I agree that HTML5 is not going to be the panacea for all apps, because frankly it is a poor fit for most games, which are the majority of mobile revenue right now.
From a technology perspective, the majority of game developers are not Javascript fans in my experience. HTML5 came out of the Internet space and is enabling Web coders to create games, not game coders. There is a big difference.
For the most common style of mobile games (e.g. graphics intensive, physics, animation` etc) , HTML5 and Javascript just don’t have the horsepower. I’m tired of seeing HTML5 game demos on powerful desktops and being told that performance on mobile will be like that ‘real soon now’. Moores Law doesn’t really solve the problem because (a) it doesn’t solve the technology fit problem and (b) high performance mobile hardware just raises the bar overall for performance of game apps. If you rely on Moores Law, you always end up a couple of years behind state of the art.
Yup – I agree. HTML5 is going to come up from below. Maybe someday – like in 5 years – it will do everything you can do in Flash today just as well or better. Luckily, it can be a big success without completely replacing Flash.
If HTML5 is going to be the thing, so be it. I don’t care. I love Flash and have been using it from the beginning. It has made great strides over the years that made it better and better with every release. I worry that an open source language won’t improve at nearly the same pace. I just am so tired of hearing how Flash is a CPU hog and thats why it runs slow on mobile browsers. Mobile browsers run slow because they are SLOW! I have a game engine that can run between 80 and 90 frames a second on the desktop using HTML5 canvas, but runs somewhere between 2-5 frames per second on most mobile browsers. That difference is just too big.
You cannot expect the desktop version of an app to have the same performance on mobile.
My problem with Flash is actually with Adobe because they promised a Mobile version of Flash. And I was willing to rewrite the entire desktop game/app for that mobile version. At least is was still Flash. I was still able to use my expensive tools, I was still able to use my knowledge.
That’s exactly my point. How can you expect a “mobile” version of Flash to run when native browser markups and languages (javascript and html5 canvas) can’t even run. The mobile browsers are just too slow right now. In a year, that may all be different.
Now and in the near future, mobile devices and mobile development will drive the innovation in the industry. Sadly Flash is left out – people need to make mobile apps and prefer to have a single code base (or at least as few as possible) for all the devices (phones, tablets, net books, desktops, etc).
The problem is that Flash becomes a niche.
And Adobe doesn’t seem to have a clue about what really matters today. As a Flex developer I was very disappointed when Flex 4 turned to be much slower than Flex 3. Or with Flash Builder that is the only software able to block my desktop while compiling.
How can I explain my issues to a user with a little smartphone where all the apps are blazing fast? How can I explain him that I’m not bloody able to code a fast Flash app? That his desktop quad core CPU is useless since in Flash there are still no damn threads?
You seem very personally invested in Flash being a good choice for mobile. Why is it important to you that it be a strong mobile option? Why is it OK for you to be bitter that Flash is a bad mobile option, but there’s no one complaining that C is a bad choice for web deployment?
Regardless, I agree with your assessment and complaints and I think these sorts of things are major reasons why Adobe might consider Flash a declining asset. There’s a reason why I was able to easily list 2-3 very credible non-Adobe options for mobile dev in my post, and why Adobe has acquired PhoneGap.
Semi-relatedly: I don’t think that “free” portability is real. There’s always a cost to delivering high quality ports to many platforms, and technology can help reduce those costs, but I don’t think it can remove them.
Why is it important to me that it be a strong mobile option?
“First and foremost, we believe that speed is more than a feature. Speed is the most important feature. If your application is slow, people wonβt use it. I see this more with mainstream users than I do with power users. I think that power users sometimes have a bit of sympathetic eye to the challenges of building really fast web apps, and maybe theyβre willing to live with it, but when I look at my wife and kids, theyβre my mainstream view of the world. If something is slow, theyβre just gone.”
http://thinkvitamin.com/web-apps/fred-wilsons-10-golden-principles-of-successful-web-apps/
Why is it OK for you to be bitter that Flash is a bad mobile option, but thereβs no one complaining that C is a bad choice for web deployment?
As far as I knew Flash=Web. I was wrong Flash=Windows and Mac desktop only web. That hurts several thousand dollars and several years later.
Yes, “Free” portability is not real. But there is a fine difference between a couple of OS related tweeks / settings / hacks and an entirely new programming language and technology
I don’t follow. Why is “speed” the reason why Flash should be a strong mobile option for you? That sounds like a quality it needs to BE a strong mobile option, not a motivation WHY you want it to be one.
As for Flash = Web… Well, some web pages are still written in HTML, and for various reasons Adobe doesn’t support some platforms (for instance, Linux is the classic marginal case). Given that most mobile browsers don’t have solid plugin support and require vendor support, is it a surprise Adobe has decided it’s a bad place to be?
Well – yeah, I guess it is based on your reaction. π This is why it’s important to take a step back and look at this stuff with a critical eye, not just read Adobe’s press releases. (And I say that with a lot of love for the folks on Adobe’s PR/Evangelism teams.)
Let’s just say I was seduced by Flash apps ability to look, feel and work the same an multiple platforms. At first it was a dream and I was willing to overlook its weak points, hoping they will be fixed in the future. Now I see how naive I was and you know is a little frustrating.
I don’t understand the problem here. Maybe this is a bit of my own aversion to Flash seeping in and I fully expect to get flamed for this, but Flash has had a pretty marred history with performance and their track record for quickly supporting new platforms has always been spotty at best. If speed and platform portability are your main concerns, why would you be working with Flash to begin with? Sure they’ve been slowly improving the player, but the popularity of Scaleform for real-time applications speaks volumes. I’m glad to hear that they’re going to focus resources on improving the PC player rather than spreading out those resources trying to support various mobile platforms.
Flash can be totally adequate for some apps – it’s a trade-off of performance vs. penetration, right? But in my world (see book link at top left of page), performance is something you measure with real world experiments, not something that you get sold based on what a marketing guy tells you.
This is where diversification of skills is really useful, right? Since I have a background in C/C++ it wasn’t a big deal to look at Tamarin and other info on the Player and get a very clear idea of the performance and the kind of paths the Adobe engineers were pursuing to get better performance.
Great article, Ben. It’s an excellent comparison. It seems to me that both cases show poor product management leading to loss of market share, rather than external changes in the market leading to product decline. Until more recent years, Flash remained fairly idle with myriad significant issues long enough to allow itself to be surpassed, and I think the same could easily be said for the other unnamed “declining asset” you’re *probably* referring to. I think moving forward, both technologies have a bit of an uphill struggle ahead of them to secure or regain their status, and no matter how that shakes out, that process of competitive development will invariably lead to better tech for everyone in the long run.
I agree, Flash and HTML5 have an opportunity to compete with one another nicely, and I hope this leads both to be better. The worst thing that could happen would be for one to roll over in favor of the other.
Well put.
I enjoyed reading this, Ben. I’ve worked mainly in Flash (code — not graphics) since 1998, and it’s scary to me the idea of having to give up OO and try to migrate what I do to JS1.5. Not that it can’t be done — as a way of proving to myself that it was possible I sat down when Canvas came out and just tried coding an animation framework (strikedisplay.blogspot.com) to replicate some of the functionality I was used to. But then speed became the obvious issue, along with the clunkiness of trying to write large apps with the DOM and JS alone. It just feels a lot less elegant, and everything takes more work. So I haven’t (and won’t) give up on AS3…my main project right now is an all-Flash gaming site with hundreds of classes, not including Away3d which it runs on. I’m coming to terms with the fact that it’ll never be portable as-is to a tablet or mobile; but maybe that’s okay, because in this particular gaming space, it’s more still common to force people to download windows executables, and the idea of having it in-browser at all is still relatively innovative.
I think tagging technologies as “declining” is putting the cart in front of the horse, as you alluded to. The point of building apps and tools is to make something useful or fun, and if you’re always waiting for the next technology to mature before you start a project (or always going back and rewriting for the latest tech halfway through a 6- or 12-month development process), you’ll never ship anything.
I once had a client request a huge multi-franchise management app, about six months before AS3/FP9 was slated to come out, before the language specs were publicly available but right around the time we all knew it would be a radical change in the language. Flash was the only real option for this app as it had to be networked across a few states and the franchisor couldn’t dictate what platform the franchisees ran in their back offices. So it had to be cross-browser. At the time, I wanted to delay writing it until AS3 was available. I still *wish* it wasn’t in AS2 every time I maintain it. But 5-6 years on, it’s still trucking, and I doubt it’ll go out of use in the next five years.
What really scares me is, as clunky as it seems looks now in AS2, I would never want to write that app with only JS and HTML5, and try to make it uniform cross-browser (most of these franchisees run Internet Explorer anyway). Not that it absolutely couldn’t be done, but I don’t think it would be as nice, it would take twice as long to write it to degrade properly, etc. Like a lot of things it’s suggested HTML5 could replace Flash for, it would be an exercise in bending a technology too far to do something that could be done more easily with the right tools.
Also, you forgot to mention Jangaroo… which has come a lot further than Gordon I think…
Hmm… but don’t you fall exactly into the category Adobe is focusing on for Flash, ie, games? You are unlikely to see the kind of upheaval that devs doing other types of projects are likely to experience (or are already experiencing in some cases).
Similarly, legacy projects are a fact of life, and I don’t think that Adobe is going to kill Flash Player out of hand, ie, permanently remove the plugin from the internet. It’s more likely that, like Director, even if they ever did drop support they’d keep the plugin going such people can experience existing content.
This whole discussion is about the “future” of Flash. Of course very little is practically changed relative to a month ago. The issue here is, will it make sense to use Flash in a year or two years, and if so, for what kind of projects? What are the factors that will affect Adobe’s decision making and lead them to prioritize certain things over others?
Overall, a very good and thoughtful analysis. But, I have to take issue with this:
“This whole discussion is about the βfutureβ of Flash. Of course very little is practically changed relative to a month ago.”
In the public perception the change is huge. Many people now believe “Flash is dead.” This has a very real impact on those of us who make our living using Flash & Flex technology. But, you’re also correct that Flash will be around for some time to come. Just as COBOL will. π
I think perception is big for certain segments of the developer community. If you are doing a lot of Flash & Flex contracting for relatively clueless customers – and there are plenty of people in that boat – then yes, this is a big deal and it may hurt your livelihood, especially if you lack a diversified skill set.
Developers who have the luxury of self-determination – and there are plenty of people in that boat, too – are going to make their choices based on the merits of the technology, what will reach their audience, and so on.
As an aside: something I want to call out is this common lament for people on the Flash boards where they say, “Oh, everyone thinks Flash is dead, and I only know how to do Flash, and I only get work from idiots who are 100% influenced by public opinion, so I am going to be unemployed, and my family will starve, and I will be out on the streets. Because of Adobe, my life is ruined and I will literally die alone in a gutter while Kevin Lynch and Shantanu Narayen laugh at me.”
Maybe now is a good time to learn some other technologies and make sure you don’t get caught flat footed if the market shifts. Or maybe it is prudent to find clients who want to work with you on the basis of the product you will deliver instead of the technology you will use to deliver it.
OK, go ahead and flame me.
No flame. And, no I’m not worried about being able to transition to a new technology. I’ve been doing that regularly ever since I left behind the IBM 370. What does annoy me though is taking a step backwards in technology. Because that’s what JavaScript represents to me compared with ActionScript 3 and MXML. A BIG step backward. And that ultimately costs the client and the public.
Most even handed post I’ve seen on the topic of Flash’s future.
Thank you.
I was smiling at: “Maybe HTML5 ends up being great for less demanding uses β like basic enterprise apps, ads, motion graphics…”
“basic enterprise apps” (like HTML form to send an e-mail?) is a killer π
Don’t be naive. π
“Basic enterprise apps” would include things like e-mail clients, calendars, word processors, brochure sites, flight booking interfaces, todo list apps, some CRM and POS interfaces, and more.
It should be clear that some, but not all, Flex projects fall into that realm.
One clarification, flash makes up about 6 percent of Adobe revemue, not 90.
Sure – but I wasn’t working for Adobe when I had that conversation, and it wasn’t about Flash.
Adobe has a big advantage in that Flash is only part of their financial picture – it means they are already diversified and can continue to diversify more. In other words, if they have to shift to HTML5, or if they decide to focus in on Flash, or both, its probably something they can do without risking bankruptcy.
The blog post made me think you were equating Flash to a big portion of Adobe’s business; if that is not the case then I misunderstood. Flash is just a small part of Adobe.
However, I’d be willing to bet someone at Adobe had that conversation years ago; and they bought Macromedia in an attempt to branch out into new areas (AKA Programming). they are just now realizing that didn’t pay off in the way they thought and seeing if they can refocus to see if they can morph their money maker (Creative Suite) into something else.
Maybe – acquisitions are complex, especially fairly successful ones like Macromedia. (Maybe you don’t think it was successful, but having been through two acquisitions myself, and seen a lot more, it is one of the most highly functioning acquisitions I’ve seen.)
I think that programming still has its place, but the Flash plugin is going to play a less central role in Adobe’s general strategy.
By “not successful” i mean that Flash did not replace Photoshop as their primary source of income and nothing more.
Ahh – OK. Thanks for explaining that. I agree, that would definitely be success (eclipsing photoshop in revenue).
Winners never quit, quitters never win. Flash will continue innovating into new spaces while HTML will follow slowly with its browser quirks. Got a problem ?
I suspect you are repeating this like a mantra without thinking about how it affects your goals or bottom line.
Nice article, now the dust is settling its good to read some level headed commentary on the whole situation.
It’s clear we are in a period of transition (when are we not) instead of throwing our toys out of the pram we should be aquiring new toys. Lets not forget new toys are fun.
New toys are awesome. At the same time some of the old toys are pretty good, too.
Your Flash Fortune Cookie Says:
The tiger is out of its cage. Now is a time for careful evaluation.
Just for 1 day, imagine if you will, a web ENTIRELY with any flash content whatsoever. What will we be missing? Quite a bit in my estimation. Oh sure, the banner ads may not be missed, but even flash video makes up a large percentage of all progressively streamed content currently. Even Firefox Live makes use of flash video(oh the irony). And with the latest player 11, we are reaching 3D performance capabilities that will most likely never be rivalled using pure HTML5. If you have any doubts about this, have a look at http://rhizopods.com/ (requires FP11). So the web will be ‘better’ without this and the countless other examples of pure creativity? Really? Sure, it will be like 1999 all over again!
I think you are engaging in Flash partisanship. π
I don’t disagree that things would be missing, but you are overstating the disadvantages of HTML5. We owe a big debt to Flash for the creativity it has enabled and the powerful consistent environment it gives developers.
But to claim that HTML5 can never compete as a way to deliver ads or video is naive. In a big picture sense, it is a possibility that should be seriously considered, even if in the end it makes more sense to use Flash for a specific application.
Great article Ben, but let’s note that being careful not to overstate things goes both ways. Of the areas where HTML5 falls short of Flash, it’s true that there are places (like 3D) where it has a fairly clear path forward and others (like rich audio) where it’s not as clear at the moment but nothing is really holding it back. But there are other areas, like single codec video, DRM, and cross-os/platform/browser consistency, where it’s not clear that HTML5 will (or even /should/) ever offer the benefits Flash gives the developer.
In this sense I think it can be useful to separate the question of whether there is/will always be a place for proprietary plugins from the question of whether Flash is the best such plugin available (where the latter question varies by project and the former is more globally scoped). For example, we can observe the world’s major device manufacturers weighing in against plugins on their devices (not much of a mystery when all three of them are operating monetized app markets). But the larger question of Flash’s future, to my mind, depends on whether that same trend repeats itself on PCs. Currently it shows no signs of doing that, and there are good reasons why it shouldn’t, but to me that’s where the crux of the matter lies.
Good insights, Andy.
I agree, areas like video codec licensing and cross-browser/platform consistency are going to be weak spots for HTML5 for a long while to come, simply because they are very difficult to coordinate amongst the different players.
Plugins are definitely here to stay on desktop IMHO.
However, I think you might be understating Adobe’s role in this. If they consistently message Flash as an undesirable path for content, which they inadvertently did recently, or worse, take clear steps towards dropping Flash, they can definitely sink the boat. I don’t think that is their intent, and I hope their actions in the next 6-12 months follow through clearly in supporting both HTML5 and Flash, but that remains to be seen in the marketplace.
That is a very good insight!
Good article.