14 July 2009
Initially I wanted to do a complete write-up on what it would take to move your entire Flash operation away from Windows. How much fun that would've been. Instead I opted for a more mashed-up approach on ethical philosophies and how they relate to the workflow of building RIA's and Flash websites mmkay. Like loads of people, I have my own reasons for working on the Windows platform for the last 8 years (professionally that is). The lure of working on a Mac has always been there, although only until recently, with the release of the iPhone have I realised Apple and Microsoft are very much the same. Both companies need to make money. Nothing wrong with that, but as a consumer I started to think that I don't want be limited to one platform. Remember the old "plug-n-play" concept from Creative Labs? Well I want to plug in any computer and be able to play. What is the point of showing one conglomerate (not sure if they are?) the finger when the other is sticking it where the sun don't shine. I am of course referring to the required Mac should you want to develop apps for the iPhone to name but one example. It's like Apple are saying only cool kids allowed here. Oooh, look at me! Look at me! A bit jealous are we? You bet your ass I am. As an aspiring technologist, some of the coolest technology is not available to me. It's expensive, and from what I've seen the extra money does not value "the experience". All hail apples through windows.
But alas, something appeared on the horizon which tickled my fancy. I couldn't believe it. The same OS I ripped off at varsity, is now the sole driving force behind a movement that is known as Ubuntu. Ubuntu is an old humanistic philosophy which basically translates to "I am because you are". I like that. I like the idea of being a unique and pretty (grain of salt) snowflake because other snowflakes exist around me. That is cool. Can I play too? Best of all it's free. A release happens every 6 months. What more do you want?
So head first I dive into Ubuntu. Installation was a breeze. A boot menu was created for me as I already had Vista installed. From there on it took some getting used to. Customisation is in abundance with Ubuntu. For a lot of people this isn't new. It was however only until I had to start doing my work at home that things got a bit hairy. My dreams shattered fairly quickly. It became more of an i-am-not-doing-anything-cause-you-run-something-different philosophy.
The decision was made to give this move a real go. That would mean designing a Flash website and building it on Ubuntu. It was established very quickly that I wasn't able to design on Linux. Searching high and low all results kept on pointing to the same application - Gimp. I'm not going to say the interface is not intuitive enough because that is cop-out comment in my opinion. I think it's because in most cases people feel it's not Photoshop. Being different doesn't mean you suck, it means you need to get use to it and spend a little time. I can hear Different in the background shouting "Please give me another chance!" I'm sure Gimp runs some wicked code under the hood to produce algorithms that Photoshop could learn from or have already "learned" from. No? This was a real life project and time was of the essence and I decided not to pursue this avenue nor the other version of Gimp that mimics Photoshop's interface. The expiration date (last updated) on this website made me nervous. I am after all a newbie and should anything go wrong, it will take me hours to fix. Such is my trust in the open source community. Shame on me. It's Linux and if something goes wrong you probably just don't have The Right Stuff. But the truth is, I've successfully added and removed a few applications, used the terminal to get and install Eclipse. Nothing was going wrong and I'm starting to feel a little elite. Now if I can just find a program to design a website with.
This quest resulted in using Inkscape which is a fantastic little vector based drawing program. It was a little slow at times partially due to me sticking bitmaps in there but still seriously cool in my opinion. In fact, I will be happy to use Inkscape for all my projects. I did have some problems in converting my final design to Adobe's Creative Suite for client preview but that is partly due to the inconsistencies in the SVG format. Working with Inkscape, it felt a lot like the Flash IDE without the timeline. Obviously a different interface but still intuitive enough to get to grips with quite quickly. Because the SWF file format is open source (thanks Adobe), someone in the community must be able to write an exporter/plug-in to be able to export the design as a SWF with linkage ID's. This would mean that my dependency on the Flash IDE will disappear, and I will be able to develop only on my preferred platform Ubuntu.
What became evident very quickly was Ubuntu is super cool for programming. I know I know. Eclipse actually runs a lot quicker. Start-up times are unbeatable, there is simply no comparison. I can't compare this to Eclipse on a Mac as you may recall I'm not part of the iPooped-club. I know I know. Also, for all the die hard Linux users out there, you've been right all along. I admit it but with a caveat. It's not for everyone, and I'm hoping there will emerge more programs like Inkscape for Linux to sway some designer/developer folk. I think what Ubuntu has done is show that the once secluded world (some call it a secret society) of developers who use Linux, is now opening up to novices buying cheap netbooks with a variation of this operating system. Ubuntu is gaining ground and at a reasonable pace too. Ubuntu has embraced all people wanting to use the operating system, and you'll notice this when reading or posting a question in the forums. The Ubuntu forums even shed some light on some of the secret society handshakes and practices. The community seem to be different to what I've known before when I was introduced to Linux at varsity. It's more welcoming and for a novice like myself this is an indication that Ubuntu is on the right track.
Adobe is pushing for more market visibility with Flash Builder in the current economic climate in other development communities, specifically in the Java world. Even though the Flash community is tight knit, it has some way to go to meet the needs of other developers from other backgrounds. And here is where I agree with Mike Slinn, if you want to tap into this secret society, you have to make a substantial effort to meet their needs. One way this effort was somewhat offered and then removed again in the form of Flex Builder 3 for Linux. By branding Flash as a "platform", Adobe should learn from other giant's mistakes. Having said all this, I'm somewhat torn as my livelihood is depending on Adobe moving the technology forward albeit only on two platforms. This means my preferred choice is still not an option unless of course Inkscape manages that feature. But until then I'll be on the edge of the fence - waiting to jump.
As far as the Flash Builder and Catalyst workflow go, I think what Adobe has done is very impressive and I can see the problem they are trying to address. However, I'm not sure I would want to work with that much automation. How will catalyst integrate into existing and well supported frameworks? There is no doubt that for wire frames, rapid prototyping Catalyst is ideal. I cringe every time I get an FLA and I'm dealing with thousands of nested MovieClips and Symbols with automagically generated names. In the same way Catalyst will name instances if you don't name them but I have yet to meet a designer that gives their library items descriptive sensical names. Different strokes for different blokes I guess. The amount of ways of doing things in Flash is partially responsible for this. Trying to have a one-size-fits-all solution is nearly impossible.
So, to summarise, I still have to boot up in Windows to use any of Adobe's software, which happens all the time. This means I end up having to use Eclipse on Windows as I'm too lazy to reboot into Ubuntu for most maintenance projects. But for projects where I get to choose the process, I get some valuable time on Ubuntu. And that makes it all worth while.
Understandably so, Adobe has opted to freeze development for Flash Builder on Linux until further notice and there is no intention for any of the other programs other than Flash Builder to potentially move to Linux. All valid reasons are listed by Adobe, but I think as market share changes, eventually they will have to succumb to the secret society. And that my friend will be a glorious day.