« Simple NeoSwiff Example QuickDefine »

April 26, 2005

Competition is a good thing

This entry started off as me describing some of the cool features of NeoSwiff that Flash is currently lacking. Then, I started rambling and made this post much longer than I wanted, so I decided to cut out the NeoSwiff features for another day and leave my ramblings in tact.

Hi, my name is Darron. I'm a developer, and I love seeing new .swf creation tools hit the market. Here's why.

It has always been the philosophy of Microsoft that if you want people to develop for your platform you have to give them appealing tools that increase productivity and efficiency. While I'm not a fan of Visual Studio itself, I do appreciate how Microsoft caters to developers and tries to make tools as developer friendly as possible. I prefer Eclipse to Visual Studio, but I liken that to my time at Lehigh where we learned Microsoft was the devil and you had to code in emacs to be a real programmer.

For the longest time, the only kid on the block to build Flash applications has been the Macromedia Flash IDE. While this has been a good thing for Macromedia, it has been a bad thing for developers. Macromedia does not seem to share the philosophy of providing great developer tools to bring developers to the platform. Rather, the platform itself (the Flash Player runtime) has always been attractive enough. If you wanted to build a Flash application you simply used Macromedia Flash, no questions asked.

Now, don't get me wrong here. Macromedia has a very open developer community with great people behind it. In fact, I'm not sure that I really blame them at the moment for their lack of good developer tools as Flash has historically catered to designers. Too much of the general public still associates Flash with annoying banner ads, though I see this mentality changing in the future. Rich Internet Applications have only been starting to gain steam in the past few years, so the Flash developer base is still a work in progress...

That said, tools like NeoSwiff and Xamlon Pro Flash Edition are amazing wins for the Flash developer community. Macromedia has some competition now, and it's going to have to fight to keep it's developers using ActionScript. Right now, I'd say they're behind the curve. In Visual Studio I have a much better coding experience than I do in the Flash IDE. It's not just the IDE either, but rather the assortment of complimentary tools available. How many UML programs generate ActionScript? How many generate C#? Now how about round trip engineering? Model driven architecture, anyone? These are the things that appeal to my inner Software Engineer. ActionScript doesn't even come close to C# in this respect.

At the end of the day it's the coding experience and supplemental tools that drive which product I'll use to build my Rich Internet Applications. I like NeoSwiff not because I have something to prove or because I'm angry with Macromedia, but rather because I like the plethora of tools available for the C# language itself (remember, C# != .NET, the language itself is an ECMA standard). As an aside, check out Aral's post on RIA development tools.

To be honest, that's why I wanted to help with ASDT. Since I'm using ActionScript every day and no tool out there currently meets my needs, I started using ASDT coupled with Eclipse. I event wrote an XMI to AS code generator so I can export models from ArgoUML and automate stub code creation. I then donated some spare time to help build in the features to ASDT that I wanted that weren't currently available. But then a reality check hit me - it shouldn't be the developer community's responsibility to build the tools we need, it should fall on the company that wants us to code for their platform.

I love the Flash Player.. and with NeoSwiff we're finally able to use the sophisticated tools that traditional software developers have been using for years to deploy to our beloved Flash platform. It's about time.

Macromedia, are you listening?

