COS 333: Projects from Previous Years

Here are some sketches of previous projects in COS 333; they might be useful in giving you an idea of the range of ideas that have been explored and some people to talk to. My notes are too fragmentary to give a lot of detail, especially for earlier years, and many of the protagonists have safely escaped, but I will be glad to try to recall more if something seems worth pursuing further. It's a great collection of interesting and fun projects.


SchedYou: A general online scheduling/appointment system, David Benjamin, Kevin Jeng, Colin Ponce (Ruby on Rails, jQuery)

The Third Hand: A system to facilitate the coordination and completion of errands and other tasks on the campus through cooperation among members, with and without monetary incentive, Rebecca Yu, Lucy Lin, Krishnan Mody (Django, Python, App Engine)

AAA -- Automated Academic Advisor: An online course scheduler tool for course selection and course advising, Joshua Newman, Jane E, Evan Jeng, Calvin Lee, Evans Xiang (Django, Python, jQuery)

2-Dickinson St. Website: A website for the 2-Dickinson Coop to allow easy scheduling of cook nights and chores, recipe submission, food requests, and inventory management, Vikram Rao, Mendy Fisch, Will Fisher (PHP, Javascript) An interface for placing bets on sporting events and horse races, Brian Edwards, Peter Comerford, Josh Israel, Ian McLaughlin (Django, Python)

Interactive forum and social networking: An interactive forum and social networking site for undergrads, for group chats, threads, polls, etc., Waqas Jafri, Uzair Aftab, Mark Xia (Python, PHP)

Student Course Scheduler: A system that integrates registrar, student course guide and SCORE, for viewing course information and reviews, and selecting and scheduling courses, Zhong Zhang, Cagri Onuk, Awais Tariq (GWT, Java)

iWallet: A contactless pay system for mobile phones, Riley Siebel, Chris Gibbs, Mitch Morgan, Johnnie Rose (Android, Java)

StarCraft II Replay Database: A system that allows users to upload, share, and analyze replay files for the computer game StarCraft II, Yang Mou, Danny Ackroyd-Isales, Andrew Weintraub, Joe Wilder (Django, Python, jQuery)

Chat Browser: Integrated visualization of chat conversation data, Usenet, group sites, forums, Patrick Tierney

Web-based QA replacement for the Listserv: A web-based application to replace a listserv for class announcements, questions and answers, Eric Berglund, Max Rosmarin, James Sundstrom (Django, Python)

Princeton Textbook Database: A comprehensive online database of textbooks where users can look up, edit and puchase textbooks for their courses, Kynan Rilee, Simon Krauss, Robert Timpe (Django, Python)

PIGS -- Princeton Integrated Group Scheduler: A system for helping groups to schedule and pick optimal times for meetings, Jarett Schwartz, Huanqi Deng, Emily Lancaster, Michael Ty (GWT, Java)

