I'm not a Flex developer...and here's one reason why

A lot of my ColdFusion and PHP developer friends like to tell me that I should become a Flex developer. I have various reasons why I haven't jumped on the bandwagon yet, but here's one of the biggest reasons:

Enough said.

Comments
That makes no sense.

A flex application is far faster than a ColdFusion one. Once the app is loaded there is no constant load reload between navigation.

Since the flex framework is built into the player now, it means it's only your code loading and not the framework. So it is going to be small.

I have to agree with your friends.

There is one valid reason not to use flex, and that is for a public facing site that you want indexed by search engines.
# Posted By Dale Fraser | 4/16/08 7:35 PM
Dale,

It's a matter of perception. I don't want my site's visitors to have a bad first impression of my site based on the fact that it initially loads slow. You have valid arguments, but we all know it's hard to change a person's first impression.

By the way, it's not a matter of ColdFusion vs. Flex. Flex is a client application and people often use a server language lke ColdFusion along with Flex.
# Posted By Jacob Munson | 4/16/08 7:44 PM
That's a pretty dumb argument ...
# Posted By Yogi Bear | 4/16/08 8:13 PM
What is 'loads slow'

I guess your whole post was a bit vague...do you not like the way the loader looks, or the fact that the application has to load at all....because everything has to be loaded on the internet, and the loader is infinitely skinnable / stylable
# Posted By Eric Cancil | 4/16/08 8:15 PM
"Flex is a client application and people often use a server language lke ColdFusion along with Flex"

haha, that's funny. Because I am today launching a website targeted at just that Flex and CF working together.

I wasn't suggesting you drop CF, I was suggesting I agree with your friends and you should learn Flex.
# Posted By Dale Fraser | 4/16/08 8:21 PM
You havn't seen good flex sites??? try http://www.buzzword.com/ . Theres many ways to load a flex application quickly.
# Posted By Jerry | 4/16/08 8:40 PM
There is a clear line between those who flex and those who CF. I am a CF'r and have a hard time taking the flex arguments. I completely agree with Jake. And I would add, Flex is not the internet. It's a *different* net, and not a better net. I, too, am completely turned away from any site where I load the page just to watch a loading progress bar for a few seconds. I know, it's only a few seconds. But I could be watching amazing DHTML from real code and be able to view the source and be amazed at the developers creativity and talent. This I cannot do with Flex nor Flash. Flash and Flex alike are complete turnoffs. Please don't Flex for me.
# Posted By yo papa | 4/16/08 8:49 PM
I think you missed the important part - it comes after loading is complete. Seriously though I am a long time CF developer and having jumped into Flex can really see huge benefits for users and opportunities for developers/business. You owe it to yourself to explore further.
# Posted By Johan | 4/16/08 9:13 PM
Sometimes just being aware of an alternative/companion resource is not the same as understanding its greater implications. I know a lot of CF and PHP folks who fail to investigate (let alone actually embrace) other things simply because they feel like their chosen - often less-than-ideal - way of doing things is the only way. I am grateful to them. First, they're a wonderful resource (sometimes especially how NOT to do things), secondly: more cutting edge, fun, and rewarding work for me! So I agree: stay right where you are, the web's big enough for everybody!
# Posted By thinman | 4/16/08 9:47 PM
could dispute on many levels, but don't think i will bother, other than to say if the developer chooses you most certainly can view source of a flex application.
# Posted By vinnie | 4/17/08 12:15 AM
I think using Flex for a specific app is a good thing, but definitely not for a whole site. Each app has a different way to navigate, there is no consistency and the browser's back button won't get you back to previous screens.

Even though an app with Flash 9 installed takes 5 seconds to load, plus sometimes another 5 seconds to initialise or download its graphics/data, because you're looking at progress bar it emphasis the fact that you're waiting and therefore feels slow. And while it then downloads its content you're looking at an empty app void of text and graphics. With a DHTML app you see content loading immediately - having things to look at, even if its piece by piece gives your brain something to do and the time spent waiting goes past much quicker.

I'm not sure of the benefits of spending months learning a new language if I can already create visually strong and dynamic web apps using DHTML (and all those wonderful JS libs). Is there a WYSIWYG IDE that can write the Flex code for me while I drag the GUI components I need onto a canvas and select how each one reacts when users click on it? I think I'm after Dreamweaver for Flex. Does it exist and is it cheap?
# Posted By Gary F | 4/17/08 1:45 AM
@Gary you should try Adobe Flex Builder 3. Regarding the back button, Flex does support it, most of out-of-the-box containers use the historyManager.

@Dale Flex Framework isn't built it but is 'cachable' and shared between multiple applications what use the same version of the framework.

there are a lot of ways to optimize a Flex app initial loading, using the framework caching is one of them.
# Posted By João Fernandes | 4/17/08 2:12 AM
And also remember not everyone has high speed internet connection. It would be interesting to see how these Flex and Ajax rich HTML sites perform over a slower connection...
# Posted By Jim Priest | 4/17/08 4:19 AM
Invalid argument. Flex is really designed for applications... Sites that mimic desktop type applications. The first thing your site visitors should ever see isn't' a loading bar, it should be an HTML site talking about your product... the product is the flex app.

If that is the case I can wait a few seconds before it boots up since I know the end result... not like I am coming to some site and going to move away from it if it takes a couple of seconds to load.

I mean it takes my mac a few minutes to boot up but that doesn't mean I shut it off because I don't want to wait.

J.J.
# Posted By J.J. Merrick | 4/17/08 4:41 AM
I often open a new tab in FF / IE, enter a web address and have at a blank screen while that site is found and loaded. No I'm not on dial-up, but no site is instantaneous.

