Google Summer of Code 2007

What is Cytoscape?

Cytoscape is an open-source network visualization software platform written in Java. Cytoscape was originally written by biologists for visualizing molecular interaction networks, however the platform has evolved into a general network visualization application. Cytoscape's software core provides basic functionality to layout and query the network and the ability to integrate arbitrary state data about the network into the visualization of the network. The core is extensible through a straightforward plug-in architecture, allowing rapid development of additional computational analyses and features.

Cytoscape is used by thousands of researchers in the systems biology/bioinformatics domain and because our development team is still relatively small your contributions to this project could have a direct impact on the practice of science!

Visit our website for more information: http://www.cytoscape.org

For more information on the Summer of Code: http://code.google.com/summerofcode.html

Overview of Ideas

As we are prototyping new features and functions for Cytoscape, we are exploring a number of more general areas ideal for Google Summer of Code students. If you have solid CS skills and have interests in the biological domain, then you should apply.

IDEA: Cytoscape Anywhere

We want to enable people to use Cytoscape from within their Web browsers. On this project, you will develop a server-side component and a thin client that uses built-in Web browser capabilities, such as the AJAX technology that underlies Google Maps, to provide a subset of Cytoscape functionality for viewing, editing, and analyzing networks.

IDEA: Non-biological Applications

Cytoscape's architecture isolates the core network layout and query functionality from any biological semantics. Cytoscape can support a diversity of network visualization/analysis applications outside of the molecular biology domain. We are seeking proposals for Cytoscape applications in non-biological domains. Example applications include -- but are not limited to -- telecommunications network monitoring/management, social networks, software visualization(static connection of modules, classes; dynamic connection of processes; etc.), ecological networks.

IDEA: Visualizing multiple data points/types per node (or edge)

Biological networks are frequently associated with data that come from a diversity of sources -- e.g. gene expression via microarrays, protein abundance via mass spectrometry, chromosomal abberations via comparative genomic hybridization, genetic polymorphisms. A number of approaches have been developed for overlaying data from multiple sources on network nodes and edges, for example mapping multiple gene expression measurements onto a 'striped' node color overlay. We are seeking proposals for Cytoscape plugins that implement novel, alternative ways of visualizing multiple data measurements on network nodes and edges.

IDEA: Cytoscape workspace sharing/publishing

Cytoscape users are currently able to save their session in a single file for later use or to pass to their colleagues. We are seeking proposals to create a novel system for saving an interactive Cytoscape project to the web. You could imagine that a biologist in Boston could share their new molecular interaction network on the web and their collaborator in Paris could immediately interact with it. This would support more sharing and collaboration in biology.

IDEA: New network visualizations

Cytoscape has a core set of basic graph (network) layout algorithms, from both proprietary and open source libraries. Biologists clearly need more advanced layout algorithms that consider biological information when performing the layout. We seek proposals to write new Cytoscape layout algorithms that make use of biological attribute data loaded into a Cytoscape network. For instance, a layout could organize nodes with different attributes in concentric rings, with each ring representing one type of node, or nodes with different degree. Lots of cool ideas are showcased at http://www.visualcomplexity.com/

IDEA: Automate workflow using scripting

Cytoscape has many powerful analysis functions, however they are only accessible via the graphical user interface. This is good for the average biologist, but computer savvy power users would like to be able to work faster and automate common tasks. We seek proposals to build a scripting system into Cytoscape, perhaps using scripting languages that support the new scripting system for Java 1.6.

IDEA: Advanced Editing Features and Tools

Cytoscape has a simple network editor with a limited set of features. This is sufficient to support most network analysis and visualization tasks. Additional tools and features would be useful, however, in supporting tasks like preparation of figures for publication or presentation. Examples of such features are

and other features/tools that one might expect in products like Adobe Illustrator and Microsoft PowerPoint. We seek proposals for enhancing Cytoscape's network editing environment with novel features and tools.

IDEA: Cellular-level Visualization

Current pathway visualization methods examine generic pathways without regard for what happens in a single cell. Soon data will be available for cell-specific pathways. This will allow us to attempt to attempt to visualize pathways in the context of a single cell type. Although advanced zoom functions for models of the earth (Google Earth, World Wind) are available, no such viewer is available for a cell model. Work on this project would focus on evaluating current open source 3-D viewers, and determining which technology would be best to use for cell-model visualization. The evaluation work would include prototyping interfaces between the viewers and Cytoscape.

If you want to apply

We would like to know who you are and how you think. Incorporate the following into your application:

If you are selected

You will be working with an active team of software developers that also speak biology. You will work on intellectually stimulating and challenging tasks as part of a very collegial and supportive community of software developers.

You will be gaining experience in a rapidly evolving field at the intersection of computer and biological sciences. You will learn a lot about information visualization, user interface programming, and human-computer interaction techniques. You will gain experience in the emerging and dynamic field of network visualization and analysis.

You will work on applications that help to improve the practice of medicine and the quality of life. You will make a difference.

New Resources for Next Year's Application

Google_Summer_of_Code_2007 (last edited 2009-02-12 01:03:15 by localhost)

MoinMoin Appliance - Powered by TurnKey Linux