Comments
Patrick Collands wrote: collands (AT) gmail com I'd be very grateful for an invitation. Thank you.
Cloud Expo on Google News

SYS-CON.TV

2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Click For 2008 West
Event Webcasts
Flex 4: My Wish List
Some of the new features of next year's release of Flex were announced

Flex 2 was released in the Summer of 2006 and it was a mini-revolution in the RIA space. Almost nobody knew about Flex 1.5, but now almost everyone has at least heard about this software. Flex 3 was released in early 2008. It has a number of useful new features, but it was not a major release. In my opinion, a more modest 2.5 would suffice. We are expecting more now. Flex 4 will come out to the world next year and while the Flex team has announced a number of very interesting syntax improvements, I’d love to see more fundamental improvements in this great RIA tool.

The roadmap
for Flex 4 has the following statement: “Features could include compiler performance.” The word “could” does not sound too promising though. I really hope that the Flex team will find a way to change “could” for “will.”

THe Flex compiler is slow. During the 18 months between the releases of Flex 2 and Flex 3, Adobe was not able to make any serious improvements in this department. The Flex framework is well designed, and one of the most popular words among developers who start using Flex is “cool.”  And it is cool as long as you keep working with small applications. But you’ll start using this word less often if you start working on a real-world project that includes say 50 views.

Add a melancholic Flex Builder IDE on top of a slow compiler, and it becomes irritating at times. During the 18 months between releases of Flex 2 and Flex 3, Adobe was not able to make improvements in this department either. Other than fixing sporadic out-of-memory errors and a new profiler, it’s pretty much the same tool. Besides being slow,  periodically, Flex Builder starts rebuilding  its workspace, which is a process with an uncertain ending.

My current application consists of one Java and about 25 Flex Builder projects (it’s split into separate modules and libraries to avoid creating a large monolithic application). Now you need to be very careful with inter-project dependencies to make sure that Flex Builder will not choke up.

This project ,for whatever reason, started with the Cairngorm  framework that  performed its role perfectly – it acted like crazy glue. With its requirement to register all events and commands in a central location, all  modules are glued together, which defeats the purpose of modules and puts fragile Flex Builder on its knees.

By the end of this year JetBrains will release an IntelliJ IDEA that will support Flex, which should be a good IDE – these folks know how to create IDEs. But it’s going to be using the same Flex compiler, so I don't expect major performance improvements comparing to Flex Builder.

The other serious problem is that Flex generates large bytecode (swf files).  Any mid-size application produces about 1 MB of code that has to arrive to the client before the user will be able to work with the application. Intranet users will not complain because they are sitting on a fast LAN, and loading this megabyte takes about 10 seconds. But Internet users sitting on the low-bandwidth network will have wait for a minute to see the first screen of their application written in Flex. One of the main advantages of RIA is that the users would not need to go through 10 round-trips to the server to purchase an item online. On slow networks, people were abandoning  these sites. Flex applications store the state on the client (your shopping cart, billing, shipping info, etc.) and there is no need to for these round-trips to the server. But the users want to see this only page faster.

Flex 3 somewhat mitigates this problem by allowing the creation of applications, which caches a Flex framework on the disk of a client’s PC. If before your Flex application was a monolithic 1Mb, now it turns into two smaller parts: 500KB of your code plus 500Kb of so-called Flex framework  RSL, which will be downloaded to the client’s PC only for the first time, and if you are lucky, the user may already have these cached frameworks as a result of visiting other Web sites created with Flex. It’s a step in the right direction as long as the user is willing to wait on his 500kbps “broadband.”

There are some tricks that improve the perceived speed of a Web application – an application can display something using a pre-loader while the rest of the application parts are being downloaded. But you still need to download this initially hefty application. Flex produces swf files with only two frames. To see your main application screen (the second frame), all required code has to be loaded (the first frame). Will the end users wait?

Farata Systems has written a utility for Flex Builder 3 called Fx2Ant 3.0 (it’s in Beta now), which uses Adobe’s optimizer and automatically generates optimized Ant scripts for Flex Builder’s projects, reducing the size of produced code. But I want the original swf files to be a lot smaller.

A number of Flash developers embraced Flex and started creating their widgets with the Flex framework. But after the project development is done, some of them will rewrite a large portion of it (again) in Flash, removing the fat Flex framework that turns a 50K Flash widget into a 300K Flex equivalent.

I like Flex - it’s the only game in the RIA town at this point.  In 2009, the situation will change though. Competitors will offer their RIA platforms, and will give Adobe a run for the money, which is beneficial for all of us – every Microsoft needs its Google, if you know what I mean.

About Yakov Fain
Yakov Fain is a Managing Director of Farata Systems, consulting, training and product company. He has authored several Java books, dozens of technical articles. SYS-CON Books released his latest co-authored book , Rich Internet Applications with Adobe Flex and Java: Secrets of the Masters in Spring 2007. Sun Microsystems has nominated and awarded Yakov with the title Java Champion. He leads the Princeton Java Users Group. He is an Adobe Certified Flex Instructor. Currently Yakov works on the book for O'Reilly "Enterprise Application Development with Flex". He twits at twitter.com/yfain.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Latest Cloud Developer Stories
CloudBench Applications, Inc. announced its financial results for the three months and nine months ending September 30, 2009. All amounts are stated in Canadian dollars unless otherwise noted. Revenues from BasicGov, the Company's cloud computing solution for local government, gr...
The new contract is an industry first, with CSC being the first Microsoft partner to lead and win a cloud computing services agreement of this scale. Under terms of the contract, CSC will provide Royal Mail Group's 30,000 employees with access to new IT services using Microsoft's...
Operates in over 170 countries and is one of the world’s leading providers of communications solutions and services. Richard Tarboton talks for MeettheBoss.TV on his role as Head of Energy & Carbon for BT and what they are doing towards reducing carbon emissions.
CA is going to put its Agile Planner software on salesforce.com’s Force.com platform in the first half to accelerate development time and give users visibility over their development initiatives to reduce time-to-market. Customers are supposed to be able to accelerate the deploym...
Despite its uncertain fate Sun soldiers on. Monday it trotted out a cloud-based multiplatform desktop as a service for K-12 and community colleges that can run Windows, the Mac OS, Linux and Solaris applications to nearly any client device, including its own Sun Ray thin clients....
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News
CloudBench Applications, Inc. announced its financial results for the three months and nine months e...