Archive for August, 2008

FlashDevelop 3 Beta 8 Released!

FlashDevelop 3 Beta 8

After several months of waiting, FlashDevelop 3 Beta 8 is now out! :D

I’m a fan of this awesome editor, and I almost couldn’t imagine myself coding in any other environment now without FlashDevelop. After installation and running through, all I can say is that it’s definitely worth the time to upgrade.

Don’t take my word for it, give it a roll yourself. ;)

Check out the list of new features being rolled out, or simply download it now. *w00t~!*

Huge thanks go out to the FlashDevelop team which puts together such a great editor. :)

AddThis Social Bookmark Button

The Erik Natzke Effect

The Erik Natzke Effect

The Flash Forward Conference always happens too far away from where I live, and since I don’t have the luxury of deep pockets, I’m really glad the community always posts up information to keep the rest of us updated. :)

After reading Lee Brimelow’s coverage, especially on the part where “Natzke Always Inspires”, I do feel I missed something great. I still remember back in Singapore MAX 2006 when I first saw Erik’s works, they were truly awe inspiring.

Though I missed Erik’s talk, kudos to him for releasing the full source of what he showed at the Flash Forward Conference! After viewing his works, I got inspired all over again, and I can’t wait to play around with the source files! :D

I guess that’s what you call, _the Erik Natzke Effect_. *loL~*

AddThis Social Bookmark Button

Will ActionScript 4 Be Completely Different… Again?

That’s basically my concern after reading this article by Hank Williams that The EcmaScript language standards body has killed the draft 4.0 version two days back.

What will Adobe do now with its (suddenly proprietary) ActionScript? If AS3 is now no longer base on an open standard, and if Adobe wants to adopt another standard, will it mean that AS4 will be completely different?

If indeed it’s going to be different, how many developers is Adobe going to risk alienating, or worse, losing? The number of products that Adobe owns revolving around the language is also massive, and that only means a total rewrite for them. But that’s just the centre of the ripple.

There are countless web and desktop applications that are using the Flash Platform out there, namely Flash, Flex and AIR. While I’m pretty assured that if Adobe moves on to another standard, that a new AVM3 will take care of the next generation AS4, businesses with these applications as their core is going to suffer.

The reason? Well we’ve seen how AS2 wasn’t able to leverage some of the latest advantages of the additions to AS3. If businesses with big enterprise applications don’t move on to AS4, they are in the risk of losing those advantages, whatever they might be. However, if they do, it only means a total rewrite of their applications, spending additional resources because of this.

I should really stop being a paranoid. I really want to trust Adobe to make a wise decision. Read the article and contemplate what’s going and what’s not going to be.

AddThis Social Bookmark Button

Review: FDT Vs FlashDevelop

FDT Pure Coding Comfort

For my recent presentation on the Gaia Framework for Adobe Flash, I chose to steer away from my usual FlashDevelop editor to use FDT.

Since I never code in Flash IDE anymore, and that I use FlashDevelop daily, in this review of FDT I shall present a view that’s unique by comparing the two. I am no Flex developer and chances to use MXML is far in between, so this review will also be focused on using FDT to code ActionScript.

Importing

After using the Gaia Framework to generate the core files for me, importing them into a new project in the workspace was pretty easy.

Flash Explorer (Pane) -> Right Click -> Import… -> General -> File System

It took me a while to understand that I have to set the “Source Folder” for the codes to parse.

Flash Explorer (Pane) -> Right Click on folder -> Source Folder -> Add to Classpath

Code Warnings / Errors

Right after parsing the codes, the “Problems” pane became full of warnings (400+ to be exact). While I think it’s very useful to know about warnings and errors, showing me all the warnings found in the Gaia Framework and TweenLite were too much for me. If my code has a warning now, I will probably not notice since I’m never going to sieve through all those warnings to find mine.

It’ll be better if there’s a function to NOT SHOW the warnings from certain packages/classes.

[UPDATE 2: As highlighted by Maxim, Eclipse has a filter mechanism (Configure the filters to be applied to this view) for the "Problems" View (upper right corner of the view).]

This way, we don’t have to sieve through codes that have warnings that were not written by us in the first place.

What’s good however, is that errors are made known to me while I’m typing, and I can immediate correct it. This is invaluable and something that FlashDevelop doesn’t provide. Solid feature.

TODOs

While both FlashDevelop and FDT provide the “Tasks” pane to keep track of TODOs, FDT shines better as it provides checkboxes, and allows you to prioritise your tasks.

Templates / Snippets

(Ctrl+Space)
I’ve learnt to code so much faster with snippets in FlashDevelop that I tend to reject any editor without this type of feature. I’m glad that FDT provides a similar feature called Templates.

Windows -> Preferences -> FDT -> Editor -> Templates

It makes me a happier person that FDT’s templates are even more robust, in that you can set variables in place so that when you generate it, it lets you go through and change each variable via a tab process.

