Eric Dolecki has an interesting post up with his thoughts on Apollo and a perspective on developers coming from different backgrounds. It prompted me to share my thoughts on this evolution and how I see this new type of application impacting the end user. In a way its been the constraints web developers have had to deal with for years that sparked innovation and forced us to look at alternative means of interacting with the user. AJAX is a good example of this, working around the page-refresh stateless model that is traditional HTTP in the browser, it has shaped people's expectations of how to interact with web applications.

Likewise I believe you would never have seen such an active community and the Flash player pushed to the limit if it wasn't for the limitations the browser and the Flash player itself have imposed on us.

Web developers have had to adapt to their environment whereas those coming from a traditional development environment have had more of a free reign in how to get something implemented. While its been argued that this makes the web a lousy environment for any type of application, you could equally argue that in the context of "survival of the fittest" web technologies would come out on top.

Not to say that traditional desktop development has not evolved, especially in the area of user interface design big strides have been made but arguably the greatest innovation here has been integrating with online resources.

This is where Apollo comes in - bringing the best of both worlds together - an application model built using the flexibility of web technologies that you can deploy from the web and the same code running seamlessly across platforms. More importantly Apollo will allow for synchronizing data between the web and the desktop for occasionally connected devices. Integration with the file system allows you to take your web application to boldly go where no HTML has gone before, existing Flex applications can easily be extended to run on the desktop and take advantage of this increased functionality. This is not just another widget engine we're talking about, I have no doubt we're at the start of something big.

Just like Flash and AJAX have introduced a new user experience for the web, these can soon be brought to the desktop. Will we be seeing Apollo apps as true replacements of desktop applications? Only time will tell, but with projects like a VNC client, C64 emulator, 3D rendering engines etc. already out for Flash Player 9 -- I'm sure the future is bright for Apollo.