An Architect's View

CFML, Clojure, Software Design, Frameworks and more...

An Architect's View

Flex & Me

March 31, 2004 · 6 Comments

Rey Muradaz asked about experiences with Flex on the San Diego CFUG mailing list and I responded - but then figured my response might have a broader audience so I'm posting it here:
Rey asked:
Seriosuly, if anyone out there has any experience with Flex (especially now that the NDA is over), I'm sure we'd all love to hear about it--how does it compare to developing a UI natively in Flash?
I've built a few applications with it - I actually rewrote a couple of CF apps that processed and manipulated XML as Flex apps to provide a better user experience.
First off, a little background (for those who don't know me):
My background is "enterprise programming" - COBOL, FORTRAN, C, C++, Java using (mostly) simple text editors rather than any visual development tools (except CASE tools which I've used in various forms for over a decade now). I've built system software products (compilers, code analyzers), bespoke desktop applications for insurance and actuarial companies and embedded systems for telecoms. In '97 I started developing bespoke web applications (using BroadVision initially and, hence, C++). I've been doing OO design and development for just over twelve years in structured teams that use version control, various degrees of formal QA and so on. In other words, I'm squarely in the target audience for Flex according to the information on the website.
Second, having never used visual development tools (actually I tried them but just couldn't deal with the generated code and the visual idiom - I'm too code-centric), I've never really managed to get the Flash authoring environment to do anything useful for me. I tried (and failed) to get Flash 5 to do *anything*. I managed a feeble interactive animation with Flash MX. I've built a couple of butt ugly and somewhat pathetic little forms-based applications with Flash MX 2004 Pro (where I didn't have to deal with the timeline).
So, how did I find Flex? Well, I love it. It totally fits the way I work - the underlying Model-View-Controller architecture feels very natural to me and the declarative style of programming the views with XML is clean and simple (especially if you have any background with AWT or Swing or similar OO GUI frameworks - I used to build X11 and Motif applications a decade ago and I've dabbled with Swing more recently). ActionScript 2.0 is "just another OO language" so that's been fairly easy for me to pick up. Being able to write view components directly in MXML is very elegant - just like custom tags in ColdFusion - although the way you declare 'parameters' for those components seems a bit funky to me.
Rey also asked:
Seems like learning one's way around the API might be a bit of effort, but the programmer interface appears much more familiar than what one gets from Flash. Or am I way off?
You're definitely in the ball park - the API is extremely well documented and pretty consistent. Flex uses a lot of HTML idioms in its markup so it's fairly approachable. The approach to building apps is going to be very familiar to Java and C++ programmers.
Finally, I'll note that the CASE tool my team use today for OO design (for Flash and CFMX) and full OO lifecycle (Java) has a sticker price of $6k for a node-locked developer license and $12k for a floating single-user server license (we have $90k in deployed licenses). That isn't unusual for enterprise development tools...

Tags: flex

6 responses so far ↓

  • 1 dave ross // Sep 8, 2004 at 5:04 PM

    As someone who start building RIAs w/ Flash about 8 months ago... I won't say it was entirely easy picking up development with Flash. A lot of times I would make great progress and then one tiny thing would cause me to spend hours on chattyfig trying to find out the answer (stupid stuff like tab order or scrolling). The thing about Flash is that you often have to mess around with tons of boiler-plate code, say to fix my tab order or make something select on focus. I agree that Flex solves many of these problems that developers shouldn't be concerned with. In my brief 2 week experience with the product, I too am in love...binding is probably one of the most interesting features... I like the way you can bind variables to parameters of remote operations so easily. I wrote a little proof of concept app in about 20-30 lines and saw plenty of jaw dropping.<br /><br />In terms of Visual IDE's, the only one I've ever liked has been VS.NET. It's suprisingly easy to lay out a full-featured windows forms application. Layout is not too bad in the Flash IDE, except that I found it much more desirable to do the layout with AS at runtime rather than "Authortime" (so that basically eliminates the visual part of the FLash IDE).<br /><br />In terms of the price, I bet if they had listed it at $5,999 per CPU there would have been less of an uproar... something about that 5-figure entry point makes people cringe.
  • 2 cynjin // Sep 8, 2004 at 5:04 PM

    I think my jaw dropped when the marketing blurb said prices START at $12K, the assumption being that they head up from there. I also agree that as a developer, I really feel constrained by traditional HTML / Javascript UI development, and I don't feel comfortable or productive using the Flash IDE. When I am working on a project that uses .NET, this is not so much of an issue because ASP.NET controls do blur the line between traditional Web UI and Windows applications. It's a shame about the price tag but I think the next version of CF will have some of this functionality built in.
  • 3 M.Schipperheyn // Sep 8, 2004 at 5:04 PM

    As with most flash related server products (breeze, communications server, generator) the pricing is way over the top for a new technology that has yet to capture the minds of the intended audience. Actually, it's way over the top, period. Because of the pricing, this great product, like the other products mentioned, will only be used by a small group of people and ultimately fail. We'll see some pretty super demo's from Fortune 500 companies and think "yee, wouldn't that be great if I could afford to use that"<br /><br />Sure, if there would be an open source alternative and the Macromedia product would be 10 times more performant, I could see the commercial reason for the high price. <br /><br />The only way to give a product like this real momentum is by providing it for a mass enterprise pricing level. Something that Jeremy Allaire understood very well but never did seem to catch on with Macromedia. After all, Cold Fusion has a professional and an enterprise license. <br /><br />Sorry about the sarcasm. But I get real frustrated with the fact that Macromedia just doesn't seem to *get* this kind of thing. Or, they actually do want only a small audience. Well, that's very risky.<br /><br />Marc
  • 4 cynjin // Sep 8, 2004 at 5:04 PM

    Macromedia seems to be making the gamble that they have some largely unsurmountable advantages in the RIA development arena:<br /><br />1. Brand recognition<br />2. 98% of all browsers come with Flash (their product) installed<br />3. No real competition in this sphere from companies that can trump advantage #1<br /><br />If RIA is the next stage of internet UI (which I think is the case), you have got to figure that the next few years are going to see the emergence of several competing platforms for developers. In short, a mind grab. I agree with Marc, wholeheartedly, that to confine a product like Flex to the enterprise space, however lucrative, may backfire lest the thousands of non-enterprise developers are served as well. I think besides the price people are reacting to MM seemingly overlooking the plebs who have been supporting its products since the beginning and who are the unpaid evangelists. Where's our bone?
  • 5 Dave // Sep 8, 2004 at 5:04 PM

    The price is a shame, Flex would have been great for a lot of our work, but we are a School in a University and the price of this product makes it impossible to justify buying!
  • 6 Kurt Wiersma // Sep 8, 2004 at 5:04 PM

    I would have to agree wtih cynjin and Dave on this one. I work at a business with about 100 employees and about 19000 members. Being mostly non for profit we cannot afford Flex but I think it is such an awesome product that could really benifit our internal as well as external applications. We are willing to pay probably thousands for this type of product but certainly not tens of thousands.

Leave a Comment

Leave this field empty: