Apollo 1: The Future of RIA?
Home Tutorials Reviews Weblog

Review: Adobe released their new Apollo runtime
Feature: Adobe now goes clearly into the lead on RIA development

If I am right, Adobe just produced one of those Kitty Hawk moments - they launched the Apollo runtime at the beginning of March and it had all the look and feel of a first venture into the 6A's world of interfaces that can run on any device, on any platform, offline or online . These 5 demo apps are naked simple, even primitive. But that is deliberate. This release is targeted toward developers either of the HTML kind or the Adobe Flex/Eclipse Java kind. It is ironic that Google beat Adobe to the punch with its GWT toolkit - AJAX HTML apps built with the ultra slick and reliable Eclipse Java IDE. Java builds AJAX and HTML Web 2.0 apps for Google.

Well now Adobe and the ex-Macromedia migrants have built Apollo which uses Flex which is also an Eclipse Java IDE plugin to build Apollo apps. And Apollo apps are quite a mouthful. Apollo = Flash+PDF+HTML+ ActionScript+JavaScript 2.0/4.0+AJAX .... roughly. Go here for the Adobe FAQ that tries to explain all that is in Apollo.

Here is what Apollo looked like on take off with the TextEditHTML Apollo app as seen in the screenshot below.
apFairly simple looking, almost like a Windows 1.0 app - but remember that was literally demoware. Apollo runs real apps and in this case locally and with 1MB less than required by what Adobe Acrobat 7.07 needs to run a 14K PDF file. I have deliberately shown the Windows Task manager so users could see the size of the Apollo runtime with this simple TextEdit app. It has just the Open, Save and Save As buttons plus the ability to enter text but not CTL-C or CTL-V copy and paste text. Crude for demo purposes The app is lightening fast on start-up, less than a second, which is encouraging for those who have had to endure some Acrobat or Flash start ups. In general we found all the Apollo apps very fast on start-up and operational runtime.

For example, the second Text Edit program, this time produced with the Flex Developer tool was blazing fast:
2
ran super fast as an Apollo runtime both on startup and handling the files and data. TextEdit 2 ate up a 16,000 record CSV Wordweb database dump; but bombed on a 49,000 record larger dump file. Both would have exceeded any 64KB limit to the size of the edit workspace.

So the results are what would would expect with Alpha code - mixed. But it is also remarkably encouraging. Note the size of the source code for the TextEdit 2 app is just 170 lines of MXML with embedded XML and ActionScript but no HTML nor PDF code. Again, this code is used for tutorial purposes so I suspect the Adobe developers have applied plenty of KISS.

Nonetheless having 170 lines of code for a text editor that can run standalone on most desktops, in most browsers and also on some mobile and PDAs - that is impressive. However, this was standalone code only - Apollo Alpha is still not ready for browser usage. Also there was no ability to run .SWF(Flash) or .PDF(Acrobat format) content in the code samples delivered.

Fortunately I have so much to do elsewhere I can cool my heels and wait for Apollo Alpha 2 or first beta that starts to demo some of the HTML, PDF, and Flash capabilities of Apollo. However, it is interesting to note
the following comparisons:
Flash 9 plugin runtime for Mozilla Firefox 2.0 - less than 3.0MB
Acrobat Reader 7.07 runtime - about 21MB
Apollo Runtime 1.0 - about 18MB
Not too bad for alpha code; but the proof will be when the PDF, Flash, and HTML rendering are all available in one Apollo runtime. But I, like many others will follow the progress of Apollo with great interest. Remember, at even at 50MB, Apollo would only consume 1/10 of the the 512MB of memory that is available in most PCs, Mac or Windows these days(exception for Vista which really requires 2,000MBs).

Summary

AJAX is touted as Web 2.0 enabler. But AJAX runs only in a browser. It might be made to run in a Java browser - which then would give it some desktop portability. Java runs everywhere on the desktop, in a browser, on mobiles - but each coding is quite different. There are some Java applet to Java application quick converters-but JSP and JSF not Java applets are the preferred means of running Java in a browser- and all three are markedly different in their coding. And then J2ME used for mobile, embedded and PDA apps is another Java jambalaya.

Microsoft is making noises about C#, ASP.NET, ATLAS, and Mono - but really they are only prepared to run cross platform if that platform is Windows. And now there is an increasingly narrow definition of what is Windows. Long gone are Win 3.x, all the NTs, and 9X. Millennia lasted for 7 years tops. Windows 2000 is obsolete. Windows XP will last for a little while longer and so el Bloato, all 2GBs of Sumo Vista, and Windows Embedded/Mobile(???) will carry the Microsoft cross platform message. Hmmm if you have problems here - so do I.

Now take a look at Adobe's Apollo. The plan is to make the runtime engine support/display all of PDF, HTML, SWF with support for JavaScript 2.0/4.0, ActionScript 3.0 and XML to the hilt. Adobe also plans to improve the runtime speed of the Apollo engine so that it approaches JVM speed capabilities. This is a very high performance bar. So far Apollo Alpha has demo-ed JavaScript, ActionScript, and XML on the desktop with Apollo runtimes. They are blazingly fast on startup and operationally for the simple tasks presented. In short so far, so good. Also these are ambitious plans. And nobody else seems to have the same depth and breadth of ambitions. But I grew up in Alton Illinois, right across the Mississippi from Missouri. The Show-me attitude just could not help but rub off.




Top of Page  Home  Tutorials 

Developers Weblog  Graphics Reviews and Tips