Open Resource

(Ctrl+Shift+R)
I love this feature in eclipse, and since FDT is built into eclipse, I’m happy to be able to use this feature again. FlashDevelop does not have this type of feature which makes finding files on large projects a hazard.

However, if the resource that I found and opened is a .fla file, the IDE tries to open it in eclipse itself, which of course, is undesirable. I’m not sure if FDT is able to do anything to change that, but will definitely make this feature stand out even more if it opens up in Flash IDE instead. Another work around is filtering out .fla files altogether. The former is definitely better.

[UPDATE 3: Even though editing this does not affect Open Resource, it is still good to know. Maxim mentioned that you can open .fla files in Flash IDE from FDT.]

Window -> Preferences -> FDT -> Tools -> Flash -> Flash IDE

Refactor

Both features, namely “Rename” and “Move” of refactoring are great. I can rename variables and move them from one package to another, and it automatically updates all references. Very awesome. Given the fact that FlashDevelop does not have something like that, it makes FDT stand out even more.

Quick Outline

(Ctrl+O)
There are so much use cases for this one because it’s so useful. All I have to do is to press the shortcut, and I can select what I’m looking for, and will be brought to the location. This is something that I wished FlashDevelop has without me needing to go through my codes, or worse, someone else’s.

Type Hierarchy

(Ctrl+T)
This feature is a worthy mention. In FlashDevelop, I often find myself looking up classes and their ancestors by hitting F4 multiple times. In order to check a certain class ancestry, depending on the situation, I might have to do these quite a number of times. It’s convenient, but once it spans over a few classes, the process becomes cumbersome.

The “Type Hierarchy” feature on the other hand, brings up the entire ancestry and in a single glance, I can see if the class inherits from another certain class. This saves me a fair amount of time from opening those extraneous files.

Code Assist

(Ctrl+Space)
While the Code Assist feature is great, it is a hassle to use. It only comes up whenever I hit the shortcut, which slows me down considerably. I was not able to find a way to make Code Assist come up as soon as I type something, unlike FlashDevelop, which has this as its default behaviour.

[UPDATE 4: Find how to boost your code assist!]

Contextual Code Generation

(Ctrl+1)
Unless it’s not known to me, FlashDevelop does better in this area. In FlashDevelop I was able to generate functions (including getters and setters), implement interfaces and promote variables, all by using a single shortcut. I was not able to find such a feature in FDT.

[UPDATE 1: After a hint by Kris, I played around and managed to find the shortcut to perform contextual code generation in FDT is Ctrl+1. It was however, still not as good as FlashDevelop in my opinion, since I was not able to implement interfaces with this shortcut.

A particular note to generate functions is that you have to end off the variable with parenthesis before it will work for functions.]

[UPDATE 2: Maxim pointed out to me that the "Quick Assist" function (Ctrl+1), is able to implement interfaces too. Read his full comment on it. :) ]

Code Formatting

(Ctrl+Shift+F)
I adore the details that FDT allows me to customise the way to auto format my codes. For the first time, if I’m taking over someone else’s project, I can simply hit the shortcut, and dirty formatting are instantly cleaned to the way I like it. Set your preferences in:

Window -> Preferences -> FDT -> Code Style -> Formatter

SWC Browsing

Not something that I view as important, FDT is able to view what classes are inside an SWC, and generates a class with its methods and variables for a detailed look. SWC browsing takes other people packaged code to a view that’s neater and easier to refer.

FlashDevelop on the other hand, even offers you to see an overview of the classes used in both SWF and SWC, although there’s no generated source to peek.

Cross Platform

Love the fact that FDT is able to work in both Windows and Mac OS environments. As FlashDevelop uses the Microsoft .NET 2.0 framework, it can only run in Windows.

Price

The price is possibly the biggest hold back for me, since FlashDevelop is free to use.

AddThis Social Bookmark Button

My Gaia Presentation At Flex Usergroup

What's Gaia?

Right, so yesterday I did a presentation at the local Flex Usergroup about Gaia, titled “What’s Gaia?” It’s kinda a last-minute-decision title, but I guess since the majority of the attendees are Flex programmers, they may not know the existence of the powerful Gaia Framework for Adobe Flash. :)

What was really cool was that Steven Sacks, the creator of the framework, joined us in the presentation via our channel in ustream.tv as well. He even helped to answer some questions from the floor that stumped me. Thanks Steven! *w00t~*

As promised, you can take a look at the slides, and download them to view or play with them. Remember I mentioned that site.xml is _the XML that rules them all_? Have fun! :D

The session was also recorded (embedded below), but you have to forward to approximately the 24th minute to skip the announcements. ;)

Biggest turnout at FUG yet!
Biggest turnout at FUG yet!

Ma look! Me presenting!
Ma look! Me presenting!

AddThis Social Bookmark Button