This post is the introduction to an upcoming set of video demonstrations I will be recording to compare ActionScript IDEs. Please stay tuned over the following weeks to see the results.
The title of this post is a pretty loaded question without a clear answer. Over the next few weeks, I will introduce you to the reasons why you would choose a certain editor over another. For now, here’s a summary of your main options:
FlashBuilder (formerly known as FlexBuilder)
FlashBuilder caters to a certain crowd. Believe it or not, the #1 requested feature for FlashBuilder is improvements for “Design View”. Quite frankly, if find yourself spending most of your time in “Design View”, you’re probably perfectly happy using FlashBuilder and none of my arguments could convince you switch.
You can easily see Adobe’s strategy for developing FlashBuilder by watching any of their “build an RIA in 5 minutes” videos: 1. Create your forms in Design View, 2. Bind to some data using the Service Wizards, 3. Bingo! You have an Employee Directory App!
Also, since Adobe controls the Flex and AIR SDKs, they’ll always be first-to-market to support the latest and greatest features in FlashBuilder (as well as exploiting those features in their marketing).
Now, if you’ve found this development process lacking and think the features for everyday code writing/refactoring leave something to be desired, then you’ll definitely be interested in the time-saving and power features of other environments.
Closing Notes – Adobe’s recent move to only include the “standard” edition of FlashBuilder in CS5 Master Collection was extremely disappointing. There’s a great plugin from ElementRiver called SourceMate which actually makes FlashBuilder worth considering as a code editor. I honestly never gave SourceMate a fair chance since I found many of their dialog boxes annoying when I was on the beta. *update* – you can watch some screencasts of SourceMate’s features here. I’ll do a general review of the final build of SourceMate once I’ve chipped away at my current list of planned videos. */update* Lastly, there are plenty of Adobe videos showing off FlashBuilder, so my futures posts will only ever mention what I find lacking about FlashBuilder.
FDT - “Pure Coding Comfort”
Making the switch from FlashBuilder to FDT can almost seem magical. I’ve heard time and again that people who watch my introduction to Robotlegs video (which features many FDT shortcuts) are blown away by the speed at which you can crank out code.
If you’re anything like me, you spend 90% of your day with your IDE open. If you consider the incredible time-savings you get from that little “Quick Fix” dialog that lets you generate Classes/Fields/etc, you’ll instantly recognize the value of using FDT over FlashBuilder.
FDT has always focused on being the best ActionScript IDE around and have recently made a big push for supporting MXML markup for Flex 3 (and soon Flex 4). Also, they’re recent announcement of plugin support could get really interesting assuming the community steps up. I know I have a few things I’d love to work with them on.
I do have quite a few minor gripes about FDT, but most of them revolve around Eclipse limitations. I’ll get into those gripes in later posts. (I’ve never developed for Eclipse, so I don’t know how the future of Eclipse could help or hurt FDT…) The major gripe (and I know I’m not the only one) is their pricing scheme. I hate software pricing that’s broken into tiers. I understand the arguments for a pure/pro/enterprise (like Windows 7 home/pro/ultimate) and it’s obvious they’re trying to match FlashBuilder’s pricing matrix. In all honesty, the only reason I have an FDT license is because they give free licenses to open-source contributors. I definitely recommend taking advantage of their promotion right now to beta-test the Enterprise version of FDT4 for free until the final release especially to check out their new proflier.
Closing Notes – The addition of plugin support and potentially haxe support makes the future of FDT very exciting. I really hope they can get the community involved with plugins by providing the documentation and support needed for that kind of effort. Lastly, my future posts about FDT will mainly focus on comparisons between FDT and other editors to see where FDT shines and falls short.
IntelliJ IDEA - “Develop with Pleasure”
IntelliJ has historically been a fairly popular Java IDE (it’s actually called “IDEA”, but I think “IDEA” is a silly name for an IDE so I call it “IntelliJ”). The major difference between IntelliJ and FlashBuilder/FDT is that it is not based on Eclipse. So, when you open IntelliJ for the first time, you’re in very unfamiliar territory. I will actually be spending most of my time over the coming weeks talking about the features of IntelliJ to show you that learning a new “non-Eclipse” environment could be worth it to you. Besides, since IntelliJ isn’t Eclipse-based, you can have a project open in both FDT and IntelliJ at the same time to give you the best of both worlds.
Even though IntelliJ isn’t as “pure coding comfort” as FDT for ActionScript development, I’m excited to show of some of the features you would have never known were possible unless someone showed you.
Closing Notes – In the interest of full disclosure, I have been talking with Jetbrains (the makers of IntelliJ) about getting paid to make videos for them so they can get more exposure. They mentioned they only wanted unbiased videos that show both the good and the bad. I’m perfectly content including those videos in this discussion (even if I do get paid) since I won’t be holding back on my opinion where they are lacking compared to FDT.
I’ve got to give a shout out to the FREE and OPEN-SOURCE FlashDevelop. They’ve been around for about 5 years now and have released steady updates (even through the transition from AS2 to AS3). It’s a fairly simple editor that doesn’t really compare feature-wise to FDT or IntelliJ, but it’s a solid, reliable editor that can get the job done for many scenarios.
If price is your main concern, then FlashDevelop is an excellent choice (although if you’re a student, you can grab FlashBuilder for free too). You can download and read more about the latest release here.
The Flash Professional IDE is a great tool for designing Flash sites, but even Adobe recommends you buy FlashBuilder to supplement your coding experience.
Others: TextMate, VI, e-texteditor, Notepad++, etc, etc
Dear Hardcore Ninja Devs, I realize you love your templates, shortcuts, bundles, commands, etc, etc, and you’re probably so hard set in your ways you’ll never change, so just keep on truckin’.
Realaxy is a completely different approach to writing code (Language Oriented Programming vs. Object Oriented Programming) which makes it very difficult to compare to other editors. Realaxy is still in beta, but is showing great potential. I promise to talk about it more once it gets closer to release.