Is it possible to turn off the "Loading..." box? Jake could use that instead so his users get what they are used to.
# Posted By Matt Williams | 4/17/08 5:48 AM
"Is it possible to turn off the "Loading..." box? Jake could use that instead so his users get what they are used to."
You can provide your own pre loader class using the preLoader property of the Application tag.
If you provide one that doesn't draw anything, you've 'turned it off', but now your users will moan it 'just sits there not doing anything'.
# Posted By Tom Chiverton | 4/17/08 7:15 AM
Jake -

I think you should get a 60 day trial version of Flex 3 Builder and give it a try. I've done some little stuff (325k swf). I am able to retrieve and rendering 7000 rows in 5-7 seconds in a data grid. This would be impossible in html. If you think this is too much data, then it can also bring back any 'page' (600 rows) in 1-2 seconds. I would suggest you to read more and give it a try. This doesn't replace ColdFusion, since that is my backend (app server) to my database. It's just 2 more languages to learn...:)
# Posted By Patrick Whittingham | 4/17/08 8:41 AM
I'm with J.J. on this, Flex is more for 'applications' than your traditional website. Thats not to say that can't or shouldn't use flex for one, but until Search Engines figure out a way to index the state of a swf and relevant content within, I would go with a more traditional means of developing a websites.

@jake - as far as the loading of a site goes with Flex... you can make the loading fun and dynamic, http://www.2advanced.com/ has a pretty slick way of loading their site. I don't buy that the extra few seconds to load an app is enough reason to discount a technology entirely.... There are many things that Flex can do which traditional DHTML sites can not (without smoke and mirrors), for example, server side data pushing, etc...
# Posted By JAlpino | 4/17/08 9:44 AM
Wow! You guys went nuts with this while I was away from my blog! :)

I don't know how to answer all your arguments for Flex, other than to say that each developer has to chose his language. If all of you guys want to use Flex, great! That's your perogative. I chose not to.

Does Flex have a lot of cool things in it? Yes, I know it does. But does it also have some warts? Yes, it does. You guys can spin the warts as "cute" or "not really a problem" all you want, but it doesn't change the fact that they're warts. If you talk to a level headed Flex developer, they'll admit that Flex has it's problems. Those problems turn me away from being a Flex developer. If those problems aren't big enough to turn you guys away, have at it! I'm not going to try to stop you from loving life as a Flex developer.
# Posted By Jacob Munson | 4/17/08 3:43 PM
You're weird, Jake. It's like you're surprised by everyone's reaction. If you've made up your mind about something no matter what people say -- don't blog about it (or turn off comments).
Here's an analogy: my co-worker Jason wears a shirt today that I would never wear. I think to myself "boy, I'd never wear that shirt in a million years, but if Jason likes it, it's fine with me." If I read your last comment right, that's sort of how you feel about Flex. Now, I could just keep my opinion to myself about Jason's shirt and be "live and let live". But if I go up to him and say "Hey Jason, I don't like your shirt!" I'd better be prepared to get a reaction.
# Posted By Tony Garcia | 4/18/08 12:42 PM
Tony,

I think it's more like this: I wear a shirt that says on the front "I will never wear a black shirt". This way people know not to give me a black shirt for my birthday. Or in relation to my Flex comments, people know not to tell me I should be a Flex developer, and one of the reasons why I don't like the idea of being a Flex developer.
# Posted By Jacob Munson | 4/18/08 3:49 PM
Wow! turn to a flex developer!? not for me. i have been with coldfusion from version 5. flex and coldfusion are two different thing. you could think of migrating from php to coldfusion but not from coldfusion to flex.
flex is something else. to get flex effect(web 2.0). just combine CF + Ajax.
flex is slow! admit it
# Posted By Arowolo M.A | 4/19/08 1:43 PM
So now you're editing comments that you don't like. Real nice.

@Arowolo M.A - AJAX can never do the things that Flex can. If you think the CF8 AJAX stuff is going to change that, then you and Jake here are both guzzling the Kool-Aid.
# Posted By Jack | 4/22/08 5:27 AM
Yes, I did remove two comments. One that didn't make any sense and just seemed like flame bait, and another that seemed like a spam.

As far as this, "AJAX can never do the things that Flex can", Ajax (combined with JS frameworks like jQuery) can already do most of the things that Flex can. There are a few exceptions, one of which is pushing content to the browser. But even that is currently being worked on by the standards bodies, and will hopefully come to the browsers down the road. In the mean time, for projects where I need to update the browser from the server, I just use Ajax to periodically poll the server for updates (which, by the way, is how GMail works).
# Posted By Jake Munson | 4/22/08 10:20 AM
my point is we've already found an alternative to flex which is cf+ajax
# Posted By Arowolo M.A | 4/22/08 12:56 PM
@Jake

You obviously don't understand Flex / ActionScript if you think that Ajax can do everything that Flex can.

You can do anything you like prety much in Flex especially if you combine it with Air.

I could think of a lot of examples, but just to highlight my point, how would Ajax do something like a 3D interface with Papervision?
# Posted By Dale Fraser | 4/22/08 4:12 PM
@Dale,

I did NOT say that Ajax can do everything that Flex can, I said it can do MOST of what Flex can. As to your 3D/Papervision example, when SVG gains more browser coverage, we will be able to do things like that using standard markup. For example, if you view this page in Firefox (doesn't work in IE):
http://www.isthis4real.com/orbit.xml
You will see a simple example of what can be done with standard SVG markup.
# Posted By Jacob Munson | 4/22/08 4:21 PM
BlogCFC was created by Raymond Camden. This blog is running version 5.9. Contact Blog Owner