Delinquency and ExternalInterfaces

I've been AWOL from my blog for over a couple of months now. I guess I'm lacking in the whole blogging discipline thing, but I've got good excuses. I've been fairly busy since accepting a new position with b-bline medical, a small firm specializing in medical training products with sexy RIA interfaces. I got turned on to the work being done here after meeting Chafic Kazoun at the Adobe On-AIR Bus Tour. I had just picked up Chafic's Programming Flex 2.0 book, so his sales pitch carried some credibility, and next thing I knew, I was on board. Good work, good people, crazy commute, but enough about that. On to coding goodness ...

I've recently come to gain a greater appreciation of Actionscript and Javascript communication. I haven't had any pressing predicament to steer me into this new-found respect, just a few odd things here and there that have caused me to take pause. For example, I doubt it will remain this way for long, but currently Google has no AS3 mapping API. There are a couple out there such as MapQuest, but come on ... we all know that Google Maps is where it's at. So, I began playing around with ExternalInterface calls in AS3 to see how it could be done. Pretty straight-forward use of Flex / HTML windowing and JS calls. You can play with it here: GoogleFlexMap Or download it here: GoogleFlexMap Source.

Today, I also stumbled across a pretty interesting way of dealing with the lack of full support for "right click" events in Flash. Check out this blog posting for more info. Another good use of ExternalInterface calls.

I think the thing to take away from these examples is that you should never limit yourself solely to what one technology will allow you to do. You may have to jump through hoops, but often you can achieve what you seek out to accomplish. In the case of Flash and Javascript, I think it's probably a good thing to stress that Javascript calls should be as standardized as possible to ensure maximum browser portability. One thing we take for granted in Flash development is that sort of cross-platform consistency.


About this entry