A journal that focuses on Flash Platform development, and a little bit about what I am up to on any given day.

Tuesday, July 26, 2005

Compile me if you can

Lately alot of talk of SWF compilers has been going on. MTASC has arisen as a great alternative to compiling in the Flash IDE, and has allowed developers to integrate into other development enviornments such as Eclpise.

Last week I was meeting with a client of ours that is bringing us into a large software development project. As usual we are developing the Client UI, but this time it is a reqirement for us to integrate with a large software firm's source system. They have a fully automated build system, and requested information from me in regards to automating Flash compiling in their build system. I must say I was embarrased when i presented an open source, third party tool to them as the solution for doing it. Not that MTASC is bad or anything(it is great!), but it just seemed silly that Macromedia has not addressed this type of workflow. The emergence of MTASC alone, is testimony to the demand for such a solution.

Since that, I have been using MTASC on a project and I must say that there is an astounding difference in compile time using the tool. We have a large project (SNL Merger Model) that utilizes 100+ Actionscript classes,(outside of the mx framework) that we are currently in the process of reworking to compile under MTASC. I must say that this is not an easy feat. In a project that large, there are many little typing and variable definition rules that we did not adhere to that MTASC enforces.

Already though, compiling is faster and much less stressful on the system. Compiling the application currently from the Flash IDE takes about 3-4 minutes on my computer(1.7 gig, 512 RAM). When it completes, the computer feels as if it got hit by a car, and takes a minute or two to recover from the process.

Now imagine debugging a Flash application that takes that long to compile. Every little change causes you to waste time as you test. It has been a major problem on the project, and when I say major I mean that potentially up to 1/4 of our development time has been spent on compiling.

So as a result, we are investing the time to alter all the code to compile under MTASC. More than that I have built a little UI and command set for running MTASC from the Flash IDE. This was a bizarre concept for some developers I talked to about it. They had always percieved MTASC as a tool to utilize in other enviornments rather than the Flash IDE. I think however that using MTASC in Flash is a simple and great idea, and it is looking like the Compiler will not only solve our problem with SNL, but fit easily into the workflow we have already established.

So this exercise has led me to some conclusions:

1/ My #1 wishlist entry for the Flash IDE is an improved compiler, comparable to or better than MTASC. I want to see speed and I want to see the ability to add assets or classes without recompiling the whole swf.

2/ MTASC is a great example of what Flex should be. I still do not understand why Flex must be a server (other than price, and some of the "nice to have" server features).


Blogger John D Giotta said...

Very nice usage Tony.
I've done a few RIAs just with Eclipse and MTASC alone.

Its great but there are areas that only the Flash IDE can fill.

8:39 AM

Anonymous Carlos Rovira said...

Hi Tony,

Yeah MTASC is awesome. Have you think in post your command to compile in Flash IDE with MTASC?


1# - MM could think in let the user configure if he wants to compile with MMC or with MTASC as an option in the new upcoming IDE.

2# - Well, I think that Flex has a bit more to offer and currently the OS community have a lot of work to do if we want to compete with a server side tool like Flex.



2:19 PM

Blogger Tony said...


I may post the extension eventually. Right now it is classified as an internal tool. There are a few issues that I will eventually work out, 1 being handling Excludes. I have the UI facility for it, but I have yet to implement it. But it is likely that it will appear eventually.

1#- I already have that functionality. By using custom keyboard shortcuts and a MTASC build JSFL command, I can easily create a routing script on CNTRL+Enter.

2#- Flex is a hell of a lot more than a compiler for sure, and it's feature set may not be easy to match. However, my point addressed a target audience issue that Flex should be built to satisfy.

To me, deploying Flex as a commandline application like MTASC could be alot more beneficial to the Flash development world as opposed to it being a server.

I am not not positive that the Application development world looking to Flash but scared of the timeline would have ultimately wanted a server as a solution. Instead they wanted a way to develop content for the Flash Player with XML and Actionscript and the ability to compile via commandline.

2:41 PM

Anonymous Danny said...

If you have a large project with many classes and it takes a long time to compile those classes. Then you could compile the classes into a SWC file and put it in you library. This may speed up your development; especially if you're using 25% of your time to compile.

12:37 AM

Blogger The Computer Guys said...

Hey, you have a great blog here! I'm definitely going to bookmark you!
I have a speed up computer freespeed up computer free site/blog. It pretty much covers speed up computer free Problems with your Windows Xp Computing !
Come and check it out if you get time :-)

5:27 AM

Blogger kleinoooo said...

Hey, you have a great blog here! I'm definitely going to bookmark you!

I have a investment advisor site. It pretty much covers wealth management related stuff.

Come and check it out if you get time :-)

6:35 PM

Anonymous Marketing System said...

Hey, you have a great blog
I have a Internet Marketing System site.
If you're interested come and check it out.

3:43 AM

Blogger Investment Center said...

Hi thanks for your blog, I liked it! I also have a blog/site about child investing
that covers child investing
related stuff. Please feel free to visit.

12:45 PM

Anonymous Anonymous said...

runescape money runescape gold runescape money runescape gold wow power leveling wow powerleveling Warcraft Power Leveling Warcraft PowerLeveling buy runescape gold buy runescape money runescape items runescape gold runescape money runescape accounts runescape gp dofus kamas buy dofus kamas Guild Wars Gold buy Guild Wars Gold lotro gold buy lotro gold lotro gold buy lotro gold lotro gold buy lotro gold runescape money runescape power leveling runescape money runescape gold dofus kamas cheap runescape money cheap runescape gold Hellgate Palladium Hellgate London Palladium Hellgate money Tabula Rasa gold tabula rasa money lotro gold buy lotro gold Tabula Rasa Credit Tabula Rasa Credits Hellgate gold Hellgate London gold dofus kamas buy dofus kamas 血管瘤 肝血管瘤 音乐剧 北京富码电视 富码电视 富码电视台 7天酒店 7天连锁酒店 7天连锁 自清洗过滤器 过滤器 压力开关 压力传感器 流量开关 流量计 液位计 液位开关 温湿度记录仪 风速仪 可燃气体检测仪 wow power leveling wow powerleveling Warcraft PowerLeveling Warcraft Power Leveling World of Warcraft PowerLeveling World of Warcraft Power Leveling runescape power leveling runescape powerleveling

10:27 PM


Post a Comment

<< Home