Flex vs HTML vs Time

The old simple triangle of time vs features vs quality has reared it’s ugly head again. After one particularly unproductive weekend I’ve made the decision to place a hold on the Flex interface for XChain, in favour of a raw HTML interface, sprinkled with AJAX.

I personally hate the decision, being enamored with Flex, I don’t want to make it, but I look at the forward progress I’ve made in the past couple of weeks and it’s been more or less stationary. I’m not trying to deliver the ‘richest’ interface possible, I’m going to deliver a working application.

What impacts my client most, is that they can get their job done.

Granted I am learning Flex, and grappling with the Cairngorm/No Cairngorm decision. I decided to go ahead with Cairngorm, particularly after reading the usual tales of woe ‘i decided not to use it, now I’ve rebuild my app and am using it..’. However holy sh-t do you have to produce a lot of code to get things done, okay there are code generators out there, but still. For a pet project this blows out the window the time required to do the job. Sure if this was a 40hr work week project I’d be writing a completely different post right now.

This makes me appreciate the elegant nature of Ruby and Rails™ so much more. It just gets out of your way and lets you get on with producing productive code. In just one hour I can do so much more. Firing up textmate I feel instantly at home. Is this a language familiarity thing, or a complexity problem, or am I using the right tool for the right job, within the given constraints, (probably not).

I had a big discussion about it with a colleague at work, and it always boils down to trade-offs and compromises, there’s no one magic silver bullet (unfortunately). Rails is fantastic at backend work, and helps some with front end work, Flex has some great time savers, rich interface components like datagrid which are cake to wire up and get working - but then you’re spending a tonne of time on event and ui management.

Where is the happy median ? Something like a super rich js framework ? What am I sorely missing from flex in going ‘back’ to HTML ?

- Rich components
- Consistent styling
- Reduced network traffic

A random thought floating through my mind is to publish it in AIR, that way I can still use an HTML interface hooked up to my back end, but a few extra features that might be very useful (drag n drop support, offline storage). More to investigate..

Grumpy but moving forward.

8 Comments, Comment or Ping

  1. Cairgorm isn’t the only game in town. It might not be the best choice for someone learning Flex. Have a look at ModelGlue. There is also the option of, dare I say, not using a “Framework”. I have built many Flex apps without an off-the-shelf framework. In some ways it helps you to learn flex better.

    BTW- I feel your pain, having built apps using the richness of Flex, working on an AJAX app really makes you miss the rich, reliable components.

    Good luck

  2. admin

    Rob thanks for the comments. For the most part my decision to go with Cairngorm rightly or wrongly was for a number of reasons 1) the application is going to be big, lots of functional areas which will consistenly grow with time, 2) I wanted any developer to be able to pick it up and know how and where to code (from experience in Rails, this is a god-send) as it’s open source and 3) ModelGlue is in ‘alpha’, to each person has a different meaning, but to me I just would trust using it for a client - ie it’s too much of a gamble.

    I really would love to ferret about in some source of a large Cairngorm application to get an idea of how big they can get and how much code is needed to maintain a big application. For the most part all of the example applications are a simple (partial of a) store front end, or login box. So it’s all a bit nefarious wondering whether you’re going down the right path or not…

  3. Russ

    There is PureMVC as well (www.puremvc.org). It is definitely worth checking out. I have dabbled in Cairngorm some, and found that learning to use PureMVC was easier. Flex can get a little out of control when learning, especially if you first real project is large. Good Luck.
    Russ

  4. Nice blog post about Flex. If you send me your mailing address, I’ll send some books and a training DVD to you, to help you learn Flex faster.

    Mike

  5. admin

    @Russ - Thanks I’ll check this out
    @Mike - Thanks kindly, will send you an email tomorrow.

    Maybe there is hope yet for a Flex front end to this beasty.

  6. Rob

    If you’re not using some kind of code gen with Cairngorm, you’re crazy - we’re using ant tasks to both generate new project packages, and generate stub code for models, commands & delegates each time we need one. We end up physically typing much less code than before our Cairngorm days.

    As for Flex being slower to develop in than HTML.. our experience is the opposite. In fact, we’ve started wireframing our HTML sites in Flex so that we can present them to the client and have a working interaction model, rather than just static screengrabs from Visio or whatever. We love Flex! :)

  7. hello over there, nice discussion. My first app is http://www.knokkesales.be
    The backend is pure php, The output flex and the CMS also flex. And i like it. This app costed me aroud 200 Hours, being totaly new to this concept of programming. I tried similar things in AJAX but it is killing me.
    The nice thing about the app i wrote is that it can be multiplied over 8 other similar sites wich are ordered, and we can get it online in less than 8 hours, the styling wich is not mine, not included. I mostly like the-not- to -have- to- reload a page to see results. And by the way it is much more difficult to hack the site. Hope to to see more flex developpers as in Belgium there are perhaps 10 of them :)

Reply to “Flex vs HTML vs Time”

About

Rowan is a Product Development Manager, specialising in architecting, developing and putting web applications into production - in particular Ruby on Rails based apps. He lives in Toronto, Canada but speaks in a funny accent as he's originally from New Zealand. He's been working in the software and web business for over a decade. This blog covers Web Application development and deployment in the real world, dealing with topics from business fundamentals to Ruby on Rails, Merb, PHP, Flex, MySQL, Apache and more.

Read more ...

 

 

View Rowan Hick's profile on LinkedIn

 

Subscribe to my RSS feed