Grappler: A multiplayer video game with motion based on grappling hooks and physics, Jeffrey Hodes, Alex Ogier, Mike Sobin (Xbox 360, XNA, C#)

College Ranking Application and Ranking Framework: A framework for creating a web application so users can dynamically weight attributes of a dataset to obtain a ranked list, Darren Sri-Jayantha, Edward Weng, Sam Wiseman (Django, Python)

Graphical Dorm Room Planner: A graphical interface for planning dorm room layout by manipulating furniture and other contents, Robert Coe, Matt Jacobson, Zach Wyzgoski (GWT, Java, YUI)

Princeton Events Calendar: A new event calendaring system to replace the Point Events calendar, Michael Yaroshevsky, Ethan Goldstein, Samantha Hantman, Dana Hoffman, Adriana Susnea (Django, Python)

MYMapp: An iPhone application to integrate with and innovate upon information from Point, viewing the information as an interactive map, Matthew Salesi, Michele Capece, Yu-Han Hsu (iPhone, Objective-C)

Zabe: Social and Cultural Life Planner: A web-based cultural and social life planner integrated into a calendar environment, Brandon Podmayersky, Eddy Ferreira, Andrej Risteski, Zhaoyang Xu (Ruby on Rails)

Elijah: A computerized system to handle meal checking, guest meals, and meal exchanges for the eating clubs, Erik Anson, Mark Gray, Karin Tsai (Java, NetBeans, PHP, Javascript)

EDTA -- Enhanced Terminal Desktop Application: A desktop terminal application for developers, with features for coding in multiple languages and automated login to remote machines, Erin Rosenbaum, Michael Adelson, Erik Savage, Hijung Shin (Java)

A new approach to map-based search: A system to sketch regions on a map to restrict search results, with applications like booking flights or finding restaurants, Gerald van den Berg, James Hodson, Will Manning, Griffin Telljohann (Django, Python, jQuery)

gPic: An Android application that adds map functionality to Picasa Web Albums, showing where pictures were taken, Nitin Viswanathan, Frank Xiao, Rick Yin, Norman Yu (Android, Java)

Voyager Locator: A mobile device interface to Firestone's Voyager Locator service, Vichi Jagannathan, Chris Rucinski, Alan Yang (PHP, Javascript, jQuery)


Pairgramming, a web-based interface for fully collaborative programming, Ellen Kim, Christina Ilvento, Garrett Marcotte.

Tiger Mobile: Extending OIT web services to mobile platforms, Nicholas Persaud, Minh Do, Woongcheol Yang, Jennifer Yu, Newton Allen.

iPhone WiFi Chat System, Gregory Finkelstein, Anthony Deluise, Sam Freeman.

iPhone Math SAT Prep, Kenton Murray, Jonathan Fulton, Daniel Hayes-Patterson.

absORB: abstract object relationship browser for JSTOR search, Laura Bai, Ryan Bayer, Natasha Indik, Tsheko Mutungu.

Nexus: web interface for JSTOR search, Muhammad Amjad, Jonathan Newman, Tushar Gupta, Tarun Pondicherry, Will Nguyen.

Firefox add-on for sharing bookmarks, Julia Bluher, Lillian Zhou, Dmitri Garbuzov.

PlanesWalker for the XBox 360 -- action role-playing game, Mark Cerqueira, Vyenna Song, TJ Fazio.

WYDIWYG: What you draw is what you get -- Android gesture recognition, Cody Wang, Sam Perez, Henry Senger, Carl Thunman.

AutoCal: schedule automated execution of tasks on Android, Mark Grobaker, Chris Thompson, David Yang, JP Paranada.

TigerFinder: online location-based networking site for Princeton students, Michael Bachand, Brian LeVee, Jeremy Kent, Steve Ross.

Theater Facebook: networking for theater community, Josh Budofsky, Ian Ferguson, Paul Jacobs, Hannah Barudin.

ProMEM -- Prospect Meal Exchange Manager, Maddie Lu, Dan Strife, Evan Kelly, Dave Krueger.

PandaShare: Lending-borrowing meetup for Princeton campus, Michael Wu, Sauhard Sahi, Aditya Panda, Jen Chen.

SYNC calendar organizer, Jeff Carbonella, Ale Ciniglio, Jeff Thompson, Eric Schlossberg. Taking and managing class notes, Jen King, Brett Lullo, Peter Schulam.

PTX Princeton Textbook Exchange, Jonny Weiss, Damien Zhang, Eric Domb, Katie Klosterman.


Graphle: Cecile Huttentower, Philip Stern, Adam Sanders, Anson Hook. A tool for browsing large, dense graphs, particularly for biologists.

Course Selection: Eric Cohen, Val Karpov, AJ Segdewick. A web application that allows undergrads to easily organize course selections for upcoming semesters.

A Cappella Audition-Scheduling System: Kyle Leiby, Will Schwarzenbach, Sean Stern, Ciccy Yang. Web-based tool for scheduling and managing a cappella auditions.

Night of the Nine Ninja: Tom Lieber, Jeff Harris, Alina Ene, Dexter Doyle, Brian Biskeborn. Multiplayer game framework for helping social scientists carry out experiments.

Legions of Lore: Peter Whalen, Eric Whitman, Clara O'Farrell, Tom Ledbetter. Online turn-based strategy game.

Online Flash Cards: Daniel Roberts, Ota Amaize, Michale Hasling, Alberto Jurado. Computer assisted learning tool for subjects like languages, chemistry, etc.

Snakes on a CMS: David Zaslavsky, Andrew Schran, Jenny Drexler, Joel Thompson. A collaborative content management system for producing a magazine or newspaper.

"Cloud" Mobile Contact Storage System: Chris Merrick, Jingyuan Wu, Umar Javed, Srdjan Krstic. Providing "cloud" storage of cell phone contacts and easy access to these contact through a variety of media.

Integrated Course [Selection] Engine (ICE): Daniel Huang, Gyeong-Sik Choi, Yoonju Kim, Becker Polverini, Alan Chin. Integrate course selection resources from registrar and SCORE.

Knights vs. Dragons: Bettina Burgett, Stephanie Chen, Todd Dale, Kaitlin Renaud. Web-based version of Knights versus Dragons.

iPhone Transit Maps: Paul Cavallaro, Adam Ernst, Mark Limperis, Dzhelil Rufat. Viewing transit maps on a mobile device, with routing and schedule information; see

Mobile Surveys : Carter Cleveland, Andrew Ferguson, Alex Limpaecher. Cellphone based survey system.

Brown Food Cooperative Schedule Optimizer: Gordon Scharf, Gus Tate, Brian Geistwhite, Hal Laidlaw. Automate processes for scheduling cooks, guests, etc., for the Brown Coop.

Princeton Model United Nations Website: Lalithra Fernando, Kathleen Li, Jacob Lewellen, Sajid Mehmood. Automate pre-conference coordination and management for the Princeton Model United Nations Conference.

P-maps: Abhishek Agrawal, Hao Liu, Perry Morgan, Matt Sanders. Centralized website to integrate different services on a common Princeton map.


RADEx: Research Advisor and Department Explorer: Jean Hsu, Aaron Schneider, Rachel Sealfon. Information about independent work, senior theses, advisors, departmental requirements, and the like. Chris Chan, Mike Dirolf, Jason Yang. A site to connect charities with people who would like to donate to them.

Princeton Intramural Sports Website: Cody May, Jonathan Sweemer, James An, Michael Ye. Mechanizing registration, scheduling and management of intramural sports.

Chuckles Virtual Jam Session: Mason Simon, Andrew Saxe, Paul Kompfner, Josh Herbach. Internet jam sessions using Chuck.

Tourspot -- Virtual Tour for Prospective Students: Penny Enomoto, Don Kim, Doug Hohensee. Orange Key tours with Quicktime VR visuals.

OA TripCenter: Andy Brett, Nic Byrd, Sam Grossberg, Hal Pratt. Access to trips, training, and other Outdoor Action activities.

GOSH Online Shell: Guy David, Dan Gopstein, Mike Liao, Alex Sieke

IMagine: Instant Messaging Anywhere: Dave Ford, Jeff Bagdis, Alan Barnes, Jayson Paulose. Save IM sessions, simulate being there all the time, reconnect from somewhere else, all via a web page.

Stoog: Student Organized Online Grading: Evan Green, Yun-En Liu, Lucy He, Nick Leonhardt, Teddy Forsyth. Submit grades to see how you're doing in a class.

ShiftManager: Shift Scheduling and Management: Mark Spear, Zennen Clifton, David Costanzo. Mechanizing tasks for PU Dining Services.

PROBE: Princeton Online Betting Engine: Peter Curtin, Lenny Shulgin, Pierre Genest, Scott Peper. Betting on Princeton and other events, with fantasy money.

POLE: Princeton Online Laundry Engine: Joe Kovba, RJ Liljestrom, Sam Albert. Realtime access to information about what laundry machines are in what state.

Bookworm: Wei Ho, Chris Uga, Yue Yang, Anton Malyshev, Daniel Douglas. Faster, easier interactive access to the library catalog.


Princeton Entertainment Hub, William Mansky, Hart Montgomery, Dan Pall, Jon Ullman. Database of interesting events and a way to sign up for ones of interest.

Plan-o-matic Long-term Scheduler, Eirik Bakke, Arthi Ramachandran, Alison Reynolds, David Weiss. Multi-year planning of course of study, with information on prereqs, schedules, etc.

Princeton Events Database, Ed Davisson, Julia Manasson, Daniel Barrett. Managing the records of previous campus arts activities.

Portable Desktop, Zach DeVito, Stuart Lange, Jim Dickinson. Drag and drop gadgets and widgets to a web page for access from anywhere., Kamil Choudhury, Alex Combs, Chris Wynnyk. What's playing online and how your preferences compare.

Princeton Maps Project, Ben Amster, Wale Oladehin, Lee Tien. Interactive information about campus buildings and people.

Princeton Ride-sharing, Tom Brennan, Michael Onorato, Parker Seidel. Google maps interface for sharing trips to and from PU., Dan Benediktson, Caleb Howe, Mike Lee. Shortest paths from here to there on campus while avoiding short term obstacles and construction sites.


"XDB", Arel Lidow, Emily Moxley, Sasha Ovestky, Chris Richbourg. An application that can access a dynamically changing database from Excel and publish it to the web.

"ELTRIC", Eric Knauft, Elika Etemad, Troy Savage. A content management system permitting multiple people to maintain a website, documentation, etc.

"Princeton Shopping Network", Kim Tzeng, Alvin Wang, Josh Probst, Josh Quinones. A shopping portal for the Princeton community.

"Integrated Course Engine", John Pym, Shirley Wuu, Sergio Garza, Paulo Quiros. SCORE, the student course guide, and the registrar in a single site.

"Room Draw Guide", Lester Mackey, Kay Ashaolu, Blake Dixon, Avi Flamholz. A web interface to all information on campus dorm rooms. Now gone public at

"AIMailBox", Matt Plough, Cameron Brien, Jeff Pinner, Sratha Saengsuwarn, Patrick Ledbetter. Monitoring and forwarding of IM traffic when you're not online.

"MIMA Musician's Network", Michael Wenzel, Nate Starrett, Monte McNair, Greg Fields. Web interface for local improvisational musicians.

"What's My Image?", Robert Moore, Kevin Shi, Frank Macreery, Sameer Shariff. How others see you, based on your picture.


"WeShare", David Silver, Brett Antonides, Brian Tsang, Steven Saar, Amit Chatwani. Web service for sharing DVDs and VHS tapes.

"ADMADM", Brendan Miller, Geoff Patterson, Mark Daly. Management and searching of array data for genomics experiments.

"Pguide", Archer Batcheller, Marina Elson, Emily Huang, Josh Lee. Guide to upcoming events on campus, and personal notification system.

"Etude", Erik Lillethun, Frank Battaglia, Joseph Bradley, Joe Fruchter. A system for searching for and identifying music by Parson's codes.

"ULink", Michael Li, Reona Kumagai, Ben DeLoache, Cindy Lee. A local and independently invented version of Friendster and/or theFacebook.

"Poker", Ross Bogenschneider, Kent Cheng, Kenrick Kin. An online poker game system: chat for poker.

"Princeton Portal", Jamie Niemasik, Dave Kaplan, Darsh Ranjan. A portal system for undergrads; this is now available as

"PowerPLANT", Rob Hazan, Jon Drummond, Michael Ten-Pow, Brad Zankel. System for creating Java applications as plugins.

"FAdMan", Rob Simmons, Peter Landwehr, Spencer Salazar. Management of advertising for the Prince.

"Ranganatron", Seamus Abshere, Michael Coenen, George Costow. Multi-faceted system for managing photographs, and other data bases.

"Robowars", Greg Prisament, Ben Elias, Jon Epstein, Sebastian Borza. System/framework for building robot games.

"INA Visualizer", Will Butler, Joel Diamond, Conall O'Callaghan. Visualization of international trade flow data.

"PIMP", Mike Weishuhn, Muoyo Okome, Drew Weyerhauser, Marty Taylor. DVD and VHS rental and commentary system.


"My Princeton", Amin, Atahuene. Web service to provide easy and adaptable interface to activities and information at Princeton -- news sources, campus events, etc.

"BookSearch", Liu, Orrechia, Oh. Finding best prices on books, by scraping Amazon et al and from some used-book outlets.

"Recipe Buddy", Bavor, Jennings, Levinson. Mac-based system for managing recipes, including local and Internet.

"Binary Independence", Gill, Labatt, Parker. A system for uploading photographs for potential sale; thumbnails, searching, and a watermarking scheme to protect larger images.

"Survey Creator", Hebden, Foulagdar-Mercer, Simbi. Web-based survey creation program: enter questions, formats, etc., and it generates a survey to be taken on the web.

"Gift-o-Matic", Nathan, Arellano, Slass. System for creating wish-lists on the web for others to commit to making gifts, loosely like bridal registry services.

"Option Manager", Belli, Wang, Durrleman. Option pricing, based on online historical data from the web.

"Y'All Messenger", Azad, Weiss, Dolgov. A cross between chat and instant email, for keeping track of who plans to do what in the amazingly active undergrad social life.

"Campus Newspaper Delivery Agency", Schreer, Stroustrup, Wible, Yehuda. Web-based system for managing the student-run campus newspaper delivery service: subscriptions, billing, delivery schedules and personnel, etc.

"PUGWeb", Georges, Teising, Beyer, Carnevale. Interface for pluggable games, primarily two-person strategy like Kalah.

"Meal Checker", Parparita, Seng, Subramanian. Web-based system for reconciling guest meal charges at the clubs, replacing an unbelievably Byzantine manual system.

"Ebay Estimated", Wei, Tonkyn, Melahn, Prevost. Estimating ranges of prices for categories by scraping Ebay historical listings.

"Map Maker", Peterson, Reyzin, Brooks, Friedman. Interactive creation and manipulation of structured graphical data.

"AudioCAT", Melo, Ventimiglia. Web-based search interface to the library's music catalog.


Estimating prices of derivatives for weather-based securities

"Smarter Tiger", a Princeton-based takeoff on "smarter child": a chat system for finding info about Princeton events, weather, etc., etc.

Purchase order system for managing flow of information through the University's labrynth of purchasing systems.

Two (count 'em) web-based calendar systems.

Creating instructional material like tests, complete with randomized questions, and keeping records; intended for school teachers.

Online course scheduler.

Interface to mantle convection programs from GEO.

XML editor, for creating and managing XML documents and schema.


Mail list archiver

Web-based note-takes and manager

GDB interface

Campus video web service

Web-based personal finance managment

Web-based flashcard system



The project was to build an integrated development environment for the language of one's choice. A big class, with 24 groups, and everything from C and C++ to robot software and Palm Pilots.

This page was compiled mostly by Brian Kernighan and partly by Robert M. Dondero, Jr.