COS 333: Project Ideas

Wed Feb 24 16:20:37 EST 2010
New item(s) at the front.

Overview

The ideas here have come from a variety of friends on campus. I've edited their ideas into a somewhat uniform style and format, but have tried to leave their ideas in their own words. You're welcome to approach the people listed directly, and I would be happy to act as an intermediary if you prefer.

Daily Princetonian [Patrick Wendell '11, Executive Editor for the Web]

The Daily Princetonian website presents articles and several forms of multimedia content related to campus and local-area news. Completely redesigned in 2007, we have developed a sophisticated web application built on Django and a MySQL/Apache backend that is used by over 100 staff members to publish the paper, and averages 30,000 pageviews from the general public every day. Developed, managed, and maintained entirely by students, the web team of the Daily Princetonian is one of the only dedicated software development teams on campus, and offers unparalleled opportunities to make a significant impact and do highly visible development and design work.

We are looking for students that would be willing to work in collaboration with the web team to develop significant, modular projects that can be integrated with our existing website to make the site more engaging and useful for our readers and present the news in new and interesting ways that are only possible with the innovative use of web technology.

IPHONE APP: The Daily Princetonian is looking for a team of developers to produce a mobile phone application (Iphone preferred, other platforms possible as well), that would allow access to all of the content and functionality of the Daily Princetonian web site in an intuitive and powerful mobile interface.

Interface challenges would include: displaying 20+ articles every day, integrating various alternate types of media (e.g. video, audio, photos), providing user-interactive functionality such as commenting on articles, organizing a large amount of archival content to be easily searched and navigated, and unobtrusively integrating advertising for monetization.

The primary value that we see added by this interface over the primary website is the possibility of additional user interaction. For example, we would like to see a number of personalization settings that would allow the user to customize their interface, and are open to any other ideas that would make the application an engaging and useful way to interact with the Daily Princetonian web content.

WYSIWYG LAYOUT DESIGNER: The Daily Princetonian is looking for a team of developers to produce a browser-based layout design system that will allow an easy and intuitive way to rearrange the placement and appearance of content on the website. Traditional layout design for the web is very heavy on dynamic content inserted into static HTML templates, styled with static CSS and Javascript. We envision a heavily AJAXified system that can be used to dynamically generate the HTML, CSS and Javascript for creating new layouts and designs for the Daily Princetonian's online content.

Challenges include: designing an intuitive browser-based interface for setting up a layout; dynamically generating HTML, CSS and Javascript so that all aspects of the page (stylistic, placement, and behavioral) can be modified by non-technical users in the browser; modularizing the layout concept in a way that can be efficiently serialized and stored in a mysql database, and so that modular pieces can be reused for future designs.

Alcohol Coalition Committee system [Sanjeev Kulkarni, ELE]

Princeton's Alcohol Coalition Committee (ACC) has a working group focused on developing a Princeton specific alternative to AlcoholEdu for College, the online, science-based course that all incoming Princeton students are required to take. Given how often AlcoholEdu has come up during the span of the ACC and how much negative input we've received from students about it, the ACC agreed that it would be worthwhile to have a group work on creating a Princeton-specific alternative.

Roughly, the project would create an interactive and innovative communication tool to enhance campus alcohol educational efforts, a web-based education and information gathering tool for the Alohol Initiative. A web interface would present information in various formats (text, graphics, video, etc.). We would also like to gather information through questions that users would answer, and so a back-end database piece would also be involved. Of course, there might also be interaction between the two -- e.g., answers the user provides might affect subsequent content/questions.

Library data access [Cliff Wulfman, Library]

The library has a large number of potential projects as they make increasing use of digital technology. Here are a few:

The Princeton University Digital Library: PUDL provides access to digital versions of a rich collection of rare books, manuscripts, musical scores, photographs, and engravings. There are large amounts of XML data and several terabytes of digital photographs. Students interested in information retrieval, information visualization, high-resolution image display, workflow management, image processing, and a variety of information-science problems will find many opportunities here.

Daily Princetonian Digital Archives: The Library has begun to digitize the historical run of the Daily Princetonian, from its inception in 1876 through 1997. As with the PUDL, the Prince archive is a trove of complex metadata and digital images currently being served through a commercial digital-library interface. Projects that refine or extend that interface, perform data mining or text analysis, or provide web services for the archive are among many possibilities.

Voyager Locator: Several years ago a Princeton CS student wrote a program that shows users how to find their way to books in the stacks. The library wants to convert this application to work on mobile devices like the iPhone and Blackberry.

Campus info on smart phones [Serge Goldstein, OIT]

OIT has signed an agreement with Terribly Clever (now a part of Blackboard) to develop a set of mobility apps targeted at iPhone, Blackberries, and browser-capable smartphones. OIT provides a data feed (for example, a feed from the events calendar) and Blackboard builds an app that displays the data on various mobile devices. Our contract with Blackboard also allows us to develop our own modules as part of this mobility "suite", and we'd be happy to have students participate. Each such module will typically need to pull from a data feed, process the data, and generate output for various devices.

Campus art collection maps/tours [Sal Rosario, OIT]

There are many pieces of art both outdoors and indoors. It would be nice to be able to locate information quickly when we find a work of art on campus. I know that the art museum has been thinking about this, but a group of motivated students could really put some momentum behind it.

Research project portfolio/catalog/showcases [Sal Rosario, OIT]

Princeton faculty and students are engaged in wonderful research projects. We normally hear about them when they appear on the University homepage, or if we wander to departmental sites. It would be great to have web and mobile interfaces to search and read about the important work going on. This could be a great marketing platform targeting potential donors and potential industry partners for research.

Room / resources reservation system for residential colleges [Lisa Herschbach, Wilson College]

Build a robust, comprehensive room reservation program for the residential colleges, that makes it easy for students to view all of our resources (via photos or videos), reserve spaces, provide account information, etc. Right now each college has their own home-grown version of this, but from the perspective of 'users' (students), it would be great to have a comprehensive portal of sorts, not least since they are often looking for specialized spaces (such as theaters, dance studios, multimedia labs) that not all colleges have -- so it is a lot of work for them to track down where these things exist, who to contact to arrange to use them, etc.

Workflow administrator system for OIT hardware [Martin Harriss, OIT]

The idea is to write a Workflow Administrator. This would be a system that holds a library of templates for tasks that we do around here -- install a new system, move a system from one building to another, decommission an old system -- and a way to instantiate one of these tasks. There would be a part of the system that allowed you to create and edit tasks. The important thing for us, and what would distinguish this from a ticketing system (we already have one of those) is that the proposed system would know, for each step in the overall task, what data would need to be collected at that step (e.g. a computer's MAC address, rack location in the computer room, etc.) The system would also have the ability to run a script at each step that could, for example, populate one of our other databases with the information collected at the various steps. The system would presumably be web based with some kind of database behind it, so it would hopefully have some relevance to today's computing environment. It might present some interesting challenges -- for example, within the part of the system that edits templates, how do you, on a web page, specify steps of the overall task that can be performed in parallel versus those that have to be performed serially?

Holdovers from last year, probably still with current interest

Systems to support Student Volunteers Council [Kiki Jamieson, Pace Center & Politics]

Here are three ideas from the Pace Center, Princeton's center for civic engagement (http://pace.princeton.edu). Each of these would help us to improve significantly the effectiveness of public service done by Princeton students. The Pace Center sponsors projects and initiatives that involve more than 1400 participants each year. Programs range from the Student Volunteers Council (SVC -- a student-led organization dedicated to promoting and facilitating student volunteerism in the local communities of Princeton and Trenton (http://www.princeton.edu/svc) to Community Action (a pre-orientation program that introduces students to local communities) to Community House (which works with local schools to close the minority achievement gap) to Breakout Princeton (a civic action program) to a lively summer public service internship program.

Community Action Participant Assignment. Each year approximately 150 incoming freshmen participate in a week of service called Community Action (CA). The participants are accepted and assigned to one of 13 groups based on stated preferences, gender, residential college, allergies, and other relevant criteria. Ideally a program could be crafted that would take all these fields from the database and create groups based on them.

Public Service Internship Application Management System. Each year, hundreds of students apply for summer public service internships. We sift through applications in order to select the 160+ who will receive Princeton sponsorship. Ideally we would have a system for processing application information stored in a database. The data from students' completed applications have already been "dumped" into an Access database. We need to be able to sort and manipulate those data into different reports and formats for several colleagues and reviewers. We also need to be able to analyze the data for our evaluative needs.