LeapTag is a desktop application that must be downloaded and installed on your computer. (You can view a LeapTag demo on the web to see the concept, or download your personal copy from our web site.) LeapTag is not a server-hosted web application. There is a lot of discussion happening right now about web vs. desktop and which is better and although I explain some of our thinking on that subject in this post, my main purpose is to answer the question, what exactly are you looking at when you open LeapTag in your browser?
After LeapTag installs, it starts running in the background (and it will start automatically every time you boot your computer). There is a tiny web server embedded in the application to expose a web-based UI, similar to Google Desktop or the popular email filtering application POPFile. When your browser opens to LeapTag, you are looking at a page served by this background application running on your machine. All the data you see is stored in and served from your hard disk.
There are several reasons we built the UI this way. First, LeapTag is about finding you results on the web. Therefore, having LeapTag run in your browser seemed natural. In addition, we think that in the future, interesting applications will come out of mixing data on the web and data on your computer, kind of a web-desktop mashup. We wanted our architecture to work with that vision. In fact Adobe just launched a product supporting that concept. Last but not least, there is a more operational, pedestrian reason for a web-based UI: for a pragmatically-minded startup it is quicker and more efficient to develop and maintain a web-based UI than a desktop UI, especially since we support both PCs (both IE and Firefox) and Macs (Firefox).
So, if LeapTag runs on the desktop, where do the results come from?
LeapTag pulls content from the web by considering your user-defined interests. Then, it uses your feedback (votes and tagged websites) and the content of these web pages, to extract a list of results ranked by relevance. While it does this, your interests and votes are never transmitted outside your computer. Instead, LeapTag, working from your computer, protects your privacy while proactively figuring out which results to bring back to you.
Why couldn't we just make a server-based web application like the rest of the pack?
I wish we could. As the proliferation of web applications -- built on the cheap -- attest, it is easier to create and popularize a web application than a desktop application. We wouldn't need to worry about an installed base of users, upgrades, supporting different platforms, compatibility problems, and so on and so forth. And of course the barrier to customer adoption would be much lower, making Karen's (our VP of Marketing) job easier. But there are some good reasons we chose not to do it that way.
First, we believe that personalization is headed on a collision course with privacy and security. Cuneyt has talked about this at length in previous posts. Since LeapTag keeps your interests, your votes and your results strictly on your computer, your privacy is protected much better than if LeapTag were a server-based application.
Second, providing you with relevant results based on your votes is no mean feat. While we were building LeapTag, we realized that only the most sophisticated algorithms give great results without a lot of voting. To put the challenge in perspective, consider that LeapTag needs to provide interesting and relevant results among millions of news articles and blog posts by looking at just a dozen or so user votes.
The downside is that what works best also takes a good amount of CPU time. Our analysis showed that running our application on a server farm would require too many servers to be feasible. On the other hand, we certainly did not want to compromise on the quality of LeapTag's results. Neither did we want to charge people for using LeapTag. Fortunately, these days most desktop computers and laptops have powerful CPUs of their own, which are idle much of the time. Moreover, dual/quad core CPUs, which are even more friendly to background applications, have become the focus of processor companies. There are other established applications that use this untapped CPU power, for example a Stanford project that studies protein folding (more of them here). We thought that using this idle CPU time on your computer to discover interesting news articles, blog posts and books might be a great use of your investment.
In short, by making LeapTag a desktop application, we hit two birds with one stone: we eliminate privacy as a potential concern for personalization and we are able to give you the most relevant results while keeping LeapTag free.
- Ulas