Thoughts on a Flash-based agile development framework

With all the hype that’s floated around in the past few years regarding agile web development and (naturally) generated programming frameworks for agile web development (See Ruby on Rails, Django, CakePHP, TurboGears) I’ve recently been intrigued by the idea of building a similar database-driven framework for Flash/Actionscript.

Using the same gists of these existing frameworks, can you build a similar one for Flash/Actionscript? In fact, if you’re going to use Flex instead of Flash, you can perhaps even get these frameworks to spit out MXML for you instead of HTML (and some of us, like Stuart Eccles and The Midnight Coders are already doing that).

Still, I’m looking for something a little more Flash-focused. The one thing that I am not necessarily in love with in Agile-Web-Development-Land is that these frameworks require you to work in both the client-side language (HTML-Javascript-CSS) and the server-side language (Ruby for RoR, Python for Django, PHP for CakePHP and so forth). Now, of course, if you’re dealing with those languages, that’s just the way the world works. And, when throwing Flash into these frameworks, it just becomes another player on the client-side.

But, we know Actionscript has the capabilities of both client-side rendering and data access. You can create and tween movieclips with the same language that can build full-on OOP-stuff and grab and send data to the server through XML or LoadVars or Remoting. So, to simply smash Flash/Actionscript on top of these existing web frameworks seems, to me, to be only somewhat advantageous and not really exploiting the uniqueness of Actionscript in its entirety.

My point is, if you really think about it, you could build a framework where you only wrote in Actionscript. The server-side stuff would be entirely dictated and managed by this utopian framework. That’s the gist of what I’m working on at Xoprecious.

There are many questions to ask, before actually figuring out how this kind of generated framework would manifest itself.

  • What would scaffolding (generating templated views and view logic) look like in Actionscript?
  • How do you handle state and asynchronous data loads in this kind of a framework? (i.e. What tools and API should a developer get for trying to construct query calls to the server from Actionscript)?
  • Would this actually perform well?

Being the stubborn Flash-o-phile that I am, I see an opportunity to marry agile web development with Flash application development. It will take a little bearing with me.