For now, I decided to stop using Adobe Flex. Why? I will explain you now….
After completing 3 iPhone applications and having them available in the App Store, I wanted to continue on web development. Simply because its target audience is much broader, the content is not limited to iPhone (and iPod Touch) users. After some pleasant experiences with Adobe Flex and the FDRIA course I chose to work again with Flex Builder 3 on a new Rich Internet Application.
But I could not help getting an increasing unpleasant feeling on this technology. My applications are focused on clinical decision support, and I do not need highly visual interactive applications now. It’s all about content, and making that content available quick & neat. I like(d) Flex for the ActionScript language, the rapid application development, and the beauty of the user interface.
I did not like the filesize of the SWF files. Just a simple text-based application took up 250kb when it wasn’t even ready! Actually, I need to give credit to whom deserved it: I read a tweet by @taudep (Todd Prekaski) on the filesize of one of his Flex apps, when he compared it to Microsoft Silverlight. Silverlight did a much better job, in that case. That was my incentive to check on the filesize of my app: way too large. The demo of Flash Builder 4 did not make a difference, it just messed up my app (which is okay if innovations outweigh the need for backward compatibility).
I did not like being dependent on the Flash player, although it may be installed at 99% of desktop devices (not mobile at this moment). It seems to be slower, it’s not open-source, and vendor lock-in is a risk. Being dependent on the Flash Builder as well. I know the Flex SDK is open source, but without the Flash Builder it’s not fun working with. Of course, Adobe has the full right to do what they want – I have mine to choose.
I did not like the frequent bugs in Flex Builder. And yes, it was a bug in the IDE, and not in my code. A bug other people have been complaining about as well. Regularly I got an error message when building an application that I could not track down to the code. Just doing a Clean Build would solve it. Every time again (of course, sometimes the mistake was mine, but that turned out rather quickly).
And although not as important as the rest: I did not like all the iPad bashing by Flash evangelists. All right, you may be disappointed when the iPad turns out not to offer Flash support. You may add a #fucktheipad hashtag to your Twitter posts. And you may create some screenshot mockups of the iPad displaying Flash-enabled websites (that do NOT match reality, as has been demonstrated for Disney’s website on the iPhone). You may all do that… for one week. Arbitrary period, I agree. But the whole point is: continue your job and tackle the comments. Sure, I understand Apple is making money from the App Store. And allowing Flash-enabled games would reduce Apple’s income. But Apple is a business, not a charity foundation. Just do your job, and don’t tell other people are wrong… prove it, do a better job, and convince customers with a fantastic Flash player. Not with whining that Big Steve did not invite you to join the party.
That having said, I like to add I am still interested in Adobe’s technologies, and may be returning to it in the future. I think their cross-platform desktop development using Adobe AIR is good, Flash player 10.1 will be interesting for mobile devices (if battery rundown will not look as a Flash animation ;-) ) and the Open Screen Project is a good initiative in my opinion. But for text-based websites, I have chosen a different approach.
From my web development history, I should say I am going back to HTML & scripting. But actually it feels like “going forward” instead of going back. I have read the Head First HTML with CSS & XHTML e-book to update my knowledge on HTML and CSS. Currently I am using the Head First series for updating my knowledge of JavaScript and PHP/MySQL. Further I am looking forward to using a cross-platform JavaScript library. I bought a book on Prototype and Scriptaculous from the Pragmatic Programmers, but after some further reading I think I’ll end up using JQuery. All that using the Aptana Studio IDE.
I am looking forward to this new and open-standards technology. And to do some cross-browser testing, which is the other side of my current choice…




