DIGG IT!
Published
Thursday, November 02, 2006
at
4:07 PM
.
I was out last night with the speakers at MAX APAC Taipei and a very interesting discussion started late in the evening. I was curious about how Flash developers thought about Flex and vice versa. Based on the conversation I think that many Flash developers still feel that, "Flex stole my mojo!". Having been on both sides of this discussion I wanted to share my perspective on Flash and Flex and why everyone is better off especially Flash developers.
FACT: Flex and Flash both output SWF
FACT: SWF runs in Adobe Flash Player.Flex adds a paradigm that 10 Million developers can understand and adopt. If you know VB, PowerBuilder, Java, .NET then Flex is easy to learn and supports many of the features that you are used to. Flex supports components, bindings, container based layout, events, debugging, and more, just like structured programmers expect.
Flash Authoring is difficult to master because it contains paradigms that are not supported in any other development model. Keyframes, MovieClips, Library, TimeLine Code, Tweens, Nested Timelines. To learn all these paradigms new is very difficult and intimidating. I used FutureSplash Animator and evolved with every release of Flash to date. Looking back on the evolution of Flash, so much change occurred that I wonder if I could Flash today if I started as a new user.
Flash Authoring circa 2001 began to be pulled toward application development and away from its creative roots. I lobbied very hard in 2001-2002 to
fork the Flash IDE. At the time, Flash Authoring was being forced to support multiple paradigms for designer and developer. I believed that the Flash needed to focus on what it did best, creative animation and rich media development, not application development. Rather than add tons of developer features into Flash Authoring, add them into a new product focused on application development end to end. The great part about having 2 tools is that each can serve its market better than one can alone.
The opportunity for Flash developers in Flex is adding the creative energy and rich content into Flex applications. Because Flash and Flex support the same runtime, you can add SWF content, symbols, animation, images into Flex at both compile-time and run-time. Flash developers can make Flex better, dramatically better, and there lies the real opportunity. Adopting Flex doesn't mean that you need to learn everything but rather understand the key integration points. The best Flex applications do not look like Flex but rather embody the ideals of high end Flash RIA development. Best of all you already know the best tool for extending Flex, Flash authoring.
I am a bit biased towards Flex (I drank the Kool-aide), but I am still a Flasher at heart. I evolved with Flash, trying to make it more application like, but Flex is a better fit for me. Actually truth be told, I once thought "Flex stole my mojo" too and I was very vocal about it on this blog. The takeway from the discussion last night is that many Flash developers do not realize how to integrate with Flex. Even better is the fast that this FUD is really easy to fix. I will be posting some examples of integrating Flash content into Flex and I encourage other Flash developers who have made the leap to Flex to post example code.
The MAX keynote on Flex contained a demo by Sho where a Flex Mp3 player was skinned using CSS and a SWF file. Where did that SWF get created?
Cheers,
Ted :)
Illustrator exported SWF, right??
CS3 Illustrator, CS3 Fireworks, CS3 Flash 9 will support this. What most miss is the fact that Flash 8 supports this behavior today!
@Embed("myswf.swf#myLibrarySymbol")
Also scale 9 is also supported within Embed as well.
Ted :)
NOW you flash people finally know how we Director people feel! ;c) (only partially kidding!)
-mg
I am not sharing you're oppinion on difficulty to learn and use flash for applications (where you can only compare it and compete it with Flex)
as I've see it, for 2 years from now on basiclly Flash and Flex can be same thing, Flash 9 is AS3, OOP full...
Ted, totally agree about how flash can really help extend flex apps. Jesse Warden gave a really good MAX session on some of the flex/flash integration process points that he has dealt with. Not sure if he posted his material to the presentation library yet. I think things will be clearer for Flash people once Flash 9 comes out and there are some samples out of what can be done. I have a lot of fellow designers look at me with a daze when i discuss how to roll flex into our new projects. They just see a traditional IDE and say "why can't we just use the AS2 timline structure-i know that?" The process will take education to get past the "unknown" factor and onto acceptance with designers.
Ted,
Have you posted the API poster copyright release yet? I'm still waiting for that. PDF on Adobe letter head is all Kinko's will take.
Also, on the topic at hand. As a flash developer with a strong affinity for the "developing side" I'd say this: There is nothing I can do in Flex2 that I can't already do in Flash. HOWEVER, Flex2 does make some things significantly easier and I for one, have no problem combining the two.
The only thing I dread, as I barely have free time now, is having to learn all the classes for Flex2. Which is WHY I want those posters so badly.
What? you say I don't have to memorize the new classes since they are available via the documentation?? Well, the way I work, if I don't have at least an idea of how they work, I will be exponentially less likely to use them and worse...end up writing a class that already exists!
Now for my final critique. Please tell the guys writing the Flex books to stop talking down to Flash developers like we are somehow less intelligent than "real" programmers. Some flash developers know and use ActionScript as thier primary method of composing. Eh hum... I almost always have one frame time lines.
Thank you for listening.
SpecialK
Hey Ted, can you PLEASE post that crossdomain.xml for use with Flex file uploaders for FireFox?
A very interesting article. My commendations on it. I'm speaking as a Flex newbie and really a Flash no-bie. I'm not the type to have "artistic" ability, stick figures are the best I can do. But I am a developer. And we are more and more seeing the realization that the different realms need to work together. Just as in building a house. And even more, in making a house a home.
It's not a concept of "us against them" it's a concept of how can we work together using tools that each of us are familiar with and provide us the functionality to do our job. By doing that we all get together and make a product that is in some ways beyond ourselves, or hopefully so.
I've posted things on forums that have a developer stint to them and gotten pretty much blank stares. I realize to an extent that this is because (I assume to a degree) the readers were of the bent, "What the heck? Development? We're talking Design" but they are both needed and needed by each other.
Again kudos on the post.
Christopher
Just gotta love Flash!!
Its the best!!
If you've got a moment, please drop by Esprosso Coffee and find out all about espresso coffee makers..
Made it myself !!