Flash Player 9 & Flex 2 Released

I don’t typically plump for Adobe products in this blog. But the official release tonight of Flash Player 9.0 and Flex 2.0 is a special case, and IMO is also significant for the future of digital publishing.
The extended Web/browser ecosystem largely is based around three client-tier file formats: HTML, PDF, and Flash SWF. People are finding that Flash is not just a great solution for interactive animations and video, but also a great cross-OS platform for rich internet applications (RIAs) that break the page-at-a-time barrier of typical Web applications. The new Yahoo! Maps , the new Google Finance, Zillow, Redfin, and many others are Flash-powered. But despite growth in adoption of Flash for interactivity and applications, AJAX web apps are getting all the attention. One reason is that Flash has been challenging to program, with a timeline-based authoring metaphor and a scripting language (ActionScript) that, while bytecode-based, offered no real advantages in either language capabilities or performance over browser JavaScript.
Well, now Flash app development is even more compelling and a lot easier. Flash Player 9’s new ActionScript 3, compatible with proposed next-level of ECMAScript, is a powerful language that supports direct XML processing (ECMAScript for XML, aka E4X), strong types, inheritance and mix-in interfaces, exceptions, and other robust software-engineering capabilities. It’s also got a JIT compiler which means a lot closer to native-code performance. Adobe folks don’t like it when I call AS3 “Java Lite” but that’s not far off the mark (and not a bad thing either IMO, given the API bloat of J2SE). And, unlike Java, AS3 is built on an optimized graphics and media engine which enables a far richer user experience than typical Windows desktop apps, much less HTML-based web apps.
And Flex 2.0 makes developing these rich interactive apps much easier – goodby timeline-centric designer-focused UI, hello IDE and XML UI description language for MVC applications and structured data binding to visual controls. Adobe is also easing in to the open source community by building the new development tooling for Flex, Flex Builder, on top of the leading open-source IDE, Eclipse. I’m a useless manager, and even I have been able to whip up cool things with Flex Builder. With 10x less code than, say, a Swing or SWT Java application, and 100x less time than it would take me to debug an unmanaged-memory C++ app or the JavaScript spaghetti of an AJAX web app.
I’m truly impressed with what the Flex and Flash Player teams have pulled off here, and we are eating our/their dogfood. Our team’s forthcoming eBook solution (codename “Twist”) leverages the Flash platform, with a Flex-based UI layer.
And I believe the potential importance of the Flash platform to digital publishing goes a lot further than how app UIs will be put together. As eBooks evolve, they increasingly will not be just digital replicas of paper. They will have interactive multimedia and the line between “document” and “application” will further blur, especially in publishing segments like K-12/higher-ed textbooks and STM. I don’t believe that HTML, even with AJAX and SVG, is going to cut it for representing this interactivity and richness in digital books. AJAX apps are tough enough to make work on the browsers du jour, much less to be expected to be usable on browsers of the future. PDF’s great but is really optimized for representing electronic paper, not interactive applications or free-form rich media. Microsoft’s WPF has a great “spec sheet” of capabilties but a Windows-lock-as the industry-wide cross-platform solution is repugnant. Java is way too heavy and not content-centric enough. Thus Flash SWF seems like an obvious choice to deliver the “surround sound” richness for the books of the future.
OK, sure, SWF and MXML can be viewed as “proprietary” – at least for now. But ActionScript 3 is fast becoming the future of the ECMAScript standard, and there are an increasing number of open source Flash solutions. And Flex is a great way to consume standards-based XML data. It certainly seems possible that some or all of SWF could, like PDF/A, follow the road from vendor-developed innovation to ISO standard. Meantime – trying to be neutral about it – if I were a publisher and had to choose between a cross-OS solution from a vendor like Adobe and a Windows-centric solution from Microsoft for interactivity and rich media in my digiital publishing strategy… or sticking with static PDF or XML documents that don’t deliver the richness that users increasingly expect… the choice seems pretty easy.
Anyway it should be an interesting next twelve months. I congratulate “Macro-Adobians” on FP9 & Flex 2. They rock.