Oh, Apollo!  ( Technical Overview and 21 Questions )

Update: The Breeze recordings from the Developer Week sessions are officially up. You can view them here: Adobe Developer Week (06/06).

As part of Adobe Developer Week, Luis Polanco spoke yesterday on Adobe Apollo, the cross OS runtime that allows developers to leverage their existing web development skills to build and deploy desktop RIAs. He gave a good overview of how Apollo works, and even showcased some demo applications.

It was great to see the eSeminar at maximum attendance; it shows that more people are beginning to realize the potential of the new platform, or are at the very least, curious to see what all the fuss is about. In either case, I’m almost certain that most everyone left the seminar thinking about the possibilities. In the coming days a recording of the session should be released, but till then, I thought to share some of the take-aways here.

I took some screen shots during the Breeze presentation, two of which provide a good technical understanding of Apollo at-a-glance. The first is a representation of current RIA technology trends; it’s noteworthy because it shows the reach of a runtime such as Apollo, but also because it shows how Microsoft’s WPF/E compares, which is important for those out there speculating as to what sort of competition there will be between the two, if any.

apollo1_thumb.jpg
Click to enlarge

The second image shows a typical makeup of an Apollo application, and where it ‘sits’ in relation to the operating system and backend RPC services.

apollo2_thumb.jpg
Click to enlarge

21 Questions.
While Luis spoke, Mike Chambers did a great job of fielding several questions from the Breeze audience, confirming some of the rumors, and setting a few of them straight. I’ve taken those questions, as well as some asked after the event, and compiled the list below.

01. When will Apollo be available?
The developer release will be available on Adobe labs before end of calendar year so developers can start building and prototyping. Apollo 1.0 is slated to be available the first half of 2007.

02. Is Apollo just Central 2.0?
No, the first release will be Apollo 1.0. There were lessons learned from building Central, and from users using Central, but this is completely new, and built from the ground up. Apollo does not share any of the Central code base.

03. Will you be able to download Apollo to mobile devices or is it strictly for the desktop?
Version 1.0 is targeted at desktops, future versions will target devices.

04. So … is Apollo just a player?
It is a runtime. It is used to run Apollo applications.

05. Will Apollo applications require an installer or will it be a simple .exe that can run from a CD-ROM?
They will require the Apollo runtime (i.e. Apollo is not a projector creator).

06. What is the IDE for Apollo development?
You can use whatever IDE you use to create your current web apps (flex builder, flash IDE, eclipse, notepad, etc…)

07. Is the HTML support planned to include full standards support or only a subset?
Full.

08. Will Apollo use a self built, opensource or licensed HTML rendering engine?
We [Adobe] haven’t announced the engine, but we will NOT be creating our own engine.

09. Are you including a coldfusion engine or something?
No. Apollo can access a coldfusion backend, but there will be no coldfusion runtime bundled with it.

10. Will .cfm, .php etc pages load and function dynamically in Apollo?
You could build an app that loads and renders dynamic content like that.

11. How does Spry relate to Apollo?
You will be able to build apps using Spry, or any other Ajax framework to build content that will run on Apollo.

12. For communication between Apollo applications, will this be done by local connection or some other way?
We are looking into this.

13. Will interfaces be provided into the Apollo API be included for JavaScript, ActionScript, etc?
Yes. That is what we are planning.

14. Do you have a demo showing the flash, html, and pdf together?
Not yet. We are still in the early development phase, so everything hasn’t been implemented.

15. What advantage would a cdrom developer have from moving from Director/Flash apps or Zinc/Flash apps to Apollo?
Apollo 1.0 does not target CD-Rom creation.

16. Does the code need to be compiled into Apollo ‘bytecode’?
No. Apollo runs SWF based and HTML based applications.

17. Can Apollo access the local machine file system?
Yes.

18. Will Drag & Drop from the OS to Apollo applications be supported?
Yes. We are planning to add support for that.

19. Any plans for an Apollo forum on labs.adobe.com?
Yes, eventually.

20. Will Apollo use the same open alpha and beta development?
Yes.

21. Are there licensing issues?
Apollo will be free, just like the Flash Player currently is.

I don’t know about you guys, but I’m really excited about Apollo. Here are a few points that get me going:

  • RIAs leveraging local resources (hard disk, etc)
  • Integration with the desktop shell (clip board access, file extension registration, etc)
  • Operating system independence without the confines of a player.
  • Freedom from the browser chrome (you have full control of your app’s bounds and shape, like a traditional desktop application).

It’s only a matter of time… we are going to see an explosion of creativity in the RIA Desktop space, just imagine the possibilities! Those who attended the session have seen Apollo in action; for those that didn’t, Ryan Stewart has some screen shots of the demo’ed applications. Have a look, spread the news, and be sure to check Mike Chambers’ blog for more Apollo goodness in the days and weeks to come!

31 Responses to Oh, Apollo!  ( Technical Overview and 21 Questions )

  1. Sebastian says:

    I will like to share your excitement. But I have my doubts. How is this so different from Central? Or Zinc? The only strong point I see is this being cross platform.

    The way I see it is that Adobe needs to install the Apollo player in every machine. They could do it if they distribute the Apollo player as a replacement instead of Adobe Reader. Then there will be enough critical mass to make this successful. If not is just going to be a handful of developers using this technology like Central.

  2. Simon says:

    This is all fine, but will Apollo support video acceleration? Or will it do everything internally thus limiting the potential of the material we can throw around on stage – namely very large video streams.

  3. Jeremy says:

    I shared the same doubts with Sebastian, really, what’s the difference between Zinc and Apollo ?

    Actually Zinc can support both Windows and Mac now, and according to the features in the post, I don’t see anything that Zinc can’t do. (Zinc can overlay browser and PDF window on top of swf too, let alone Drag and drop from System to the app)

    and now Apollo is defined as a “runtime” instead of a stand-alone projector / exe, which users can grab and go.

    any more thoughts on this ?

  4. If there will be the chances to distribute application wich embed the runtime i think that any problem will be solved.

    We could have desktop applications and distribute them without worrying about the platform on wich it will be delivered and about the presence of a player for running it.

    I’m very excited about Apollo, my only complain is that is far away, perhaps too far away.

  5. Flapflap says:

    Exciting… But why not be able to create apollo projectors (Mac and/or PC at least). I thnik this his one of the most wanted features.
    A projector with extended capabilities (File and Folder management, FTP, Windows operation, etc…)

    Zinc, SWFStudio and others are nice but a Adobe MM built-in product can blow it all…

  6. Hey guys could you please explain how developer can use say Ruby .rhtml in Apollo? How to embed an interpreter? Should it be installed on user’s PC?

    Shed some light on it please.

  7. Abdul Qabiz says:

    Please get me in alpha-beta, whatever, whenever you can.

    Thanks

    -abdul

  8. Danny-T says:

    I’d be interested to find out more about how Adobe are planning to quickly reach mass audience in terms of distribution. Flash player is almost perfected whats the plan with apollo?

  9. Geoff says:

    Sebastian – unlike web plug-ins, that need to be widely deployed to be usable, this technology is aimed at desktop development.

    The Apollo licence could quite easily allow distribution of the Apollo framework with applications. Alternatively, it should be simple to write an installer that checks for it’s existence, and downloads and installs if not present – no different from how (well written) installers for .NET or Java based apps work today.
    The end users really don’t care what framework developers have used, provided installation is simple.

    The key to whether it is widely used lies more with developers than with end users. My view? It is going to get a lot of interest from Java developers who are still disatisfied with the quality of client-side Java.

    There will be some people who have grown up with Web/Flash development who will be able to use their skills on the desktop – there are a lot more designers familiar with Adobe tools than MS ones – this could be the most interesting area to watch as it opens up desktop development to some very creative people. Sometimes TOO creative. . .

    Finally you have your existing .NET developers – who don’t care about x-platform and don’t have any Flash or PDF skills to leverage, so I can’t see them being that bothered.

  10. Bryan Rieger says:

    I was extremely skeptical when I first heard about Apollo – namely asking why we need yet another browser. But I’ve been looking at Apollo more recently as the evolution of the browser from what is essentially a document viewer with a scripting language to a network application framework and runtime. Regarding ‘getting the Apollo player on every machine’ – Adobe has the same problem with Flash Lite – but in the end it really comes down to:

    – does Apollo solve problems developers and businesses actually have?
    – is the download and install as simple and seamless as possible?
    – does it provide a much better user experience?
    – does it deliver a comparable experience to a traditional exe, does it exceed it?
    – are there enough ‘great’ applications (or reasons) for users to bother with the download and install in the first place?

    What I think could be the ‘killer’ idea behind Apollo is the device portability. IF Adobe can not only make Apollo apps run cross-platform, but also across devices I can’t see it not being widely adopted – as long as the licensing isn’t overly restrictive or costly – free is always good.

    Imagine being able to run Apollo apps on your desktop, mobile phone, gaming console, TiVO and fridge. 😉

  11. keith peters says:

    If you can’t see the differences between Apollo and Central, you haven’t looked too deeply into one or the other. Yes, I suppose you could define both as a “runtime that allows you to create desktop swfs” and in that case they would be “the same”. But there were multiple issues with Central that turned me off from the start and doomed it to failure. Apollo is going in a totally different direction and I am excited about it.

    The only apprehension I have is the aspect of how the runtime will be distributed. How smooth and transparent the runtime distribution is done will make or break it, I think.

  12. Alex says:

    I hope Apollo has can connect to a database with ActionScript without the need for a middle layer – a la Zinc. Anyone have any info on this?

  13. Zorro says:

    YES – the Apollo runtime is free (Adobe whant to the Desktop) but some Parts to make a really Rich,free and global(Desktop/Internet/Database/Webservices) Application with Apollo cost $50000+ again! See the Enterprise Services (1 Application pro Server – my God Abobe) or with Flash you can make the best RIA – with Version 8 (2006) official Flash Version i have no full GUI Object Collection.

    Alex you dreaming: “can connect to a database with ActionScript” I have waited 7 Years on the Flash side to have this simple thing … between coming out son Flex and have more controls that grandfather Flash. This is no spam – I’m waiting really since 7 Years for a true solution from Macromedia/Adobe … My last checkpoint is Flash9 if not => i’m go back to the Microsoft side.. Ping Pong – King Kong – Mr. Woong

  14. Ajay Vyas says:

    Great to see that Flash community can create desktop based application without taking help from Director or any other third party tools.

    It is amazing that we can integrate same with the OS and database without any middle ware.

    Is there any way to get any version to test or what is the way to become beta tester for this Apollo?

  15. chall3ng3r says:

    i missed the show. but thanks for sharing the stuff.

    i’m really excited, many features that i’ve been requesting for ages 🙂

    // chall3ng3r //

  16. It’s not a problem to create a DB connector via binary sockets.

  17. mike chambers says:

    >The way I see it is that Adobe needs to install the Apollo player in every machine.

    Yes. Fortunately, that is something that we have quite a bit of experience with.

    mike chambers

    mesh@adobe.com

  18. Arindam Biswas says:

    Would love to know when this gets on the labs for beta testing.

  19. Despite WPF and WinFX looking damn small in your diagram, I’m curious what Apollo has to offer in terms of API to stand against.
    I’m talking about XSLT, local database integration, security etc. WPF doesn’t come alone, it’s along with WCF, WF and the whole .NET 2.0 framework.
    The set of APIs in the Flash Player has always been limited, which was fine because you needed to take care of plugin size.
    No such excuss for a framework aiming for the desktop.
    Definitely, there’s interesting technologies on both sides of the horizon.

    Cheers!

  20. Steven says:

    Please tell me that it won’t run from CPU but graphics can run from GPU or through directx.

    Steve

  21. Ben says:

    Looking at your first chart there, the Java platform is already sitting comfortably in those areas the Flash platform is expanding into.

    Java Web Start has (for 5+ years?) provided Just-In-Time deployment, native desktop integration, cross-platform support, and secured access to the local file system. It also supports disconnected access.

    Java also enjoys the ubiquity of the Java ME platform on mobile devices, OSGi gateways, etc.

    You might counter with the Flex/Flash (and soon Apollo) strengths of the XML/JS programming model, Flash runtime animation support, wider (and more lightweight) deployment, and a less-hobled-together design (among other strengths.)

    The question will be, can Sun expand into your ground faster than you can expand into theirs?

  22. Simon says:

    A lot of people here have missed the point that it is a runtime like Java is a runtime.
    I can see that this technology will interest many web and enterprise developers as well as a reasonable section of Java developers.
    When you add the fact that the system allows development of both Flash, HTML/AJAX and PDF applications (yes don’t forget PDF’s are programmable as well) then that adds a whole bunch of browser users on top of the desktop users.
    I can’t wait to get my hands on the Alpha/Beta!

  23. Suketu Vyas says:

    This is great 🙂 would like to be a part of alpa / beta.

  24. FelixDKatt says:

    Ok I think we all get it. If you want to use apollo everyone is going to need to install it on the client side. So basically this project is no good for the guy who wants to sell his games or content from a CD without the user having to install anything.

    So adobe is marketing desktop people? Lame. Please stop what your doing and start on making a better version of Zinc. Thats what your largest customer base wants. Really, who wants to install crap on their machine when they can just double click and run . My money is on zinc they know what we want. Once your customers realize that they have to install it, this project is gonna go down the tubes. Sorry Im not a spammer for zinc but id rather have a drop and go then installer anytime. Zinc, Mprojector, Director, IShell, whatever. Who’s with me???

  25. Hugo says:

    I remember a few years ago Flash could work with the desktop in a very limited way by the means of fscommand, that was removed, leaving fscommand with only a few methods and properties to work with, am i correct ? so will the Apollo Runtime be a return of that with more security ? if so isn’t there a minor chance of creating malicious code that targets any OS ?
    It sounds as a great product anyway and i wonder how far can it get.

  26. Mike Brunt says:

    Sean Corfield alerted me to Apollo some weeks ago, I had actually been pining for Central for some time (no this is not a Central=Apollo or vice-versa pitch). I am at the core of myself a business manager who morphed into computed realms at the onset of the Commercial Internet. So when I look at emerging initiatives I look at them largely with a business perspective in mind. There were lots of reasons I liked Central and hardly any were technical they were largely functionality and applicability. My keen business sense tells me that Apollo is right for it’s time and I look forward to getting more involved.

  27. James says:

    What are its capabilities with PDF? I’m looking for my users to design something in flash and then have it be available in a high res PDF document for them to print out and not sure where Apollo will fit in with applications like that.

    Anyone know?

  28. Sachin says:

    Can I have DRM protection in Appolo Application? if yes, then what kind of DRM is supported?

  29. User says:

    For anyone interested and concerned with Apollo development a new forum has been launched just for the community, take a look and join in on this new technology–be one of the first to soak it up:

    http://www.codeapollo.com

  30. Adrian says:

    HI Guys,

    Can you import Word generated XML into Apollo?

    If yes, how can i do that?