Comments

  • I do totally agree. Good post, man ;)

  • As both as designer and a programmer, I feel two types of pain with Flash: limitations on what I can do visually, and limitations on what I can do programmatically. However, I also derive a great deal of joy from discovering ways around those limitations. I always wish for a better product from Macromedia... however, as I've watched the Flash product (and its developer base) mature for several years, I think it's fair to say that they have been listening.

  • Thanks for your comments Tom, though I have to disagree. Yes, ActionScript 2.0 was a nice addition for developers, and yes Flash has grown up over the years, but the tools have not grown up with it. If you have ever used the Flash IDE to edit external .as files, you know exactly what I mean.

    The Flash IDE's ActionScript editor, the development tool that Macromedia provides us to build RIAs with ActionScript 2, is a joke. No wonder more C# / Java developers don't switch to Flash - the ActionScript toolset pales in comparison, and for them it would seem a major downgrade despite the Flash Player being a great deployment platform. I'm not just talking about code editing either, but all of the supplemental tools as well.

    If you want to code in ActionScript 2 you have to use an external editor because Macromedia doesn't give us the necessary tools to do so. Does anyone at Macromedia even use the Flash IDE to edit .as files?

    I want better tools for ActionScript because I know what it's like to code in Java / C#, and coming back to ActionScript is sometimes painful, but I always do it because I love Flash in general. With a solution like NeoSwiff, I get the best of both worlds - the established toolset of C# (IDE + extras) with the ability to deploy on an amazing Flash platform.

    It's my dream for Macromedia to provide a better toolset for ActionScript. If they don't, I can see a lot of the developer flock going to a toolset that's easier to work with and that makes them more productive.

  • May be an unpopular response but Macromedia need to make money somehow.. or else they wont bother making Adobe Flash 9!

    All these extra free tools are great, but once you can create flash movies entirely without the flash IDE, more people are going to look into that instead of forking out hundreds of dollars for the product.

  • Very good post darron,

    You really speak my mind. I am a developer too and used to using Eclipse for programming Java applications. Whenever I have to use Flash to program ActionScript my productivity goes straight out the drain.

    That is why I am NOT particularly interested in the new effects that 8ball might bring. I am begging to God that they have improved the ActionScript editor significantly. Else they'll for sure see me abandon Flash as a development tool.

  • Ash - you're right, and that's exactly what I'm saying. NeoSwiff makes flash movies without the Flash IDE. So does Xamlon, so does MTASC, and so does Laszlo. Unless Macromedia can provide a better toolset for ActionScript, they stand to lose money because of the competition that's starting to heat up.

    Like I said, I can see developers migrating to the product with the better toolset, as long as it outputs a usable .swf file.

    By the way, somewhat related - Xamlon announced pricing at $500 at this years FITC conference.

  • Hi Darron,
    I enjoyed reading your post and comments. If you haven't seen it already, I posted something related here:
    http://flash-communications.net/news/fitc2005/index.html
    You might enjoy the little "Note to Macromedia" about half way into the article. My other big frustration is the lack of features of the component set in Flash Professional - no layout components, no tabs, no slider, no drag and drop, no data validation etc....
    Your comment really hit home for me: "But then a reality check hit me - it shouldn't be the developer community's responsibility to build the tools we need..." I don't think Macromedia has to do everything but they have a lot more to do before developers can cost-effectively contribute. Thanks for posting a great set of "ramblings."
    Yours truly,
    -Brian

  • "Macromedia, are you listening?"

    I'm just one person with the group, and I see that you covered many topics, but I'm not sure what you'd like me to relay to my partners.

    Maybe the core is "I want a [different/better] coding environment", is that close? If so, what is it that would show you that a given coding environment is the desired one... would it be Eclipse, optimized script compiler, creation of certain types of SWF just from text, other...?

    [Am unable to submit comment due to "questionable content"... I'll try trimming off sigs, email, URL until it goes....]


  • If they werent listening, we wouldnt have the tools we do today. I cant imagine doing what we do today in version 3 of the IDE or even 4 for that matter.(development)

    Flash as a platform evolved to what it is because people wanted to do more with it, primarily because of its visual capabilities. (design)

    I think it irks many programmers that designers can actually build so called apps and other interesting functional things that dont look so dry. And honestly, do the majority of Flash users write external as files? All these third party programs are still targeting the *Macromedia engineered* runtime, which is where all the power of Flash really lies of course.

  • For Flash programming, I use:
    - Flash IDE for compilation and (some) testing - haven't quite got MTASC to play nice yet
    - Flex Builder for all editing - works great
    - NaturalDocs - just cos it's so easy and so helpful
    - AcmeWebWorks' Admin Tool for testing and debugging

    What's missing? VS.NET level intellisense (in that it works properly for native types, as well as one's own), and compile-from-FBuilder/DW. Add these two things and productivity will increase.

    Looking at the level of integration in Flex Builder for Flex, i'd say that at minimum a Publish-in-Flash hook should be an easy feature to add. Granted, FBuilder isn't part of Studio, but it's older brother, DW, is... so how about some Studio integration? :)

    I'm no Java programmer, I've no clue about eclipse, ADST, etc - so I've learnt to make things work outside of that.

  • I use Ming on Linux. And I'm coding in C. It's also very easy to switch to perl, java, php, phyton, ruby... Server side or otherwise ming gives me sooo much power. All I want from Macromedia is the next generation Flash Player! (Of course MM also has to open up the specs so that ming can adapt)

    Ogla

  • Darron, I missed the boat on this post by over a month...does this mean you no longer are helping out with the ASDT plugin? I've noticed the project has stagnated--I was hoping to see many of the features available in the Java editor integrated...bummed to say the least--I've really fallen for Eclipse.

    I just wondered how you square the emerging commercial contenders with an open-source project such as the Eclipse / ASDT combination. Isn't there something to be said for the development of free open source tools? I agree with many of your points, but like the idea of a toolset built and maintained by the development community that is not beholden to third-party commercial interests.

  • Good Post - as a newbie(7yrs?)flash/c# developer I pretty much agree.

    VS Flash MX :) I luv u

    Mono? Eclipse? Ming? nah poo!

    Ive worked on j2ee projects way too much spaghetti code (lazy teamleaders didn't help with anagram variable declarations and pooh oop decisions)

    Add an eclispe thingz got too much 4 my eyes...

    My tips

    "Don't listen to SENIORS"

    They talk shit...

    And love it...

    Just nod your head in respect to them...

    And keep doing the best you can...

    Keep it up...

    Oh and stay clear of smelly java/unix coneheads comin over all bladerunner itz not good for chicks...

Post a comment

Remember personal info?