The Web does not need flash.
With the iPad launch, the lack of the Flash runtime has received a lot of slashback. This gave me the opportunity to gather a few thoughts on Flash, and where it is going. I've seen a lot of hate from people who don't know much about Flash, and also a very defensive and blind reaction from inside the Flash world. I wanted to give a different perspective. A few disclaimers:
- I am not a known name in the Flash community, but I am not a Flash hater either. Actionscript is the language I've programmed the most. I've made my living primarily out of it for 5 years or so. In fact I keep two open source Actionscript projects( BulkLoader and printf as3) and have contributed to others.
- Technologies come and go, but their effects linger on for quite a while. COBOL is dead for any intended purposes, and has been dead for 20 years. But still, there is a lot of people making a living from it. Same thing with Microsoft. Microsoft is still huge and will remain so for quite some time. But neither of these are relevant for the future tech landscape. They are not dictating new directions. They're influence and usage will only decrease, not increase.
- I'll call Macrodobe initiatives for lack of better judgment. I don't know in detail (nor intend to) which were started at Macromedia, Adobe or both.
- I am not picking on the FWA itself. It's a great site, and has been invaluable to the community. I've worked on a few projects featured on the website, and I'm always proud to be there.
- I have no illusions regarding Apple's stance for blocking the flash player. It's a dog eat dog world. Adobe is not a saint either. Alex Payne post hit the mark. I am not a fan of walled gardens either.
With that said, I think Flash is marked for a sharp decline in importance, and has been so for quite a few years. It's inevitable. The current situation with the iPad and HTML5's video capabilities are only the harbingers of it's decline.
The rise of Flash:
HTML was invented to solve a very different problem than what it has been put to in the last few years. That mismatch meant that there was a large demand for capabilities it didn't possess. Flash made it's rise out of these major gaps on the web technologies of the day, namely:
- (1) Static content: visual animation. When Flash appeared, the best you could do for animation was a GIF.
- (2) Interactivity: HTML was though of a document format. Until 2004 or so, with the raise of Ajax, web pages had zero interaction (except for forms). Flash offered an answer to that.
- (3) Design: again, HTML was never though as a presentation format. Until CSS came along, it was very messy to control HTML visually with some sophistication. Even now, with all the browser compliance differences, it's not easy to control pixel perfect the visual layout. Regarding fonts, HTML has no great solution yet.
Later on, Macrodobe was very clever to move Flash to new pastures:
- (4) Audio
- (5) Video
- (6) Advanced bitmap manipulation
- (7) Video recording
- (8) Sockets, for real time messaging.
- (9) Local storage
Until 2004 or so, Flash was the only good alternative to all of those. In that context, yes, the only way to make 'rich' applications (an ill defined term, but still), on the web was to use Flash. And then came video. Video helped spread Flash like wildfire. The prior options such as Quicktime, WMP were a mess: too many codecs and the download took forever.
If you look to the traditional web dev community, all of those issues have been, one by one, tackled. Static content, Interactivity and Design are pretty much solved with the advances in standards, the improvement in Javascript runtimes and the massive options of open source libs. Not literally. Flash can still exhibit greater visual freedom than HTML + CSS, but it's good enough for most use case. See 'worse is better'. For 95% of the web properties, standards are efficient solution to those. Have you ever seen someone says they don't user Facebook because the typography is boring?
For issues 4 through 8, HTML is catching up. These will take a while to be widespread and reliable, but it's inevitable. They are coming, all but #7. Video recording is a niche market. It won't dictate the direction the web is going by any means.
The big picture is that Flash was the only viable alternative to work around many of HTML's short comings as a document format. But webapps have become mass produced and mass consumed. The standards committees move slowly, but it has make steady progress. Each year one of Flash's unique capabilities get a reasonable alternative.
Understanding the hate.
Flash is a strange beast, because of it's unique origin. It was it an animation tool, then a design tool, then an interactive environment than a platform. While been mostly proprietary most of the time. The net result is that the Flash community is somewhat disjointed from the general web dev community. There is some overlap on the larger web , but there is a great divide. It's hard for people to understand where all the Flash hate comes from. The main forces between Flash hate are:
- Religiousness. Yes, there is a small but very vocal group of OSS zealots. They've always criticised Flash on the basis of it been a proprietary technology alone. While this group is very loud on the blogosphere, it's not a driving force for most companies. Businesses tend to be pragmatic.
- Pragmatism. Lack of support for various platforms. Adobe has improved recently, but the fact is that many platforms (64 bits, freebsds) are or were totally neglected for a long time. Again, these were not a large number of users, but they are very loud. With the diversity of devices coming up (mobile, pads, car panels, talking toaster, whatever), this will only get worse. It will be hard for Adobe to keep stable and usable versions of Flash on the wide range of platforms yet to come. Many companies are not keen on depending on Adobe alone.
- Advertising. If you exclude video, an enormous amount of Flash work revolves around advertising. Be it the ads themselves, or campaign micro sites. Just take a look at the Flash showcase, The FWA, and take note of how many are marketing campaign. Folks are not very hot about ads on the web, specially the rich media, processor consuming ones. Those are precisely the ones in which Flash prevails. They've simply conflated hate for the delivery medium with the message. Oh well.
- Disregard for UI and web conventions. As a case in point, I'll take the FWA website as an example, as it's one of the most important websites in the Flash world. It's basically a data grid, with a simple filtering, and a small detail pane for content (agencies, sites). To this day, there is no way to send a direct link to a campaign or anything else but interviews. It's nuts.
In the name of exercising more control over the visual design, the FWA makes it awfully hard to use it other sites on the web. Upon a closer inspection where is the rich application? It's basically text, lists and thumbnails. I don't mean to pick on the FWA by itself, it's just that it's really makes it easy make the point. It's a well made, high profile, commercial site within the community. It's the poster child for what was discussed above. Six years ago, Flash was the only viable way to deliver such an experience. But now, that could be achieved easily with regular web technologies.
Yes, you can do deeplink in Flash. But the amount of work would be enormous (hint hint: if it's that easy to do, why isn't it done by now?). HTML's structure is a pretty good fit for it.
And don't get me started on the crazy non standards UI controls, scrollbars, the lack of any sane tabbing on input elements. And that the browser cannot offer you an auto complete option for your email address. The keyboard focus is funky. Almost all of these an be done in Flash, but it's a lot of work. By the time you're done getting everything to work as people expect you've spent much more time than HTML would have taken. Just look at most Flash websites. They tend to get it wrong, precisely because it takes a lot of work to get it right. I cringe on the though of how many hours of my life I've spent coding scroll bars with quirky behaviors. The flip side of it, is that blindly following all pre-established UI conventions is not the way forward. While the experimentation is surely welcome, most UI improvements I've seen in the past years have come from games, other web apps (auto-complete boxes) and Apple. I for one am yet to see a use for 3D video or interfaces outside of gaming and simulations. - Self centered. This one is pretty shocking to me. Of all the websites and apps I use regularly, Flash is only used for video / audio. Campaigns are a tiny niche. Just to give you an idea a, again, the FWA, which is among the most visited Flash sites, ranks number #17,216 on Alexa. Newgrounds with its massive user base: 719th.
Most Actionscript programmers I know show very little understanding that their niche is almost as small as Lisp, Scheme and much smaller than COBOL. To add insult to injury, most designers on the Flash space have little or no knowledge of HTML or the web. For years the flash world appeared to find plain old HTML to be ugly and boring.
That said, much of the hate geared towards Flash is either misguided (it's the ads, not the plugin!) or uninformed, or no longer valid. But still, those cultural artifacts take a while to disappear.
The web will be everywhere and in anything. Soon.
Macrodobe has had great success getting the Flash player to be installed in every computer. Their figures show over 96% penetration. Except now we'll witness the web coming into so many devices, in many form factors : phones, pads, car dashboards and a whole lot more. We are just at the beginning of this path. Most of those devices will be very constrained in their capabilities, namely, CPU.
Unless Flash is utterly needed , many of those will not support it. Adobe has been working hard to get Flash running on all these platforms, but it will only get harder. If you're making a device, you can simple use Webkit. It is opensource, has a very readable code base, is actively developed and you can tailor it to your device as you see fit. The entry price for supporting the web on your device is pretty manageable now. On the other hand, getting Flash to work requires the good will of Adobe, and might be hard to fit within your hardware limitations. Resources are limited: manufacturers will always privilege regular HTML first.
On the cutting edge front, the pressure to add more hardware support makes it tough on the player engineering. How can you compete with a game for the iPhone written in OpenGL? Not only the amount of platforms will increase, but allowing for greater access to the hardware makes it impossible to support them all. At this point, Unity 3D is pretty far ahead of the graphic processing you can deliver real time through a browser. Flash is second rate on CG. I remember rendering things at 30 fps in Director with a 384MB of RAM pentium 4 that I can not do at 15 fps with todays machines. This was 7 years ago.
Strategic mistakes.
It seems that all those forces were inevitable, but in hindsight, some of Macrodobe's strategies seem harmful
- Licensing the plugin for mobile platforms. This probably withheld adoption greatly. There was a good article on the subject floating on tweeter some time ago. Too lazy to find the URL for it now. Right now it seems crazy that manufacturers would pay Adobe to have their technology running, but this is the strategy Macromedia pursued for a while.
- Batshit crazy naming. Flex? Flash? Flash MX? BlazeDS? AS3? Flex sdk? MXMLC? I still talk to people who make a living out of Flash that can't tell a difference between all of them. Every now and then there I get bug report for BulkLoader saying it doesn't work with flex. Also a very poor job communicating what the platform is like exactly, what pieces are open or open sourced and so on.
- The open source strategy was late, and was poorly executed. Till this day: how many people, outside of Adobe has contributed patches to the compiler, or asdoc (which is a mess, by the way). Why do I have to register at Adobe's Jira to search for bugs? Why most bugs have very little information, or link to issues or fixes in their internal system? It's a maze out there.
- Using On2 codecs which hindered common tools incapable of generating content. The enormous delay on releasing specs in a sane manner. Remember the crazy agreement people had to agree to before reading SWF's specs?).
- The awful tools. The Media Encoder that comes with Flash Professional. The code 'editor' on the IDE. The compiler written in Java that takes forever to start up. The control panel for administering FMS. FlexBuilder is buggy as hell. Would you like to compare the Flex Profiler (+500 dollars) to Google's speed tracer? Or the Apple's intruments?
- Pricing. Call me crazy, but the market for expensive development environments died years ago. Remember Borland? The only large player in that space is Microsoft, which is by the way a weaker player on the web. People do not want to pay $500,00 for development tools, nevermind inferior ones.
- What's the deal with Director? Why won't they kill it? Why split the development community? I am not convinced that there was nothing on the rendering pipeline that Flash couldn't take from Director. Director had such a great performance for it's day.
- Bugs, bugs bugs. Before player 9, I only stumbled once with a crashing bug on the player. Only once. I don't know what it is: the increasing hardware support, or the more aggressive vm, but all players since have become much more prone to ugly crashes. This has really hurt Flash's reputation. Didn't it make sense for Adobe to pay a team and get Flash running extremely well on Chrome (specially on osX), this has been, for a while their last problem to release Chrome on the Mac. All the 20 or so last projects I've been involved, we always found a bug specific to a platform under a certain player revision. Our test grid became hell.
Bottom line is that I am sympathetic to Adobe's position. It's damn hard for large companies to play the open source game. But Macrodobe hasn't handle it well at all. This contributed to putting Flash into a corner.
Niches.
After all the iPad ordeal, Lee Brimelow has published a witty post, showing what the web looks like without Flash. It was a smart move, but there are somethings to be said about it. Much of those do rely on video. Once HTML has that working , those will be fixed. Some are real niche websites (FWA, Aviary). Google finance could be done in Javascript (it won't take long, rest assured). Of those examples, the only one's where blue legos will be an issue are the games / gamish ones. Right now, gaming is the one space where HTML doesn't have a solution. This is the one niche where it will be very hard to displace Flash. That said, it's possible that some of that market will be directed to more established gaming technologies, like OpenGl, adapted for each platform. Looking at Apple's App Store catalog, there is a thriving market of games there. Gaming companies don't seem to mind using traditional gaming tech: C, C++ and OpenGl. The other thing to keep in mind, is that if those devices that lack Flash prosper, those sites will adapt their content.
Note, however, that there's nothing wrong in being a niche tech. Objective-C was a very small niche until 2 years ago (and it's still is). A lot of people hacked good software with it, and made a good living doing so. Maybe it's just natural that flash will fill a niche, since mainstream will be provided for by HTML. The truth is, most of the things Flash excels at are beyond day to day need of most people.
Wrapping it up
Most features that set Flash apart have viable alternatives right now, or will soon enough. The final pieces are being worked on, and will, in time, be solved.
On the other hand, new devices and markets will make it harder for Adobe to keep the player with a large installed base. Once flash looses it's installed based, less content will be developed, which will in turn lower the adoption further. Just look at how hard it was for Silverlight to get mass adoption, even with Microsoft's muscles behind it.
If you think about it, most proprietaries browser technologies are either dead or dying. Remember applets? RealVideo? Shockwave? Authorware? iPix? The 'plain' web has eaten their lunch.
Make no mistake, Flash's days are numbered.
What the future holds (for me at least)?
The thing to keep in mind is that this movement will be slow and gradual. Will there be sites using Flash next year? Absolutely. Will you be able to work on Actionscript for years to come? Sure. But in 5 years or so it will decrease sharply. Probably earlier than that, but I don't care about predicting the right date. It doesn't matter. What I am saying is that soon the market for Flash developers will decrease, and it will do so consistently. There will be many legacy applications that will require Actionscript programmer for years to come. Also there will probably be niches where Flash will remain king. People still use Director for some things. But again and again, Flash will decline. If you haven't, go read it now Worse is Better. It's required reading for any programmer, but it fits Flash's predicament like a glove. HTML is worse, Flash is better.
As developers it's a smart move to be prepared. I am not married to one platform. I want to work within the web, making tools for people to communicate, interact, discover and get things done. If it's HTML + CSS + Javascript, so be it. If it's Objective-C, python or Java, it's O.K. as well. I'd say that expect to be doing FLash work for 3 or 4 years from now.
Predicting the future is always a waste of time. Maybe Adobe will find new killer features to put into the runtime, buying the platform more time. Maybe Moore's Law will be back on track, and all those tiny devices will get insanely beefy processors next year, and Flash will be viable once again. I'll be watching closely. I am not an Adobe shareholder. I do have, however, vested interest in the years spent on Actionscript, but programmers should always work on more than one platform. Look into the history of our profession. Programmers have had to adapt to new technologies in the past 50 years. This isn't about to change.
getting a third opinion
That is a fine appraisal of the state of things at the moment. As a Flash developer I don't think that the iPad will have much of an effect on Flash penetration and usage on its own, but as part of the wider changes going on at the moment, I think it will contribute.
The biggest problem as I see it is that Adobe just aren't taking the wealth of problems with the platform seriously. They seem far more focused on telling everyone how great it is rather than making it great under the hood. Everyone working for them seems to be an Evangelist. I for one am sick to death of Adobe's bugs. From the Flashplayer, through Flex and into their IDEs. Hopefully the delay of releasing Flash builder is an indication that they are taking things a little more seriously, but for the moment I'm sticking with FDT which is also buggy, but far better than Flex Builder. The problem is that hyperbole can obscure many things, but not problems in the software that people work with every day.
Its so frustrating because I love programming for the platform. And I'm really happy I make my living from it, but I have made a definite decision this year to look around at other tech. Sure, Flash will still be around for a long time to come, if only due to legacy codebases, but I can't shake the feeling that the wind is changing, and it doesn't seem Adobe are doing what is needed to steer Flash in the right direction.
I do share your thoughts and to be honest I just started looking for some tutorials on javascript + html5 canvas (maybe too late already?) yesterday not that I think that will be the future of the web but just to have a different perspective. The one thing I hate about css is that you need so many hacks in order to deliver content to all the browser available right now, it isn't just one plug in like flash. Thanks so much for sharing this.
Beautiful post. I think gaming in Flash is also a dead market - I know that are a lot of companies doing Flash games, but why on earth would you use Flash to do a game (I mean, a real game: shaders, 3D, physics) if you have iPhone (OpenGL), Unity3D (deploying for Wii, Xbox 360, iPhone and browser) and in the near future WebGL? Flash games were nice 3 years ago - what we call 3D in Flash today is 40% of OpenGLES. Even Director was ahead of it.
@Gabriel
This is very true. The worrying thing is that the things which have made Flash ubiquitous - Video, Games, Animation etc are all being eroded from other technologies. Way I see it, Adobe's model of development has all been towards making Flash more ubiquitous - by making it do lots of things in each different arena which can't be achieved any other way. This has been a case of piling features on with every release without any focus on solidity and performance across platforms. Unless Adobe can turn this around, Flash risks becoming a Jack of all trades, but master of none. Games and 3D being the perfect examples - It did them first (sort of) , but did them badly.
When you add the coming surge in devices which will at best erode Flash's distribution significantly, Flash looks like it is in trouble. Without ubiquity, does Flash have enough to keep it relevant? Flash without 96% penetration is a hugely different sell than Flash with.
Hi Arthur,
your article is well written and thought provoking. Well.. at least its condensing all the existing negative thoughts about flash all together into one piece of writing.
This article is polemic. Not pathetic though, but very polemic. The thing is: you are 100% right on every single point. And this is where the polemic is hitting the ground: You completely ignore all the current and ongoing recent improvements of Flash.
Here a list of 5 things that will keep Flash in business for the next 10 years:
1): hires, hardware accelerated video, for example resulting in the BBC iPlayer which gave Flash a boost far in the late noughties! HTML5 will eat off a tiny bit from this market. And that was it.
2): webcam recording.. anything related in the HTML5-standard? I found f^&* all
3): client and market reality: most clients (yeah, its Advertisement, boo!) love flash and will always love flash. Works way better than advertisement iPhone-app-building (speaking of experience). So where the money is we find the commerce, and where the commerce is..
4): iPad will not even touch Flash in the slightest, I simply dont understand why you mixing those 2 different things into one bowl. The "everywhere" internet is mainly limited to our need of using it and the fact that a day has 24hours.
5): the lack of good Flash coders IMHO is due to the widespread "angst" of Flashs demise. I call it the "Antitanic Situation": everyone is leaving a ship afraid of going down with it. And although it all looks very very dark: the SHIP IS NOT SINKING! (yeah, you can yell "yet!yet!yet!" but its not sinking. period.)
Flash is a bit like Democracy: everyone hates it but it is the least thing we can all agree on when it comes to utilizing the web outside its "official" specifications (such as HTML or CSS - which is BY FAR nowhere near bugfree either). And because it "kinda" works for everyone (see youtube), everyone has it. And just because Steve Jobs hates it makes it not worse. Hate isnt very healthy anyway, Steve knows that too well..
Best!
I fully disagree. Flash is years ahead HTML 5 and all it´s infinite coming bugs across the different browsers. Flash continues to evolve features and performance as well. Besides of that, is hard to believe that HTML 5 will reach 40% of the Flash capabilities in one technology. Have so many things to say, but for now it´s only : Flash Lives and Flash is the future (Open Screen Project, Flash Player 10.1, etc)
@Gabriel, Unity3D is fantastic, but only for 3D. You need to re-think your views about games. 3D is not the be-all and end-all of gaming. Far from it, as the explosion of casual gaming has shown.
3D and Physics irrelevant to most casual games, 2D games are definitely "real games" and millions of people play them.
For ubiquitous web casual gaming and speed/ease of development/authoring, Flash is king.
I agree with you Arthur. One thing where I do not see Flash vanishing any time soon is with in-browser "no-need-for-the-user-to-install-anything" gaming. (Except for the lost productivity, Flash games are also particularly nice to company system administrators because they don't have to worry about employees installing crap on their machines because Flash games are sandboxed)
Another thing about Flash that HTML5 "zealots" (for a lack of better term) forget is that majority of the web is driven by designers, not coders. Flash has no equal in the interactive web animation space. No tool comes close to it for Multimedia Artists/Animators/Designers.
Sure, you can pull off really neat stuff with HTML5/Javascript/CSS, but your typical web designer doesn't know how to do anything more than the most basic Javascript for buttons, let alone programmatic animation. There is no tool for HTML5 that can do the level of animation that multimedia authors can with ease using the Flash Timeline + Tweening.
For those who think Flash is all just banner ads and video (things HTML5 + a standardized video spec can replace), please give Richard Legget's blog post a read. IMHO it is currently one of the most informative weigh-ins on the Flash-HTML5 debacle: http://richardleggett.co.uk/blog/index.php/2010/02/01/the-world-is-moving-to-html5
I think that for now, the following website says it all:
http://isflashdead.com
@Carlos I agree with you about 2D games. But the thing is that Flash is not the only tool for that, even Unity3D is a great tool for 2D games.
And sure, there will be room for that kind of games forever, Facebook has plenty of great games made in Flash and even EA has great online games. But mostly because of Flash Player's ubiquity - more tools will come and more technologies will be available, and maybe in the future this will change.
Flash will stay here for a long time, but it's great to see some movement of new possibilities (not only for games).
I've been a Flash/Flex developer for several years. I love the development environment and the pay cheque. However, every Flash/Flex developer I talk to agrees that Flash's days are numbered.
I experienced a similar scenario with .NET. This was around the time Vista and Silverlight were going to be all the rage. I knew it wasn't going to happen and jumped ship for Flex. Flex was a hot tech for a while, but now I feel it's popularity waning and to a greater extent, Flash.
Call it developer instinct. Call it spidey-sense. But there's the smell of change in the air and the iPad made everyone acutely aware of it.
Now the only choice (for me) is a toss up between HTML5 (CSS, jQuery, etc) or Unity. Studying begins now.
I think Flash has great potential when used the right way. A Flash application/website is supposed to be an experience for the user, the focus is not pure content.
I agree that making a flash portal is a dumb thing to do. But good interactive flash websites are great and attract people.
The web is not all about content, it is about experiences too. Like a commercial on TV, you watch it and then you forget it. Just the same with a flash experience :-)
I agree with a couple people above.
For canvas and SVG to ever catch on there needs to be good tools that allow someone other than developers to quickly create and refine animations. Ironically flash cs5 will export to .FXG that can be used to build canvas animations.
I think we'll need to see how 10.1 is implemented on all the other 70% of smartphones which aren't designed in Copertino.
Also the new multi touch events in Flex looks very promising.
Hopefully adobe can keep the various flavors of flash the same so that one can code similarly for web as for the desktop as for the phone as for the tv as for...
Hi; First of all.. sorry for my bad english;
I'm 20 years old and develop on Flash platform since 2006 - by this time I started with full-browser flashes, then in 2007 jumped to swfaddress websites. The sad truth is that most of the flash websites on the web are just old - I LOVE flash, but in my opinion flash have to be used only when it's needed - to display 3D stuff, to show full-browser content with nice quality and transitions... etc. You're geezers, u know what I'm talking about. The problems are that: 1) A lot of the websites on the web that are developed in Flash can be made with pure css and html. 2) Flash and seo - client's are looking for results 3) The price and time it takes to make a flash website...
Just they're not a lot of good flash websites - clear, elegant and optimised. It is possible, but it is hard - check rizn (dot) info for example...
jQuery changed the game - deep linking, full browser content, smooth animations... It is the future of websites, but Flash is still great for RIA and in my opinion it's future is in the RIA - online tools for modifying content like a desktop application.
I hope the flash era isn't going to over, but I'm planning to start learning jQuery and CSS/HTML this week :)
Very nice post. Your analysis was very thorough and I basically agree with all of your points.
I have spent a couple years programming in Flash and have since moved on. Like you said, many of the developers I know are moving or have moved on to other platforms as well.
To be honest, I think that Adobe is driving too many developers away from its platform by failing to fix critical Flash Player bugs - instead choosing to layer on new features without properly fixing the existing ones!
Very nice post. Your analysis was very thorough and I basically agree with all of your points.
I have spent a couple years programming in Flash and have since moved on. Like you said, many of the developers I know are moving or have moved on to other platforms as well.
To be honest, I think that Adobe is driving too many developers away from its platform by failing to fix critical Flash Player bugs - instead choosing to layer on new features without properly fixing the existing ones!
Simultaneously, the continuing developments in HTML5 render Flash unnecessary for a large number of common web tasks, so the demand for Flash content (and hence programmers) will decline over the next few years.
I'm definitely encouraging the Flash developers I know to pick up other platforms. It's not like the market will disappear overnight, but I think it will shrink (relative to today's levels). Besides, good programmers tend to want to learn multiple languages/platforms anyway.
Despite the advances in Javascript, in many ways it is only catching up with actionscript, and while it is leading in some areas, javascript still needs a client. Whatever technology you choose to use, the most important thing is that it wll work for the user. Rather than trying to replace Flash, javascript developers should be cooperating with Adobe to get their advancements included in actionscript. Actionscript is the ECMAscript that is rendered most predictably.
As a perfect example, this comment form failed to work for me so I was forced to switch browsers. pure HTML would have done better than javascript for this, and so would have actionscript. Some of the complaints about actionscripts are also unfounded and I encourage everyone to do their own research.
Flash as a tool to develop cross platform applications is what I think is its future. And if it can also serve as a functional medium for users to use your app online even better. But if you only need a web interface why use Flash? If it were possible to build websites with Objective-C using Xcode, and InterfaceBuilder would you want to? No, HTML/JS are easier languages & are integrated better by the browser. Most interfaces don't need framerates, they are simple & basic JS transitions suffice. Bould you want to build a complex application like, AfterEffects, Photoshop, or Logic Pro using HTML & JS if it were even possible? I don't think I would.
To me, the key point in Flash's favor is productivity in creating rich experiences. Yes, javascript CAN create equivalent experiences, but it's a comparatively much more difficult process that requires a considerably more skilled (and expensive) developer. Flash/Flex's whole development model is geared towards rich experiences: from Actionscript to the Flash and Flex IDEs to the whole CS4 design ecosystem. It certainly has its faults, some quite major, but if you want to deliver a complex, visually rich, desktop style app to the web, there's still no comparison for speed and efficiency of workflow. HTML, for all its progress, is still centered in a page-based model. This could certainly change in the future. There are steps being made in this direction all over the place, but flash has an enormous head start and Adobe shows no signs of slowing down their intense efforts to secure this niche. And I do think the web needs and wants these types of experiences, so for the foreseeable future, the web needs flash.
A second point: many commentators in this debate seem to view the contenders as if they are static instead of constantly evolving, but if we're talking about the future of the web, we shouldn't be focusing as much on these technologies' current statuses as on their trajectories. In the beginning of the web, html dominated completely and had no competitors. Then flash and other plugins emerged to fill the gaps in what was achievable. Flash outcompeted the other plugins and took over the niche by continually adding features that were either impossible or extremely difficult to replicate using solely html and js. Many of these features are well summarized in the op. So my question is: why will this trend change? What will stop Adobe from taking two or three steps in the rich experience space for every one that html/js takes, as they have in the past? As hardware and connection speeds improve, which will be better situated to take advantage, and to give developers and designers the tools they need to take advantage? Which will be able to more effectively add features that no one's even thought of yet? I think that if a threat is coming from anywhere, it's coming from the likes of Unity3D, but even here I don't see Unity with a clear overall edge. Their technology is currently head and shoulders above flash for 3D, no question, but flash has the plugin penetration, and Adobe has the resources to make a major step into the 3D space if they ever get around to it. They are certainly on the doorstep (though admittedly just milling abount at present).
great article , but flash is just a plugin ... so no big deal ... most of the web is still html and javascript and will be ... now why flash was so successfull ? because unlike java , it was easy to deploy , with the ide tool , period... if flash loses this philosophy it will have the same fate as java applets on the web... a flash dev
You have some good points made here. But while you may be right about the web not needing flash, it's pretty clear it has significant presence on the web and that there's a LOT of people making money with it. Free lancer professionals, digital agencies, gaming companies, you name it, and while that's true it will be alive and well, weather people like it or not.
I guess the point is, needed or not, it's largely used and with successful monetary results.
That, of course, doesn't change the fact that I would like to see Adobe making some more wise decisions in the future, even though that's not likely. They were bad before acquiring Macromedia and there are bad now. I hoped that with the acquisition the new blood would kick in and push them to be better, and though they have gotten a little bit better, they're still very corporativist and blind to an "open" approach to the market and business.
I was an evangelist for Macromedia but couldn't be one for Adobe, just had to leave the job, it's impossible to stand in front of crowd and defend the kind of decisions Adobe make. But still, I think (and hope, cause I'm one of those making money with it) that flash will be around for quite a while (being it needed it or not).
Best, Milton Lapido
@richie
I dont see the relevance of this comment in regards to the bulk loader. This bulk loader is one of the best I have used and I for one am thankful it exists!
Flash is GREAT at application programming?! Especially with the FLEX framework and AIR. you can build full featured applications quickly. If there are bugs in a developers application its not the fault of the programming language (IE: guns dont kill people, people kill people)
if your browser is using 70% of your computer memory for a flash application, one of 2 things are happening. Its a poorly written application, or you need to buy a new computer.


Have the last word