Can Flex save Flash?
A lifetime ago, I wrote an article titled Flex and PHP: Party in the Front, Business in the Back in which I had this to say about Flex.
Flex won’t help developers like me design eye-pleasing interfaces any more than a new pencil would improve my inability to draw.
After writing the article and the accompanying source code, I packed away my Flex license and went back to programming PHP application because…well, because PHP solved the problems I was working on (honestly, that’s the only real reason to use any tool).
In 2009, Marco Tabini (now a business associate of mine, at that point just a good friend) contacted me and asked me to present on Flex during the CodeWorks ’09 conference tour. It had been a long while since I had even thought about Flex, so I installed the 60-day demo and started playing around again. (Yes, that’s one of the things I love about flex: Adobe recognizes that you can’t get the feel for a language in thirty days so the test drive is sixty. Go Adobe!)
Over the course of the seven cities that made up the CodeWorks ’09 tour, I presented 11 hours of sessions on Flex. At each stop, I built a simple twitter client from scratch as the attendees watched (incidentally. I learned a lot about live coding in conferences sessions and the importance of not depending on conference Internet connections). Even though I hadn’t worked with Flex in more than 2 years, I was able to easily slip back into the groove and build this simple example from nothing more than an idea every time.
Since then, I’ve moved back home to the US and am now a partner with Blue Parabola. The very first project I worked on was a simple but media-rich online contest that I chose to build in Flex for the New York Red Bulls soccer team. The final product looks excellent—I did not design the User Interface—and works well (I did write all the code). I was very pleased at how easy it was to build a moderately complex piece of front-end code.
Why Flex?
For this particular project, the client had given us complete freedom in choosing both frontend and backend technologies. For the latter, we chose PHP—it’s perfect for what, in the end, amounts to a simple data-manipulation system. The three obvious choices for the former—where the real heavy lifting of this project takes place—were JavaScript/HTML, Silverlight and Flash/Flex. I chose Flex because I felt that the tool, Flex Builder, would make a difference in the speed of development, which was important because the project was time sensitive. I knew the project could have been done in JavaScript/HTML (except possibly for the video), but the combination of my rusty JavaScipt skills along with the absence of a good tool like Flex Builder made the choice for me. By the same token, I have never worked with Silverlight and, while I would love to do a project with it, I didn’t have time on this project to learn a totally new language.
The point of the above preamble was to show that I feel that Flex and Flash are both still useful technologies. The question is, how much longer will Flash be useful and can Flex extend that useful lifetime?
Apple vs. Adobe
As I pointed in Let’s get all the facts on HTML5 whether you like Flash or not, you cannot deny the fact that it filled an important gap up till now as HTML, CSS and JavaScript just were not up to the task of rich UI and things like video.
No one has been beating the drum the anti-Flash drum more than Apple. With it’s top management reportedly claiming that Flash is buggy and performs poorly, Apple has allegedly denied Adobe access to the iPhone and iPad like a spoiled child protecting a favorite toy. If true, Apple’s attacks on Adobe are especially grievous since if Adobe had not been so supportive of Mac in the early days—producing top quality graphics tools for Mac first and giving Microsoft and Windows users the cold shoulder—Apple and the Mac platform would not be enjoying the loyalty of the graphic design community. It is disheartening that Apple seems willing to forget its friends when it’s convenient. Even when it’s pointed out than many of Apple’s arguments against Flash are specious at best, they continue to liken Flash to floppy disks.
Apple’s bad behavior notwithstanding, the question of whether the venerable Flash has reached its end of life is, of course, the crux of the matter.
Flash vs. HTML5
It is true that HTML5 contains many—but not all—of the features that Flash has given the web over the years. I do look forward to HTML5’s finalization and adoption, the fact of the matter is, Flash is here now. With the exception of Apple, it’s widely supported and usable now. Flex adds to Flash in very important ways, the most important being that it makes the tool much easier for programmers to work with. Even if HTML5 were adopted in a consistent way across browsers tomorrow, there are still no tools like Flex Builder that programmers can use to build applications with it.
That is the most important thing that Flex brings to Flash: professional grade tooling. The Flex framework, which Adobe has open sourced, makes application development quick and painless for programmers familiar with event driven programming. Arguably, anyone familiar with JavaScript can leverage that skill with Flex given that ActionScript is a close (and somewhat more powerful) cousin to JavaScript. Flex Builder gives a solid IDE in which to build. While I am not a fan of Eclipse, I do recognize its importance and acknowledge the fact that its adoption is widespread across many different languages. It is a good tool and it was smart of Adobe to build on top of it.
It ain’t over until it’s over
So, to answer my own question, can Flex save Flash? The answer is a resounding “for now.” No technology lives forever and Flash has had a great run—however, it’s not quite done yet. Apple’s petulance aside, Flash will continue to be an important technology for some time. Flex will allow programmers more freedom to create Flash-based applications for both the web and for the desktop.
Microsoft’s Silverlight and HTML5 will both challenge Flash for dominance in the coming years. One of them may eventually unseat it. However, don’t expect to see that happen soon: given the slow rate of adoption on the web for new technologies, it could arguably be in the five years or more before one of them has the adoption rate to unseat the reigning champion. Remember—Flash is still installed on 99% of computers (and that’s according to both Adobe’s own metrics and several independent surveys), a statistic that other technologies would kill to have. It will take time and a good set of tools to unseat Flash from its throne.
So for the time being, developers and designers alike will continue to develop Flash applications for the web and the desktop. As for me, I’ll continue to develop ugly apps and turn them over the likes of the lovely and talented Kathy to make them look nice. A sharper pencil just gives me another way to hurt myself and others.
Leave a comment
Use the form below to leave a comment:
Responses and Pingbacks
March 3rd, 2010 at 11:34 am
I would find it hard to believe that Silverlight would replace Flash since it is essentially the same product with a different name. (Unless I am wrong.) Meanwhile I do think that HTML5 poses a very real challenge.
March 3rd, 2010 at 5:38 pm
Frankly, I don’t think the technologies pose any real risk to each other—what makes Flex (and, by extension, Flash) useful to me is the tooling. Writing complex applications in pure HTML/CSS/JS at this stage is just plain painful, whereas Flex Builder and tools like Expression Studio are aimed at smoothing out that process.
So, in my opinion, the end result, whether HTML5, Flash or Silverlight, is relatively unimportant. The ultimate winner is going to be the technology with the most powerful suite of tools—and both Microsoft and Adobe have been investing heavily in this area.
March 4th, 2010 at 7:06 pm
[…] Flash: Why Flash on iPhone Does Not Make Sense Can Flex save Flash? […]
March 5th, 2010 at 2:32 pm
All this HTML 5 stuff is, to me, deeply confusing. It is not yet a standard and it’ll be years until ALL browsers support it. So, in a business environment, or for those providing tools to businesses, it really is irrelevant. We still have many business users who are on IE6, the worst culprit of which is the Financial Services industry.
BUT ALL of these people can use our Flex based Project, Contact and Image Management service, http://www.glasnost21.com
It provides a browser based interface and user experience that simply cannot be replicated across the board.
Only iPhone users cannot use it and, frankly, I’d rather build a dedicated App for that device format anyway.
So Flex is a terrific tool, that won’t be redundant any time soon.
Regards
Antony Slumbers
March 5th, 2010 at 2:50 pm
[…] Interesting writeup over on PHPArchitect. That is the most important thing that Flex brings to Flash: professional grade tooling. The Flex framework, which Adobe has open sourced, makes application development quick and painless for programmers familiar with event driven programming. […]
March 6th, 2010 at 2:43 pm
[…] under WebInteresting writeup over on PHPArchitect. That is the most important thing that Flex brings to Flash: professional grade tooling. The Flex […]
March 22nd, 2010 at 7:04 pm
What about CSS apart from HTML5? We are already seeing css animations including 3d effects that could soon provide a great alternative in the future if not challenge Flash. The only thing I like about flash is its great animations. I feel that the browser should also provide some basic inherent engine (though there can never be one) to run those technologies rather than relying solely on third party.
July 11th, 2010 at 4:18 pm
I would say Html5, cause google can´t read flash ^^