Let me state first off that I haven’t yet had a chance to play with SWX yet. However I was at LFPUG when Aral gave his talk and announced his ‘new born baby’, and I have to say I sat with a broad smile and a warm feeling inside as Aral presented and finally demonstrated SWX. You see it really did seem to hark back to a more innocent by gone era from of flash. Back to when people saw a perceived problem and attacked it with the tools and techniques they had to hand.
Aral himself voiced his concern over the loss of ‘go at it’ attitude within flash development as it has evolved. In part due to the ‘rule of the rod’ attitude of insisting on Frameworks, Patterns, and Object Oriented development practices. It was truly refreshing to see a developer express sheer glee at returning to a hex editor to decipher the .SWF format with one single goal in mind.
Reading some of the responses to this project has also bought a smile to my face. This time not for particularly good reasons. Its plain to see there seems to be some issue with the ‘raw’ approach that Aral has taken to accomplish his goal. Some quotes that stick out for me revolve around the ‘Hacky’ nature of the solution Aral has produced. The use of
onEnterFrame as a polling device, or the use of
loadMovie as a transfer system. But why should this be a problem? Aren’t they there to be used?
The current ActionScript 2 standard is where it is now as a result of just such work arounds and hacks. Thank you very much. Dig deep enough into some of the ActionScript 2 classes and you will find not only hacks like this, but in some cases, what you might consider worse ones. In
mx.Transitions package for example we find the
OnEnterFrameBeacon a class that not only makes use of
onEnterFrame, but also a
MovieClip that is created to a ‘Magic Number’ based depth? There are I am sure any number of other examples.
Flash is where it is today to any number of early flash developers working with very limited action script and coming up with work arounds and hacks to get it to accomplish the myriads of solutions we are now fortunate enough to be able to develop now. Remember ‘jump movies’ or __proto__ or storing sine tables to do 3d? Before PaperVision. No amount of Java development sensibility is going to change that to quickly.
Even with all this wonderful ActionScript 2 Object Oriented (?) loveliness, developers every day are finding they have to go back to the oldskool to get there applications to work. Flash hacks still have a huge level of relevance today, for the simple reason people are still finding things they want to do in flash that they cant do any other way. Flash Lite, Accessibility and Localization are some pretty good starters that still require copious amounts of hacking at times.