Learning ActionScript

When I first jumped into programming in ActionScript about a year ago, I was carrying a lot of baggage with me from 6 years of Director/Lingo development. I was expecting more than just a change in syntax – this was going to be a paradigm shift for me! From coding in a language that comes close to writing a sentence, to something that resembled a real programming language. Heck, it even had {}’s.

Thing’s didn’t go as smoothly as I had expected though. This was nothing like what I had expected or was used to. Code in separate text files? What in heavens name are classpaths? And why does this language have an overdose of ;’s? Being on a tight schedule didn’t help much. I threw in the towel, hacked together something using old school techniques, and just about threw out Flash from my arsenal.

But an opportunity presented itself to give a second shot at Flash. NPAPL contracted their website redesign to Fractal Ink and an important aspect of the project was their portfolio. Since they wanted a lot of glitz into the presentation, this task would generally have been assigned to the designers. But due to the immense volume of data involved (100+ projects), I figured that a data-driven solution would make more sense than having the design team churn out a multi-megabyte, timeline driven file.

So I got to work digging up tutorials on component development, database access and XML parsing. Since the site was being hosted on a Windows server meant that my PHP skills would be of limited help (we ended up using static XML files instead). But the Flash code was pristine. I had finally broken through the glass ceiling.

I don’t remember the instant at which the change came through. But even today as I look upon the code, it looks nice. Simple, easy, readable. It took less than a few seconds to understand how it all fits together. What I remember thinking at that time was “How will I do this in Director”. By abstracting my thoughts out of the unfamiliar syntax of ActionScript, I was able to work my way around the requirements and atleast devise a solution. What remained was a very simple translation exercise, which got underway with ease.

I’ve moved on a lot since then today. I’m not a Flash guru or anything. But then I’d rather not be stuck working in a single environment day-in day-out. The new world of the interweb is rich in technologies, and I’m going to taste them all.