are you tired of this? then return to latest posts
If you have ever picked up a book about Distributed Systems you'll see that throughout history we've been passing weight from the client to the server and vice-versa. These days we are witnessing yet another shift.
Last week I was attending the Usability Seminar here in Lisbon, organized by the APPU (Portuguese Association of Usability Professionals, roughly translated) – great event, by the way – and when the discussion was launched with Adobe's Apollo and Joyent's Slingshot logos on screen I thought, you're kidding me right?
Why? Because I just can't seem to get what all the fuss is about! (And I know I'm not the only one [portuguese])
For a very brief introduction to what they really are, basically, people are trying to bring the web applications to the desktop. Adobe even mentions Apollo allows developers to leverage their web development skills by creating offline apps using known languages. There are many reasons behind this and one of the most praised is also one of the most idiotic. There's an example application showing off the ability to extend Ebay's concept and allow the user to create auctions while offline and then syncing them with the site when he comes online.
First rebuttal: This something that really makes sense with mobile devices not full-blown desktops! This has been properly documented, implemented and used a lot in the mobile world. So this really isn't a reason to go and make a brand new framework to allow applications to run on the desktop! What else do you got?
Another reason was the limitations of the web/browser. True. There are things we just can't do with Javascript, or if we can they take a lot longer to implement using scripting languages and the DOM. It's hard to remove completely the waiting times and sandboxy environment of the browser. But I'm not sold yet. There are other languages for that, specially in times such as ours when web services can expose certain parts of our system to ANY application. If you want to cache operations and sync it later there are plenty of choices to go around: Java, C#, C++, etc. Pretty much any language with TCP implemented can consume a webservice. So I still don't buy it as innovative.
The only actual reason I can kind of understand is the lacking interoperability with the various operating systems our beloved web apps tend to have. Printing is getting better due to CSS media types and such, but we still aren't able to interact directly with the OS, for example, to access peripherals or other parts of the user's desktop. For one, thank god, or we'd all be much more paranoid about security than we already are right now. But as a developer I can understand why one would want to be able to, for instance, sync the digital camera with my Flickr account directly, as in, with a push of a button. Merging our online and offline worlds. Cool. I'm still waiting on a wireless iPod that syncs automatically with the computer via wifi/bluetooth when I get home!
We've always had "offline" programming languages, so if there really is the need to bring webapps to the desktop, why not use one of the many out there? Laziness? Java's security wasn't achieved overnight, nor was C++ performance. All of this takes time, so could someone please enlighten me for why we really need these frameworks? Is it really that hard for web developers to learn new programming languages? If so, you might want to rethink your role as developers. No? Share your thoughts, please.
It could be, though, that Adobe just wanted to venture to other market... If that's the case, just say so! Don't pretend to be hip and setting the trend for the Web III – The revenge of the HTTP. (That's what I'm calling the successor of web-two-oh. Remember, you heard it here first!)
Adobe's Edge magazine - March '07 issue
Watch a video about Apollo
meechwings on tue, 10 apr 2007 20:50
I think the point is convenience. With something like YouOS, theoretically you could have all your documents with you whereever you have an Internet connection. Plus, you don't need to run to the store to get the boxed version of Photoshop when you're just doing a quick edit.
On the other hand, you do bring a good point about security and local devices. And you're hosed if you can't get online....
andr3 on wed, 11 apr 2007 04:26
But my post here was aiming at these new runtime environments that have been discussed lately. I agree with the concept of YouOS or the spanish eyeOS. The browsers have evolved a lot and it's now able to push the boundaries of interaction on the web.
What I'm finding hard to understand or at least, believe in, is this attempt to bring webapps to the desktop. It sounds like they're trying to harness the overwhelming ammount of webdev's out there that don't develop offline apps. This way they can build applications just like a regular web app and have it run on multiple OSes...
It's the arguments that don't make sense. I'm sticking to the device access thingy, although I'm aware that Apollo allows the user to restrict the access the app has to your system. I guess it wont untie our (developers) hands that much.
roimatola on wed, 11 apr 2007 16:06
I love you
Comments have been disabled
Sorry about that.
Feel free to engage with me via twitter.
Tweet to @andr3