Posts Tagged ‘ flash ’

Why Flash Marches On: The Secret Life of Actionscript 3.0

A web developer friend of mine recently sat down with me at a very fashionable counter in the first Starbucks licensed to serve wine. Naturally this experimental venture is in Seattle, the home of the original Starbucks coffee shop and a city forever pushing forward with the latest internet technology. As he frowned at the limited selection, he ordered a Pinot Grigio and said, “Flash, yeah… I don’t see much call for it. Companies see it as a ‘nice to have,’ but with the iPad and the iPhone blocking Flash, I just don’t see that it has much of a future.”

“Ah,” I said, ‘then why am I getting so many calls about Actionscript 3?”

There is nothing lacking in my friend’s technical expertise or his awareness of the latest industry trends. The evolution of Actionscript-based Rich Internet Applications (RIAs) is the Internet’s best-kept-secret, a progression so under the radar that most of its users don’t know that they see it every day. Coders who dabble in Flash might see Actionscript 3.0 as the next version of the language that will replace Actionscript 2.0, therefore they must learn it, and all the while not know how much it’s being used for, or how. “How” is a significant point, because although Actionscript is the native tongue of Flash applications, the latest generation of Actionscript developers may never see a timeline. They are developing in Flex.

Adobe’s website describes Flex as “a highly productive, free, open source framework for building expressive web applications that deploy consistently on all major browsers, desktops, and operating systems by leveraging the Adobe® Flash® Player and Adobe AIR® runtimes.” Flex is a developer’s environment, a playground for programmers with ready-made classes and libraries that create a visual product without attaching code to any visual elements. In terms of object- oriented programming development, Flex is a powerful tool that lets code think like Java and behave like a desktop application. In terms of influence, it’s the engine behind the persistence of Flash in spite of bad press and bloating media moguls.

Social media games and online gaming communities led the way. An enormously popular family multi-player role-playing game called Club Penguin launched in 2005 and grew to 12 million users by 2007. According to their website, Club Penguin is a “virtual world for kids… In the form of a colorful penguin avatar your child can join the community, engage in a variety of fun activities, chat and play games with friends.” Purchased by Disney in 2007 for $350 million, enhancements and maintenance for the game are developed in Bellevue, Washington where Actionscript 3.0 programmers are in high demand.

Zynga, the best-known producer of social networking games and the company behind Farmville, Yoville, Cityville and Frontierville, works almost exclusively in Actionscript 3.0 from their headquarters in San Francisco. To say these games are developed in Flash would be misleading, as the only thing they share during the development process is the language and the end result: the Flash Player, Adobe’s plugin for browsers. Actionscript and Flash go hand in hand, so as the language gains increasing adoption, the software that accompanies it persists.

The greatest threat to the near-monopoly AS3 holds on social network game development is HTML5, as Facebook leaders evangelize its cross-platform capabilities. Trouble is, HTML5 isn’t ready to play; its features are still hazy, its performance, inconsistent. As Apple relented on third-party application development and relinquished its ban on Flash-based development for mobile apps last year, the future of development looked more fragmented than ever. Technology spokesmen always prefer simplicity, with a single solution to rule them all, but programmers are in the trenches, accustomed to allowing for divergent platforms. Actionscript may not always dominate the development landscape, but it has enough clout now to remain a significant option for many years to come.

After finishing off a Starbucks Merlot that was pleasant but not memorable, the afternoon ended in a trip to the local bookstore. I hastily snatched a book on Actionscript 3.0 to peruse on the plane flight back home. Hours later I opened it up, and after a few chapters detailing the concepts of object-oriented programming, I finally found the code examples. Not surprisingly, it assumed I would be trying it out in Flex.

Best Uses for Flash (not Gordon)

It’s been impossible to miss the storm of controversy in the tech field over Adobe Flash. By blocking Flash content on the iPhone and iPad, Apple has single-handedly inspired clients and advertisers alike to shy away from an industry standard. Under the barrage of ad campaigns and open letters, it’s easy for a marketer or advertising executive to be left wondering which way to turn, especially when so much of the debate is dominated by developers throwing around highly technical jargon. Ultimately, that decision should come from a thorough analysis of what you’re trying to accomplish and who your audience really is.

When marketers refer to using Flash, they are frequently thinking of it as a video compressor, and this is where some of the most vocal opposition to Flash comes from. The complaint is primarily poor performance in regards to CPU usage, but how accurate is that complaint? Flash performance is based on the plugin’s ability to access hardware acceleration, and Apple is not giving Adobe access to the tools they need to reduce the load.  It’s not difficult to conclude that Apple’s block is more about pushing mobile users to buy videos at their store than it is about doing them a service by blocking video readily available for streaming all over the Internet, but the bottom line is the iPhone won’t use it anytime soon. Is the alternative Apple offers in HTML5 a viable option?

According to YouTube software engineer John Harding, the answer is no. HTML5 falls short in dynamic quality control, buffering, the ability to play full-screen and as uncompiled code and suffers from the ultimate shortcoming: no protection for copyrighted material. It’s also far from being an industry standard. HTML5 has yet to adopt a standard video format, and browser inconsistencies will continue to plague HTML5 for years to come.  Video is not its only downfall either. The “canvas element” for HTML5 has been prematurely lauded as a rival to the interactive aspect of Flash. Since current experiments are crude, only sophisticated browsers support it, and few knowledgeable Flash developers would be willing to give up the wide scope of what they can already accomplish to learn it anytime soon. Flash is by nature a compiled application, something Flash game developers rely on to keep their work protected. HTML5 for games would not only require an excessively lengthy amount of coding to do the same job, it would expose it to the world.

There are alternatives to Flash that can accomplish some of the same purposes with fewer drawbacks and higher cross-platform compatibility. JQuery is quickly becoming a replacement for Flash slideshows because it is commonly supported and does the same job – a simple web effect that can take longer to replicate with Flash in terms of load time and future adjustments. Very few websites are built entirely in Flash anymore and shouldn’t be, not only because of compatibility issues and the time it takes to edit, but also because nothing beats the ease of establishing good relationships with search engines like text that lives outside of a compiled application.

Flash continues to have no reliable competition when it comes to interactive games, activities and animation, as the protection it offers and the breadth of its capabilities have yet to find an equal. Offering this kind of rich media should be something your website does as an enticement to engage, but it should not be a cornerstone of your content. This way, search engines and visitors averse to plugins will still find plenty to explore. Javascript is readily available for your developer to include, and will show alternative content should your visitor arrive without the plugin installed. But what about all of the buzz around mobile devices? Who knows who might be looking at your website and what their capabilities are…shouldn’t you leave Flash out of the mix completely just to be safe?

It’s important to keep your audience in perspective. For the average website, between 75 and 85 percent of visitors are on a PC using Internet Explorer, and in spite of the hype, those visiting on a cell phone or iPad will be less than 1 percent. Consider this: are your friends with iPhones using them to browse business websites or do you more frequently see them using applications developed specifically for their device? While the number of users visiting websites on mobile devices will surely rise, analytic trends from the last five years show that these numbers have hardly budged up to this very week, and any change is likely to be slower than you might think.

Although the direction of Internet development is always bright and exciting, it’s also certain to be a vast hodgepodge of alternate technologies, for nothing in the world of competing browsers has ever been consistent. Keeping a close eye on your analytics will guide the Internet developer to the right tool for the right job, and Flash will continue to be one of those tools for the foreseeable future.