Impressions : The Decline of Flash
evilfish-design.com
evilfish-design.com
Don't, for the love of human decency, put 45 degree pinstripes behind light-weight text. I sat there waiting for several seconds thinking that some background image would load to spare my bleeding eyes. It never did.
Meanwhile:
"I didn’t have the heart to ask him what blind person he knew that could sufficiently use a web browser on a touchscreen smartphone."
http://www.apple.com/accessibility/iphone/vision.html
I mean, I don't care how jaded and cynical you are, iOS's accessibility support is amazing for the blind.
http://mattgemmell.com/2010/12/19/accessibility-for-iphone-a...
I'm perfectly willing to accept that we'll continue to use Flash to gussy-up the experience at the desktop and allow for more complex interactions with media. But frankly, most sites don't need (and users don't really want) that complex a set of interactions.
How many of us have gone to a Flash restaurant site and sat there cursing because it was hard to find what we really needed - the menu, hours, address or phone? Worse, tried to hit that from a mobile phone?
That's why flash is going to get increasingly marginalized, not because HTML5 is allowing similarly complex effects. Flash largely goes in the category of those old DVD ROM authoring softwares: harder to implement, harder to test, harder to use.
Wait until full screen <canvas> ads hog your mobile CPU and you can't even fire up a task manager to end the browser process.
The dream is that we'll be able to harness webcam, microphone, great audio API, and so on, without some proprietary plugin.
The reality is, we won't be able to. As soon as standards are all caught up, Flash will have included 5+ years worth of advancements that will be absolutely necessary for some types of interaction with the user.
Flash may be proprietary, buggy, closed, etc, but life without YouTube and the like would really feel like the stone age more than an improvement.
> The reality is, we won't be able to. As soon as standards are all caught up, Flash will have included 5+ years worth of advancements that will be absolutely necessary for some types of interaction with the user.
The next big feature for the next flash player is full 3d support. WebGL, the html5 mirror of this already has support in firefox and chrome (although, it can't be used on XP or linux with intel due to bad driver support). In this case, the open standards are ahead of Flash.
If we live today and today only, Moore's law wouldn't apply and we could all say for certain that HTML5 and it's successors will be the lead indefinitely. I don't see that happening. If Flash didn't exist today, given the rate that standards are drafted and implemented, would we even be here today talking about audio API or reliable video streaming? Who knows.
Flash is the necessary evil, you see. Standards are driven by demand. But how can demand exist for something that a user cannot experience? Flash. It is the petri dish of web innovation. Perhaps not the best petri dish but a petri dish nonetheless.
They're only ahead if you consider one idea with poor implementation and compatibility in around 3% of the browsers to be "ahead". And by that same logic, Unity3D is already way ahead of both of them, and it doesn't mean anything either.
Flash already has OpenGL/DX enabled on Flash 11 (currently in an open beta), which should be released later this year. Given the quick turnaround we have for Flash Player penetration (6 months for 80% penetration; 12 months for 95% penetration) I can bet Flash's 3d will be at 90% penetration on all desktop platforms and browsers before even WebGL reaches 20% market penetration. There's no helpful headstart here. Like it or not, a Flash Player upgrade gets installed much faster than a browser upgrade. Look at the number of people who are still using old IE versions.
There are no "leaps and bounds" in the HTML world. Even if standards came out as quickly as a single company putting out their own platform, actual implementation and adoption takes a much, much longer time. This is the real world, and that some people ignore it is baffling. There are many reasons NOT to use Flash, but trying to sell HTML5 as a more capable standard is missing the point entirely.
And considering Apple's stance on not allowing WebGL on iOS either, plus Microsoft refusal to implement it, can't see any real advantage in using WebGL coming in the future. Quite the opposite.
I'll stop using that example as soon as I stop having that problem once a week. It's even worse in fashion, where designers for tiny brands continually get suckered into making flash-only sites that are essentially useless beyond being brochureware.
Are there sites that use Flash to great benefit? I have no doubt, although it seems to me the examples you're using are just using it as a way to deliver media. But for 99% of web sites, Flash is a bad idea and provides little benefit. I use Flashblock on my browsers, and the only time I seem to need to unblock anything is to watch a video. That's a bad sign for folks looking for a long-term use of Flash outside of players and video games.
We place the blame on the customer, or the user, or in this case, the technology. Perhaps all along it's just us. And our uncanny ability to misinform the client and leave them without information on accessibility, mobility, scalability.
With that said, I think it's great we're now being more careful about when and where we use Flash. For performance and stability reasons alone, I'm happier it's on less and less sites.
The same is true in .NET. It's great that Microsoft folks want to say HTML5 is their primary development platform so they can sound cool. But unless they are seriously extending HTML5 there's no way it could replace everything available in Silverlight and WPF. Because that's not what it's designed for.
HTML5, as you said, is an attempt to deal with the most common usage cases in a standardized manner and that's great. But on the specialized functionality front Flash and Silverlight still easily have it beat.
Here is my view: If what you want to do can only be done with Flash then – of course – you have to use Flash. If you can't reach some people you want with a HTML5 solution (because their browsers don't support it) then you have to use Flash. If you can't reach some people you want to reach with Flash then you have to use HTML5. If you want to use HTML5 at all you probably have to use a Flash fallback since it's quite often the case that some people you want to reach can't use HTML5.
Tradeoffs are always involved and the landscape is changing too slowly to care about anything but current (and not predicted future) usage statistics – in most cases. It always depends on the necessary work and supported features. Ideally you would support both but that's either sometimes not possible or too much work for too little gain.
You might not currently want to use canvas but, I think, video has become a pretty obvious case. Today it's eminently possible to use HTML5 with a Flash fallback with little additional work. MediaElement.js (http://mediaelementjs.com/), for example, is a beautiful and elegant solution to that problem.
I've been trying to come up with a way to articulate how I think about this whole non-debate and here's a first stab:
One of the primary reasons Flash will eventually be unseated is not that Flash is closed -- standards, to a certain extent, are constructed in a relatively closed manner -- but because standards and technologies built on top of standards are more agile.
Flash is an awesome platform, but you can only build on that platform. Standards are great because you can combine platforms and build things not explicitly envisioned. Flash's single-platform approach makes it so that it will eventually have to play catch-up to a whole set of features that are being built by mixing and matching standards.
CSS3 + Javascript, for instance, can be used without Canvas to build really awesome functionality.
Canvas + Javascript can be used to make really engaging content.
Flash will eventually have to compete not with another product on features, but an entire web of organic technologies that don't have to wait for other components to advance in order to release the next stable version.
What will displace Flash is the lack of necessity for Flash, which is (or should be) obvious in 80% of what we see online. There are many things HTML do better, and easier, than Flash, and ignoring that is the real problem. People all of a sudden are trying to make HTML5 be like Flash, and failing at it, instead of remembering why Flash has never displaced HTML in the first place. I'm all of a sudden seeing a bunch of completely inane HTML5 websites that could have worked much better were they built with simple HTML technology, and it's infuriating to think we're back to the insanity of the Flash 5 time, where people would build stuff in Flash just because (something that today's Flash-based restaurant websites are an evolution of).
People need to remember that making snappy, simple, straight forward websites is totally a thing. That's what's gonna keep Flash at bay, in its little corner, as a technology best suited for lots of interactivity and media and embeds or whatever it is. Not trying to make all websites be Flash-like but just with an alternative but barely supported technology.
Care to provide some numbers to back that up? How many of Youtube's, Vimeo's and other big video websites are using an HTML5 player?
And please don't say that's because of H264 video penetration over FLV. Because H264 video (which is sometimes confused with "html5" video) has been the standard for quality Flash video for a few years already, and a 100% penetration of H264 over FLV would have no correlation to the penetration of "Flash video" versus "HTML5 video".
[1]: http://www.youtube.com/html5 [2]: http://vimeo.com/blog:391
Still waiting for facts and figures.
Either way, HTML5 video adoption is certainly not descreasing, and there are several signs that it is increasing.
If you're developing a site with interactive features, shouldn't you look more to where things are going than where they're coming from?
Is the IE8 userbase growing or shrinking day by day? What about HTML5 enabled devices, mobile, etc...?
It's all about simplifying publishing.
A year and a half ago Lifehacker was up to 6% not installed and DaringFireball claimed 32% of its users didn't have Flash.
http://daringfireball.net/linked/2010/01/30/flash-lifehacker
Interesting mix of data. Wonder why Android wasn't listed? The list of Android devices that even partially support flash in this time snapshot is a sliver at best as well.