Adobe released early bits of its next big product bet on Monday morning, a web and desktop hybrid code-named Apollo. Apollo is the first child born out of the Adobe-Macromedia merger of April 2005, bringing together the desktop strength of Adobe PDF combined Macromedia’s web-savvy Flash and Apple’s web browser engine. Apollo will continue to receive heavy marketing from Adobe building towards a 1.0 launch in the fall. In this post I’ll break down the components of Adobe’s Apollo framework, identify opportunities for application development, and compare the promised features against other software offerings.
What is Apollo?
Apollo combines Adobe Reader, Flash Player, and Apple’s Safari browser engine into a single desktop application for the Windows and Mac platforms. Apollo applications have access to the local file system and are placed on your taskbar or dock just like you’d expect from an application.
Apollo will be available as an autoupdate for Flash 9 users and will have similar distribution to existing free products from Adobe such as Reader and Flash.
Adobe Internet TV: Philo
Adobe’s first big Apollo app is an Internet video application codenamed Philo. The pervasiveness of Flash Player created multi-billion dollar Internet video startups powered by the Flash video format. The Philo team hopes to expand the display size and quality of distributed videos and get publishers encoding using the latest Flash video encoders. Publishers can skin the entire video player, delivering MTV content in what looks like a MTV video player, or a Rocketboom-themed player shown above..
Step out of the browser
Most Apollo applications will likely be repurposed web pages running inside a specialized environment. Mac users already have some of this functionality today as fans of a particular service have created WebKit-based applications combining desktop familiarity with a constantly connected web application.
Imagine your heavy, always-open web apps leaving your browser tab and creating an application-like presence in your taskbar. With a few extra hooks into the Apollo runtime the web application could access files on your hard drive such as your address book, music library, or calendar.
Plugins such as Flash are second-class citizens within the web browser, receiving limited resources even when displayed in the active window. Safari and WebKit lead Dave Hyatt recently explained some of the plugin issues in detail, including complicated state of balancing system resources and user expectations. A stand-alone application removes the limits of these resource constraints, letting an Apollo application write more data to disk, consume more CPU cycles, and interact with other application data on your computer (for better or worse).
Existing WebKit apps
Pyro is a desktop application for the Mac that takes 37signals’ Campfire chat application out of the browser and into the desktop environment. Pyro accesses local UI elements such as new message displays, and supports system notifications using Growl. Campfire might stay open during your entire workday, and it’s useful to have a separate application window and desktop features associated with that workflow.
PandoraMan takes Pandora‘s Flash-based streaming music player out of a web browser window and into an application in your dock. You might listen to music throughout the day or enjoy quitting your web browser often, and a desktop application such as PandoraMan helps the music keep playing.
Mac OS X (Objective C/Cocoa) applications taking advantage of the WebCore framework compete with Apollo on the Mac platform. Mac applications built on WebCore can bind to other libraries on the Mac system, taking advantage of notifications, system libraries, and native UI elements.
Windows Presentation Foundation
Windows Presentation Foundation (WPF) is part of Microsoft’s .Net Framework version 3.0. The presentation layer runs on a user’s graphics card, taking advantage of the specialized hardware to create a the glassy look of Windows Vista or offload other system tasks. WPF UI effects will likely become expected behavior from future applications.
Windows developers can take advantage of Internet Explorer libraries on the machine to render HTML while maintaining the same zones and access controls defined by other parts of the system. A C# developer should be able to write a small application to wrap a website, including plugins such as Flash.
Microsoft’s planned release of WPF/E will extend the reach of Microsoft runtimes across operating systems and web browsers. WPF/E is the most direct competitor to Apollo outside the native application space with support for animation, graphics, and common audio and video codecs.
Apollo extends the reach of the Flash development community onto the desktop, creating new opportunities for application development using ActionScript 3. The ActionScript development community can now deploy applications onto cell phones using Flash Lite, inside a web browser using Flash Player, and onto the desktop using Apollo.
Apollo’s PDF electronic document support will play a role within the enterprise, opening up smarter form handling and reliability. An enterprise already dependent on PDF workflow and accountability may tap into Apollo for a consistent work flow across the company.
I’ve heard the write-once run-anywhere many times over the past 10 years, but few applications have actually delivered. Java and Java Web Start are the closest historical comparisons, but the demand for multimedia content creates a new breed of competitors in the form of Flash, Apollo, and WPF/E.
I’m still a fan of native application development to create the most feature-rich and well-integrated application possible in the smallest resource footprint. Java and ActionScript programmers can extend the reach of their code base without learning too many new things, and I definitely understand that attraction, but serious applications should be well integrated.
Adobe has allocated $100 million towards investing in companies that enhance its engagement platform and is especially interested in funding Apollo companies. As of last month Adobe had invested in 6 companies, including word processing company Virtual Ubiquity. Companies might develop for Apollo to take advantage a strategic investment from Adobe at reasonable terms.
Apollo in its current form seems overhyped, but the cross platform development space will definitely look different in a year as we see new toolkits from big companies executed inside and outside of the browser. It’s not too difficult for a web application to pop out of the web browser and into a standalone web technology, and the marketing and investment dollars being spent by large companies such as Adobe and Microsoft should help boost the visibility of cutting edge web apps.