GSoC/GCI Archive
Google Summer of Code 2011

Portland State University

Web Page:

Mailing List:

We're the Portland State University Summer of Code team, hoping to participate in a seventh year of this fine activity. In the past six years, we've successfully mentored 34 students through projects in a variety of areas ranging from the immediately practical to the forward-looking esoteric. Our specialty is projects that clearly benefit the student, the open source community, and society in general, but have no obvious fit in the standard mentoring organizations. In particular, we tend to focus on small-scale or individual, risky but promising open source "seed" projects that we think will grow into something great. We also do well with students whose coding projects have an academic bent. We like to mentor projects in the technology end of the open source space, including Linux kernel driver work and open hardware/software systems work with a solid code component. That said, a number of our projects have been at the applications level as well; one of our strengths is the ability to track down mentors for a wide variety of different kinds of activity. Portland, Oregon is an amazing place, and we're lucky to have access to a strong, diverse open source community.


  • A Plugin to consume Open311 Requests into an Ushahidi Map Open311 offers free web API access to existing 311 services. It's most common uses are for the reporting and tracking of non-emergency issues associated with public spaces. The site is an example of a site implementing the Open311 API specification. A goal of Open311 is to establish a standard for interacting with 311 services so that applications developed for one city can be easily built upon for another city's 311 services. Ushahidi is a non-profit company th
  • An Android Mobile App for Barcode-Based Search of Food Allergies This project is an Android mobile application, which would utilize databases to access information about food products found in a grocery store. The user interface will initially consist of a barcode scanner. The user will photograph a barcode of the product in question, and a message will be received as to whether or not that product is found within known allergen-free database(s).
  • Arduino Motor and Sensor Toolkit This project aims to create a GUI-based toolkit that can be used to control motors and read/process IR sensor input using the open-source Arduino board.
  • Displaying subsurface features in a virtual world This project aims to display a subsurface layer over an existing 3d virtual world application. The development would take place on the World Wind open source 3D interactive world viewer created by NASA.
  • Formal Executable Semantics of Haskell The K semantic framework was developed to address the shortcomings of previous semantic frameworks which were non-modular, non-executable, and non-concurrent. This summer I will formalize the dynamic semantics of Haskell 98 in the K semantic framework. The framework will yield an interpreter for Haskell 98 which allows the semantics to be tested. The semantics will be modular so it can easily be extended to Haskell 2010 and to include other language extensions.
  • FreeQuiz Educators are given many tools to assist in teaching today's youth. However, some of these tools are very expensive, difficult to use, or are not easily accessible. This project would create an open-source solution to aid in connecting teachers at multiple levels by sharing quiz data and providing a consistent game interface for asessing students.
  • Genetic Algorithm Toolkit for Lush 2.0 A machine learning toolkit will implement multiple variants of the genetic algorithm (GA), including extensions to coevolving and spatially-distributed populations. Implementation will support user-defined fitness functions, performance measurement tools to study evolutionary dynamics, and highly configurable evolutionary search parameters for best quality results. The toolkit will be applicable in educational, scientific, and engineering settings.
  • Git in the Classroom! This project proposes a new type of GitHub-style site aimed more towards programming classrooms. For example, teachers could create classes and projects, to which students could add repositories. This would allow teachers simple access to their students' work, provide them with automated testing and grading functionalities, and incentivize teaching their students about some of the joys (and of course, the pains) of working with SCMs.
  • Mentor Scheduling Program for University Studies The University Studies program needs to match mentors to particular courses. The mentor takes a survey and is asked questions to determine which courses will be a good fit. The questions ask pertain to time-slot, department, theme, and faculty. Course descriptions, the mentor survey, and other configuration information will be loaded into the tool and an optimal, valid schedule will be produced based on the input.
  • Personalized, adaptive game-play to improve learning in Tuxmath Tux, of Math command is an open-source educational game for learning Mathematics. Since the game is quite popular and used by many schools, my idea focuses on improving the learning of a player/student by providing a personalized, adaptive game-play. This is done by modelling the student's knowledge state using Bayesian networks. It also helps a teacher/supervisor to be provided with a detailed assessment about a particular student's strengths and weaknesses in individual concepts.
  • Spatially referencing sub-images inside larger images for online editing and publication. Digital imagery is collected using high resolution electron microscopy, but it is difficult to manage these data and especially to reference higher zoom levels to each other. This project will use the techniques developed for georeferencing satellite and aerial photography and apply it at the microscopic level using open source GIS tools.