Posted on September 6, 2011
Why I love The Flash Platform
The simple answer is that it is just as fun as using my Atari 800 or Atari ST. I assume the same goes for you Apple IIe/ IIGS / Mac Classic folks as well as the C64 / Amiga, and Tandy, Speccy, BBC Micro, MSX, and Amstrad crowds. Making your computer do really cool stuff has always been a draw for the “Computer Enthusiast” (what we were called in the 80’s). For me, the Flash Platforms does this and much much more.
Ok, we all know that Flash has been taking a lot of hits lately from all over the place. There are even quite a few previous Flash game developers who have moved off to the greener pastures of Unity and Coco’s 2D iOS development in hopes of making their fortunes. I applaud anyone who is trying to make a living on indie games and apps, so this is not a disparaging post against any other technology, it is simply some reasons why I still use Flash every day and feel (for me) it is the absolute best combination of power and flexibility ever combined into a unified tool (or set of tools) for rapidly creating games and applications for the web, desktop and even mobile devices.
By Flash platform, I am referring to the CS5(.5?) IDE, Flash Builder 4.5, Flash Develop, Air, the Flex SDK and any other set of tools (Tweenlite, Flixil, Box2D, etc) that help make SWF creation possible and easy. With this full suite of tools, the developer can target PC, Mac, Web, and Mobile devices with basically the same code base.
Flash became very powerful with the introduction of AS2 and then blossomed into a “small-talk” like Nirvana when AS3 was finally delivered. While these underlying technologies didn’t offer the web designer much in the way of snazzy looks, they super-charged the methods by which engineers could increase the power of rendering and began the creation of free 3rd party tools tools and libraries that were and are the envy of most of game and RAD development systems.
The indie game development craze that started in about 2006 with Mochi and Flash Game license (along with all of the portals that licensed and placed games on their sites) really was a throw-back to the early-80’s disk and tape dupe operations where games were sold out of the back of a station wagon in zip-lock baggies. The innovation that came from these Flash games created the Angry Birds and Plants v. Zombies games that we find ubiquitously across all platforms today. The Technology used to fuel 99% of this creative boom…Flash!
Now, why do I love Flash?
It just works. Simply put, I can open up the CS5 IDE and rapidly prototype a game or app in about an hour. I can then port that code to Flash Builder and with just minor interface tweaks, create an Air App that will run in any desktop. Don’t want Air? I can also simply create a projector file that can natively on both a Mac and a PC. I can go mobile by using the Flexbuilder –> Air –> iOS/Android pipeline to create some pretty good running apps that are light years ahead of the HTML5 to Moble Safari apps I have been creating.
Ok, so back to Flash once again. I have had to do a lot of non-game work lately to keep the bill collectors at bay, and have been dickering around in the IDE, wiring up complicated animations built by the genius Producto animators with my own interactive AS3 code. It was a little difficult to get used to at the beginning, but with the correct organization, an AS3 Main document class can be used as a powerful tool to control even the most complicated time-line animation. The great thing is that it all runs blazingly fast in a web browser.
We have all of that now, in one simple, easy to use, very powerful package that can create games and apps to every device on the planet. Flash might never be the tool of choice to create a full-blown web site (although it does have its uses for small and medium-sized sites, especially for marketing), but right now, it KICKS ASS for apps. At least for my purposes, there is no other choice. The game HTML5 Canvas app that runs at 30 FPS on my Safari desktop browser runs as 5 FPS on the iPad 2. If I take the Flash prototype, port it to Flex/Air and then run it natively on my iPad 2, i get 20-25 FPS, Still not incredible, but it certainly is getting there.
In any case, leave me some comments what tools you like for both Web and App development. There are no wrong answers here, just a friendly discussion on what makes sense for what type of applications and what successes you have had.
Now, for me, I’m going back to making some indie games for the fun of it. Maybe I will port one to iOS some day, maybe not, but really, I want to get back to the enjoyment of coding games, and for me, the Flash platform is the way to go.