Fellow niners,
I'm posting this write-up of FlashForward 2005 San Francisco, which concluded today and which I attended. I thought it might be of interest to some of you who are working with the web, or who are contemplating the development of other presentation technologies (e.g. Avalon.)
Any Flash junkies on C9?
-------
INTRODUCTION
I’m in San Francisco, having attended FlashForward, a twice-annual conference dedicated to the Macromedia Flash platform. This is the fourth FlashForward conference I’ve had the privilege of attending, and it’s been interesting to watch the growth of Flash as a platform for web-based content delivery. Though I’ve had my eye on Flash for more than five years, I only started developing seriously for Flash in the past year. Macromedia’s format is maturing into something quite compelling.
The following conference summary is divided into two parts: first, an “executive overview” of the big ideas explored in the conference, and second, a detailed discussion of these issues. The first section is appropriate for non-technical users who have an interest in web presentation. The second will probably be most interesting to managers of web content, web developers, and Flash junkies.
EXECUTIVE OVERVIEW
The next version of the Flash player, to be released later this year, will be a major advance for web-based presentation. Flash 8’s dynamic layer effects and support for dynamic compositing of video with alpha transparency are significant advances that will dramatically affect the look and feel of sites that support Flash. The Flash player will also feature more legible typography, particularly when type is rendered at smaller sizes. Letter spacing and other typographic manipulations will (at last) be programmatically accessible to Flash developers.
The Flash Video Format is becoming a compelling alternative to Apple Quicktime and Windows Media: it offers web users a solid video experience with less fuss and mess. Macromedia’s FlashCom server is required to support the best implementations of Flash video. In my opinion, the considerable expense of FlashCom server is the only thing holding the format back from widespread adoption.
Flash as an application platform and a mode of content delivery has come a long, long way from its early days. It warrants a close look and re-evaluation from the many designers and academics who reflexively dismiss “Flash sites” without properly understanding the evolution of the platform. Flash has quietly grown into what client side Java promised but never quite managed to become.
Flash MX2004 introduced Actionscript 2, which allows many Flash features to be driven programmatically using modern object-oriented development practices. The emergence of Actionscript as a “serious” programming language has dramatically raised the quality level of entries to the FlashForward Film festival this year, as traditional coders and development teams enter the fray.
Macromedia is giving at least lip service to “Creative Commons” and other forms of limited source code sharing. Chief Software Architect Kevin Lynch suggested that a “view source” option or adopting a convention in site structures for posting source code (e.g. http://mysite/myflash.swf/flashsource) might be a way to encourage sharing and learning.
Jared Tarbell of http://complexification.net and http://levitated.net continues to dazzle and impress us with some of the most interesting, creative, and fun work in the Flash community. His generative creatures are visually and conceptually beautiful, and his generosity in opening the source code to all of his work is refreshing.
VIDEO
Macromedia is positioning the Flash video FLV format that it introduced with Flash 6.0 as a direct competitor to Apple Quicktime and Windows Media. Macromedia’s contention with Flash Video is that it offers a superior experience to its competitors because it doesn’t demand an “extra” download or plugin. Macromedia contends that more than 80% of web users already have the Flash 7 player installed, meaning that they can play Flash Video immediately.
Based on my observations and experiences with web-based video, Macromedia’s pitch is compelling. Apple Quicktime is a lousy experience on Windows machines: the free version of QuickTime nags the user with “desktop spam” that tries to sell an upgraded version of the player each and every time it is loaded. I have also found the Windows QuickTime client to be prone to memory leaks and crashes even on top-shelf, name-brand PC hardware configurations. Folks who use Macs a lot tell me that Windows Media Player is not a great experience on Apple hardware. What’s a responsible developer to do?
Flash video aspires to offer us a third, more user-friendly alternative. Macromedia’s FLV format doesn’t demand an extra plugin, it can play inline or iconic video as a part of an ordinary web page, and it doesn’t spam the user or demand registrations as competing players do. For my development work for the University of Washington, for which I aspire to support many platforms and users with a minimum of fuss, these are compelling arguments in favor of the FLV format.
The primary drawback to Flash video that I see is that Macromedia continues to try to leverage the advantages of the Flash video format to sell copies of its extremely expensive FlashCom server. FlashCom is a unique and wonderful product that would serve many UW needs, particularly in our News and Information office. But so long as FlashCom is positioned as a product that costs thousands and is subject to an uncertain upgrade cycle, it will probably remain out of our consideration, which is a shame.
Mike Downey, technical product manager for Flash authoring, pitched the advanced features of FlashCom-enabled FLV video, including support for “instant on” streaming, dynamic bandwidth adjustment, and the capaibilities for interaction offered by the rest of the Flash API. He also showed several standout implementations of Flash video:
http://redbullcopilot.com
http://www.adidas.com/us/heritage/home.asp
http://cnet.com
http://groundhogchase.com
The Red Bull and Adidas sites are particularly impressive. The Adidas product catalog features inline instances of Flash video, showing dancers strutting around in their spendy Adidas duds. As a sales pitch, it’s much more interesting than static catalogue shots.
Downey demonstrated some spectacular video compositing effects that will be possible in the next version of the Flash player. Using an alpha channel, video elements can be masked, combined with other video instances, or dynamically combined with flash vector elements such as type or lines at runtime.
TYPOGRAPHY
The Flash 8 client will resolve one of the Flash’s Achilles’ heels: simply put, small antialiased type isn’t very legible when it is rendered in the current Flash player. Flash typographers have evolved their own strange aesthetic in response to this challenge – single pixel width fonts with no antialiasing – but the average reader tends to find these fonts mechanical and hard to read. Flash 8’s “Saffron” type rendering engine appears to borrow a page from Microsoft’s ClearType playbook: by carefully selecting the shade of adjacent aliasing, small antialised type is made dramatically clearer. Without having something to test, it’s hard to know how well this will work in practice, though the demonstrations looked impressive enough.
FLASH 8 BLEND MODES
The most impressive demonstration of the conference was made by Doug Benson, who’s in charge of the next version of Flash IDE, code-named “8 Ball.” 8 Ball will offer several welcome features for developers, including emulation of Flash-enabled mobile devices for testing purposes, a streamlined UI, an improved Library panel, and other improvements.
The big story in 8-Ball are “Blend Modes,” which are sort of like Flash equivalents of Adobe Photoshop “Layer Effects” In a spectacular demonstration, Benson took a vector rendering of a cartoon dog, duplicated it, knocked out the image area on the dupe rendering it instead as a soft-edged drop shadow, and skewed the dog’s shadow so that it matched the apparent perspective of the surface it was composited against. When Benson ran the Flash movie, both the cartoon dog and the skewed drop shadow were animated appropriately. The assembled crowd at San Francisco’s Herbst Theater went wild. As an afterthought, Benson mentioned that the layer effect only added about 10k to the size of the rendered Flash movie.
Blend modes are probably the single feature in Flash 8 that I and many other developers are most excited about, because they will enable sophisticated, subtle, PhotoShop-like visual effects. At present these effects are unacceptably time- and bandwidth-intensive.
CREATIVE COMMONS AND SHARED SOURCE
Following a polished and engaging presentation by Stanford law professor Larry Lessig, Macromedia’s chief software architect suggested that Macromedia and the Flash community could benefit from some implementation of “Creative Commons” (CC in a nutshell: “Some Rights Reserved”) He suggested one way to encourage this sharing might be an accepted convention among Flash developers for directory structures that include Flash source, e.g. http://mysite.com/myflash/flashsource.
Another mechanism for sharing the source might be an actual “view source” option in the Flash player.
As a developer, I welcome this move toward openness: looking at other people’s good code is how young devs grow up big and strong. As a practical matter, Flash’s “secrets” can easily be broken by source code decompilers such as Sothink’s. At past FlashForwards Macromedia has taken a defensive posture when asked about Flash decompilers, suggesting they’re aware of the “issue” but that there isn’t much that can be done about it. I’m encouraged by the suggestion that maybe peeking at Actionscript source isn’t such a bad thing, especially if the developer has passively or overtly invited it. We all stand on the shoulders of giants.