Myngle is a research project where we explored how to share a unified and enhanced view of web history across multiple devices. A server receives web history content from browser plugins (Firefox and Chrome), and delivers web history content to multiple clients (iPhone, Android, Maemo-Qt).
One aspect of the web history enhancement is the creation of representative thumbnails of the visited pages – we called them snippets.
I contributed to the overall project by developing the web server (Django) and the components to take a screen capture of a webpage (Firefox plugin and server), as well as a specific Nokia Maemo Qt client aimed at being used in a car environment.
- Myngle: Unifying and Filtering Web Content for Unplanned Access Between Multiple Personal Devices. Sohn, T., Li, F., Battestini, A., Setlur, V., Mori, K., Horii, H. Ubicomp 2011: IACM International Conference on Ubiquitous Computing.
- Supporting Unplanned Activities Through Cross-Device Interaction. Sohn, T., Battestini, A., Horii, H., Bales, E., Setlur, V., Mori, K. Automotive UI 2010: International Conference on Automotive User Interfaces and Interactive Vehicular Applications
A typical scenario goes as follows: “You’re at home and you’re planning a dinner with friends. You search for restaurants on yelp, browsing a couple of options, going back and forth to check reviews, menus and pictures. You finally pick one place, but you have to drive to get there. You take your Nokia phone with you in the car, open Myngle to quickly view the restaurant pages you’ve recently visited. You find the place you picked, select it to view it on the map.”
Snippets are small images that are a visual summary of the webpage. Snippets need to be recognizable to help the user quickly search and identify a webpage or URL that he previously visited.
I built a service and API to retrieve snippets used by different projects where we included snippets. The API would take as input a URL, and either return synchronously a snippet, or a snippet identification code for the client to asynchronously retrieve the resulting snippet late. Upon reception, a URL was queued to be processed. The first step was to create a screen capture of the webpage automatically, then crop and composite the resulting image based on input parameters.
The design and code to composite a snippet was developed by co-author V. Setlur.
Examples of snippets: