Projects
Project 1: Delicious Memex
2012-09-10 to 2012-09-24
Technologies
- JavaScript
- jQuery
- Chrome Extensions
- JSON
- Delicious API
Description
Students saw and later implemented a standalone version that allows users to load bookmarks from any Delicious account and create a new trail. For this assignment, students will create a related implementation that explores the idea of trails as a mechanism for organizing information using Delicious.
Options
Select one of the following as a possible starting point:
- Improvements to Standalone Trail Maker: Building upon the allowing people to create trails from more than one user's bookmarks, search, go through tags.
- Trail Browser: Create an interface that displays all of a Delicious user's trails and lets you navigate through them. The navigation interface could be purely textual and display metadata from Delicious. It could also display bookmarked pages themselves within an iframe or by using a screencapture utility like webkit2png or khtml2png
- Post to Trail: Build an extension to modify the Delicious Post a Bookmark screen so that a user can add a bookmark to an existing trail or create a new one.
- Trail Maker at Delicious: Build an extension to modify the Delicious bookmarks page to allow users to create a trail from their bookmarks within the current Delicious interface.
Notes
The syntax for trails that we will be using on Delicious is to apply 'trail:[trailname]' to an item to indicate that it is part of a trail and 'step:[number]' to indicate where in the trail the item is positioned. Each item in a trail named "Vacation in Paris," for example, has a tag 'trail:vacationin_paris'. The first item in the trail has a tag 'step:1', the second item has the tag 'step:2', and so on.
Project 2: Controlled Vocabularies
2012-09-26 to 2012-10-22
Technologies
- JavaScript
- jQuery
- Chrome Extensions
- JSON
- site-specific APIs
Description
In Cory Doctorow's "Metacrap" essay he lists seven problems with explicit metadata. Students will build or modify UI as a way to potentially address one of these problems, making it easier to use a controlled and consistent vocabulary.
Options
Select one of the following as a starting point:
People are lazy: Attempt to prove Doctorow wrong and show that ease-of-use will help this problem. Add UI onto Delicious (or some other service) that helpfully suggests tags to make it easy for you to follow the strict tagging principles you defined in 202. Or, investigate automatic tagging using the TimesTags API, or some other approach.
People are stupid: There still exist lots of "iPhnoe 4" and "Andriod" listings on eBay. Add UI onto eBay (or some other service) that auto-corrects spelling mistakes. Or, build a UI that suggests similar spellings that are more popular.
Canonical: Dilution is experienced when several non-canonical versions of a link are saved on a service like Delicious. What would the effect be if these links were all consolidated? Build a extension for Delicious that automatically inserts the canonical version of a URL when you save a bookmark.
Or: tackle another one of Doctorow's strawmen, or build another project of your own design that uses a controlled vocabulary or otherwise explores the concept.
Project 3: Social and Distributed Classification
2012-10-24 to 2012-11-14
Technologies
- JavaScript
- jQuery
- Visualization toolkits
- Chrome Extensions
Description
Analyze existing uses of social classification and attempt to evaluate their usefulness.
Options
Select one of the following as a starting point:
Build a tool to visualize a user's Delicious or Flickr (or Instagram, Twitter, etc.)tags. Create a graph of how frequently tags are used to check for a long tail effect. Let users compare their tag distributions to other students in the class or to their friends. Explore a user's tags and data in a way that informs the user of something useful (e.g. frequency of tags, top tags, etc.). What calculations would you like to provide to learn something from the data?
For some prominent blogger (e.g. Jason Kottke, John Gruber, etc.) that you like who classifies their own work, build a tool to analyze how their own author-chosen tags compare to the tags for that link on Delicious (or wherever).
Wikipedia's organization of categories and disambiguation is itself a socially determined classification and may prove very valuable. Build a Chrome Extension that uses Wikipedia disambiguation pages to suggest narrower, less ambiguous search queries. How does your Wikipedia-generated disambiguation compare to Google or Bing's suggested searches? There is a (long) list of Wikipedia disambiguation pages that your project can draw from. You don't necessarily have to extract all the disambiguation pages from Wikipedia to demonstrate this idea.
Or: Build another project of your own design that explores the concept of social and distributed classification using data visualization.
Final Project: IO/IR
2012-11-16 to 2012-12-12
Technologies
- JavaScript
- jQuery
- Chrome Extensions
- Google Fusion Tables
- Flask
- Node.js
- Mobile
- etc. etc.
Description
Over the course of the semester we've explored and introduced quite a few different approaches and technologies for working with information. In this project, students will be tasked to synthesize what they've learned by tackling an information organization and retrieval problem of their choosing.
Options
Build and explore a topic of information organization and retrieval that you find interesting. This project is open-ended on purpose and is meant for you to synthesize what you've learned throughout the semester.
Other Ideas to start from to get you started...
Boolean search, tf-idf, stemming, stop words, and natural language processing are all techniques used to improve access to information on the retrieval end. Create a tool that illustrates the effects of various approaches to search.
Further explore one of the previous project prompts that we've covered in class with an IO/IR component.