Apollo is More Than Offline

I have a problem - I am addicted to online music services. I have an easily accessed bookmark to many of them on my browser, Firefox, of which I’m also very fond. One of Firefox’s many wonderful features is tabbed viewing. I have folders of links which I use to quickly open an entire set of reference materials, demonstrations, or whatever else the situation may call for at the time, with a simple click of the mouse. When I do this however, it blows away any of the existing tabs - including music service to which I’m currently listening. Now that’s really a problem!

When we write applications that live in the browser, we are subject to the limitations of that container. For the vast majority of content on the Internet, this is no problem. We are however, seeing growing complexity in that content. More applications are being made available and delivered via the Internet. The sophistication of those applications is rapidly approaching that of the desktop. The problem is however that those applications aren’t in fact on the desktop, and are subject to the constraints of their medium.

In the case of online music services, that means being quickly, easily and accidentally replaced through some external action. It also means an interruption in my music listening experience. I now have to go back to the music service, access my playlists, and restart the playback. The playback isn’t going to start where it left off either, but rather at some other random track in that playlist. If this happens often enough, I may find myself distracted or even disturbed, and I’ll likely quit using the service altogether. What does that mean for music services as corporate entities? What does that mean for any particular music services’ brand? What does that mean for the world of increasingly sophisticated web applications?

The question then becomes, how can I extend my web applications functionality to that of the desktop? Do I start hiring Windows developers, Mac developers and Linux developers? That’s going to be a horribly expensive investment. It’s also going to mean three additional forks in my client-side code base. What I’d really like to do is simply leverage my existing skills (and code) to be able to build and deploy a desktop version of my application. One music service, Finetune offers a desktop version of their service based on Apollo. The Finetune Desktop isn’t a complete replacement version of their web site, but rather an extension of it that offers a similar experience, and with desktop features (i.e. importing iTunes playlists directly from disk).

Interestingly enough, Finetune also has a Wii version of their music service.

This is really the core value proposition of Apollo - leveraging your exsiting web development skills (Ajax or Flash) to extend your web application to the desktop. Once you’re there does that mean that you can take your application completely offline? Sure! Does it mean you have to? No! Again, in the case of Finetune Desktop, it is an online music experience, and in no form does it allow offline usage. Look at the complexity of the trail it took us to get here though. Wouldn’t it just be easier to simply say that “Apollo allows you to take your web applications offline”? That’s a message that almost anybody can get in a simple sentence or two - and it’s also easily repeatable.

While offline support is certainly part of what Apollo offers, Apollo is far more than just offline.

I can think of numerous other examples of desktop features that web applications could leverage to their benefit, but that they can’t readily because of the browser as a container. Custom window shapes and transparency comes to mind. Being able to run as a background process, and then to offer notifications via the OS-provided metaphor (i.e. system tray) also comes to mind. Being able to completely customize context menus comes to mind. Being able to have deeper control over spawning new windows and whether or not they are modal also comes to mind. Of course this all has to work across operating system as well.

When we get deeper into the branding of a web application, there’s also the consideration that the browser itself is one step removed from your brand. Apple is the master of this in the digital age. Apple wants you to have a shiny Apple computer. They want you to run their OS on that Apple hardware. They want you to connect their shiny devices like the Apple iPod to that Apple hardware. When you manage the content on your Apple iPod, they want you to run Apple iTunes on the their OS on Apple hardware. Do you get the point? What does that picture look like to Apple if consumers are opening Internet Explorer to manage their music open the Apple iPod?

Don’t think brand is really that important? One of the many reasons for the success of Flash Video has to do with the fact that there’s no other branding or chrome outside content you’re providing. The content provider’s brand is front and center.

Luckily for me, the problem of the Finetune web site getting inconveniently replaced is a thing of the past thanks to Apollo and Finetune Destop. I never use the Finetune Desktop offline (you can’t), but the recommendations it has made to me by accessing my iTunes playlists (i.e. local file IO) have been greatly appreciated. As the early access builds of Apollo are made available I look forward to even tighter integration with my desktop (i.e. minimize to system tray if you’re listening guys). Now go back through this article and replace “Finetune” with “eBay“, where the story is the same, and you’ll see that Apollo is about more than just being able to take your web applications offline.

WordPress database error: [Can't open file: 'wp_comments.MYI' (errno: 145)]
SELECT * FROM wp_comments WHERE comment_post_ID = '10' AND comment_approved = '1' ORDER BY comment_date

Leave a Reply