September 11, 2008 – 5:41 pm
I have my Twitter set up to show me all tweets with the word “prism” in them, and over the past few days I’ve seen a surprising number along the lines of “I’m dumping Prism in favor of Chrome web apps”. This is how I first found out how badly my initial Chrome post missed the mark. I had hypothesized that Google was positioning itself in contrast to products like Prism and Fluid (and, more recently Safari) that let you create desktop shortcuts for web apps. As it transpires, Chrome permits exactly this and does so rather well.
So is Prism dead in the water? It has one clear advantage over Chrome, which is that it runs on Linux and Mac. (I’ll be ranting more about that tomorrow.) Also, Prism has a lot of cool bells and whistles (tray icons and menus, popup alerts, etc.). Google’s approach is better integrated with the browser, but there is a Firefox extension that accomplishes essentially the same thing. (And yes, I really must update it to work with Firefox 3.0.1.)
The main advantage of Chrome is that its architecture was conceived in advance to provide Prism-like functionality. One of the biggest challenges with Prism has been to bring its functionality up to the level of a modern web browser. Rendering web pages is a no brainer for any XULRunner application, but people have come to expect much more from a browser. There is a whole slew of bugs filed for Prism for everything from type-ahead find to proxy and security certification management.
The problem, in a nutshell, is the current dichotomy in the Mozilla platform between XULRunner, which offers all the nuts-and-bolts to build a browser-like app, and Firefox, which is a specific browser implementation. Ideally there would be an intermediate layer which gives you a complete browser without all the Firefox-specific stuff. From my perspective, the only thing that should be specific to Firefox is the user interface.
Rearchitecting Firefox in this way would be a massive effort, of course. (Consider the difficulty just getting tab browsing implemented in a way that lets different browsers use a common implementation.) In the meantime, a solution might be to base Prism on Firefox instead of XULRunner. In this way, we would get all the browser functionality for free. The problem is then flipped on its head, since we would need to find a way to hide anything Firefox-specific (including most of the user interface). Considering the ambitious improvements the Mozilla platform has benefited from recently, a restructuring of the browser functionality is perhaps not out of the question. However, moving Prism onto Firefox (something we’ve already discussed) is doubtless a more expedient approach that would immediately bring Prism up to the level of Chrome web apps (but with all the advantages mentioned earlier).
Another issue is that it is still too difficult to add the bells and whistles to Prism apps that make them really shine. We need more documentation and examples (something that has been on my to do list for far too long). Ideally, we would have a library of ready-made customizations for popular web apps that users could access directly, similiar to the library of scripts available for Greasmonkey. Chrome certainly doesn’t render Prism obsolete, but it does make it clearer how much work we still have to do.
Tags: chrome, firefox, prism, ssb | 12 Comments »