Flex, HTML5 or iOS: Where are things going?

By | November 12, 2011

Given the big announcements this past week from Adobe regarding their abandonment of the mobile Flash Player, along with their statements about their plans for Flex, I figure it is time for me to chime in with my own thoughts.

I cannot say I was surprised by these announcements. Technology waves happen all the time and I have jumped to different platforms many times over the past two decades. In my PwC and IBM Consulting days, I worked in Lotus Notes and Domino until it became easier to build database driven web applications with Java Server Pages sprinkled with Javascript (soon to be Ajax) code. Then in 2003, I decided to jump again, this time to whatever could save me from the hacky nature of Javascript and pain of multi-browser support.

So I started looking at alternatives. Flash was an obvious choice but was still mainly for artistic designers looking to create static content. Open Laszlo initially won me over with it’s ease of use and low cost. At least until Macromedia jumped into the fray with Royale (which would ultimately become Adobe Flex a couple of years later) shortly afterward. It would take another year before Adobe would figure out that no one wanted to pay $15,000 per CPU for a server to generate SWF files, especially since that step is unnecessary to begin with. By the time Flex 2.0 came out, Adobe had wised up on how to monetize Flex and things really took off. Flex and the Flash Player had finally accomplished what Java Applets and the JVM set out to do but never achieved: provide a portable and consistent web-based platform for complex applications. I jumped on the Flex bandwagon and never looked back…until a little over a year ago.

That’s when it was becoming apparent that Steve Jobs was slowly being proven correct about the shortcomings of the mobile Flash experience. At the time, I did not feel they were wrong but they did not offer any real alternatives. They claimed HTML5 was the future but since no browsers fully implemented that specification (and still don’t), it seemed like a non-starter. The goal was still to write cool-looking, complex applications in a real programming language using a powerful IDE for a consistent runtime environment, and the Flex+Flash combination still seemed like the only offering that provided anything close to that.

However, the more I looked again at HTML and Javascript, I realized that the tooling had dramatically improved, especially with the emergence of two things: javascript libraries and browsers with debugging facilities. I knew those technologies had appeared years before, but it was their maturity that now caught my attention. Unlike some developers, I fully embrace the latest technology available to programmers. I’m a firm believer in IDE’s over a vi editor, debuggers over trace statements, and profiling tools over timestamps placed at the start and end of methods. It now seemed possible to create dynamic web apps that ran well in more than one browser, and the whole thing could be developed quickly without going blind from staring at alert dialogs with vague ‘blah is undefined’ javascript error messages. Don’t get me wrong, Javascript is still every bit as hacky as before, but jQuery, Dojo and ExtJS help shield you from much of that pain.

The real challenge will be to figure out how to create the same results in HTML5/Javascript that I was doing in Flex. Take drawing for example: the capabilities of SVG and the HTML5 Canvas fall short of what the Flash player can do when combined with Actionscript and Flex, but tools like EaselJS, Raphael, and JQuery SVG are avenues to get you part of the way there. Even Keith Peters is working on a book to help Flex developers make the transition that strongly mirrors his Actionscript version.

I honestly can say I’m surprised at how brief the Flex wave has been. I figured it would last 10 years, but it seems to be more like 6 if you figure that Flex 2.0 was released in 2006 and I expect a fairly strong decline by the end of 2012.

And no, Flex will not go away but it is reasonable to expect that the demand for it will. I will continue to use it where applicable, but over the past year or so, I’ve moved heavily into HTML5 and Javascript as well as Objective-C and the iOS platform. Seeing that the performance of HTML5 web applications running in mobile Safari is still a little slow for my tastes, native iOS applications have become very attractive. All of this partly explains the severe reduction in my blog posts over the past year or so, combined with the fact that I’m a father now and family time is very appealing these days.

So in summary, I’m still doing my best to create neat stuff, but these days it is with a different set of tools. Geoff Sterns sums up my thoughts exactly at the end of this post.

3 thoughts on “Flex, HTML5 or iOS: Where are things going?

  1. Robert Cesaric

    I was revisiting Open Laszlo and stumbled upon your post. I’ve always been curious why Laszlo isn’t more popular than it is. Similarly, I had started with it and then moved to Flex when it came out. I’d be curious to hear your thoughts why you are or aren’t considering it as a solution during your transition. Thx!

    Reply
    1. Bill Post author

      Well, I guess my first thought is that targeting the Flash run-time for running anything web-based is becoming moot now that Adobe has released control of Flex and turned it over to Apache. So the multiple run-time output capabilities of OpenLaszlo do not really buy me that much anymore. Plus, their declarative XML model can be hard to work with. Of course it has been years since I worked with it so that aspect may have improved. Really, I’m finding that using JavaScript libraries (Dojo, jQuery, etc) seems to offer more flexibility and benefit that something like OpenLaszlo. In 2005 it was cutting edge, but now I’m not really sure I see a selling point for using it over something like Dojo since browsers are really the only run-time environment I care about. I too am interested if someone has a different stance on this though.

      Reply

Leave a Reply

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