Portland State University

Portland State University is one of the founding organizations of the Google Summer of Code program. 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 often mentor projects in the technology end of the open source space, including hardware/software systems work with a solid code component.

Projects

An accessibility module for visualizations using Weave, an open-source visualization platform
To develop and test a Weave-to-JAWS interface to allow JAWS access to descriptions of Weave visualizations. This will make descriptions of Weave visualizations available in text format. This is a first step in a larger more ambitious project that will eventually allow Weave to generate natural language text descriptions of interactive visualizations that are compatible with the JAWS screen reading system.

Asynchronous rendering to support large data sets in Weave
Weave is an open-source web-based visualization system. To provide a responsive interface while visualizing large data sets (300,000 records), some form of threading must be developed for the single-threaded ActionScript environment. Once we have that, the rendering code must be refactored to be asynchronous with double-buffering to provide the user with a responsive and usable interface.

AVT Open Source Quadcopter Platform
Build sensor drivers and implement sensor fusion to help prepare an open-source flying quadcopter platform developed by the Portland State Autonomous Vehicles Team for its initial public release. The system is intended to support research, education, and civilian aerial vehicle development.

Collaboration in Visualization
The University of Massachusetts Lowell has been developing Weave, a web-based visualization and analysis platform (www.iweave.org), over the past three and a half years. I have worked on the Weave project for a year and a half. In this time, I have created the first version of collaboration along with my colleagues, implemented numerous features, and have fixed bugs. Weave is an open source project that was designed to allow anyone to create, analyze and share web-based visualizations. Weave runs on Flash Player, meaning its code is primarily Actionscript 3.0. Weave currently has a frail framework for collaboration. One of Weave’s main features will be its capability for multiple users to simultaneously and remotely collaborate on creating visualizations and performing data analysis.

Extending the Open Source Weave Analysis and Visualization Platform for the Biological Community
Use of Weave to the biology research community by designing a process to access publicly available gene expression datasets, import that data into Weave and use Weave analysis features to examine, visualize and compare gene expression profiles. These interactive linked visualizations will allow researchers to visually compare the variations in gene expression relative to a control.

InfoMaps: A tool for Personal Information Management and Analysis
InfoMaps is a document visualization tool designed for personal information management. It has been implemented using Weave which is an open source framework for data visualization and analysis. Over the summer, I plan to extend its support for local file systems and for linking documents with other structured data sets for visual analysis.

State Space Search Optimizer for Electronic Design Automation
This project will create an open source tool that optimizes component placement on printed circuit boards (PCB) and integrated circuits (IC). This tool will be integrated into the popular electronic design automation (EDA) tool KiCAD. The tool created in this project is a new initiative implemented in C that builds upon initial efforts by other contributors implemented in Haskell.