Sunday, March 20, 2005

Google and Firefox: Cheap and Easy Feature Integration

Recently I was reading a web page that, in passing, mentioned "The Yes Men." That tickled a memory--I recalled hearing of it, but couldn't recall whether it was a book, a band, a web site, a movie... so my reflex was to highlight it, right-click "Search Web for "The Yes Men" and click. Right--it's a movie; ctrl-F4 to close the tab and go back to reading.

Firefox's "Search for <selection>" (and to a lesser extent the small, unobtrusive search box built into the interface) are good examples of creating and integrating features cheaply, without increasing clutter. They use the existing tabbed page functionality, which may not be as elegant as a more customized presentation, but adds no additional code and no additional program behavior for the user to learn. They leverage someone else's freely-available interface and program (Google's in this case), without using either a specialized integration interface or a complex general-purpose integration layer. They expose 80% of the external feature with 20% of the work. And, most importantly, they do it in a way that feels natural to the user.

The original version of "Search for <selection>" brought up the search page in the current tab. One could argue that that's the correct thing to do, but it's just more convenient for the user to put it in a new tab, even if that requires additional action from the user to view and dismiss the tab.

The moral of the story? Feature integration doesn't always have to be a high-ceremony, elegantly-scripted and standardized process, despite what the Web Services folks (among others) might say. The current implementation of "Search for " works very much like a normal conversation--if you mention something I'm not familiar with, I'll say, "What's that?" You tell me what it is, and then we shift context back to the original conversation. Because it's so simple and so natural, it can become part of the user's standard repertoire without the user even realizing it.

No comments: