Difference between revisions of "GSoC"

From GMOD
Jump to: navigation, search
(IDEA 4: Cytoscape Web pathway visualization tool)
(IDEA 5: Pathway Summary visualization)
Line 113: Line 113:
 
* Potential Mentors: David Croft
 
* Potential Mentors: David Croft
  
To find out more about Reactome, take a look at the [[SupplementaryInformation|Reactome Supplementary Information]].  You can see what the old "Sky" looked like [http://www.reactome.org/cgi-bin/frontpage?CLASSIC=1 here].  Click [[PathwaySummaryVisualizationSpec|here]] for a loose specification of what we want to do.
+
You are strongly recommended to set up a local Reactome installation on your own computer now, before starting with the project.  Take a look at the [[SupplementaryInformation|Reactome Supplementary Information]] for instructions on doing this.  You can see what the old "Sky" looked like [http://www.reactome.org/cgi-bin/frontpage?CLASSIC=1 here].  Click [[PathwaySummaryVisualizationSpec|here]] for a loose specification of what we want to do.
  
 
=====IDEA 6: Reactome RESTful API=====
 
=====IDEA 6: Reactome RESTful API=====

Revision as of 08:54, 12 April 2011

Welcome to the Genome Informatics GSoC

“Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source software projects. We have worked with several open source, free software, and technology-related groups to identify and fund several projects over a three month period. Since its inception in 2005, the program has brought together over 4,500 students and more than more than 4,000 mentors & co-mentors from over 85 countries worldwide, all for the love of code. Through Google Summer of Code, accepted student applicants are paired with a mentor or mentors from the participating projects, thus gaining exposure to real-world software development scenarios and the opportunity for employment in areas related to their academic pursuits. In turn, the participating projects are able to more easily identify and bring in new developers. Best of all, more source code is created and released for the use and benefit of all.”

GSoC has several goals:

  • get more open source code created and released for the benefit of all
  • inspire young developers to begin participating in open source development
  • help open source projects identify and bring in new developers and committers
  • provide students the opportunity to do work related to their academic pursuits during the summer
  • give students more exposure to real-world software development scenarios.

Google Summer of Code (GSoC)

About Genome Informatics GSoC

The Genome Infomatics group is organizing the joint efforts of WormBase, Reactome, and GBrowse (see below). This is a great opportunity for students to contribute to the work of three different bioinformatics projects.

WormBase 
An online bioinformatics database of the biology and genome of the model organism Caenorhabditis elegans and related nematodes. It is used by the C. elegans research community both as an information resource and as a mode to publish and distribute their results. The database is constantly updated and new versions are released on a monthly basis. WormBase is a collaboration among the Wellcome Trust Sanger Institute, Ontario Institute for Cancer Research, Washington University in St. Louis, and the California Institute of Technology. Links: Website.
Reactome 
A manually curated database of core pathways and reactions in human biology that functions as a data mining resource and electronic textbook. The Reactome data model describes diverse processes in the human system, including the pathways of intermediary metabolism, regulatory pathways, signal transduction, and high-level processes, such as the cell cycle. Reactome software uses only freely available (and often open source) components and has been created with cross-platform compatibility and wide usability in mind. Data is stored in a MySQL database, the web site is implemented in Perl and data entry tool in Java programming language. The Reactome team is composed of individuals who are both biologists and programmers at the Ontario Institute for Cancer Research, New York University Langone Medical Center, Cold Spring Harbor Laboratory, and The European Bioinformatics Institute. Links: Website, ReactomeWiki .
Generic Model Organism Database (GMOD) 
An open source project to develop a complete set of software for creating and administering a model organism database. Components of this project include genome visualization and editing tools, literature curation tools, a robust database schema, biological ontology tools, and a set of standard operating procedures. This project is collaboration of several database projects, including WormBase, FlyBase, Mouse Genome Informatics, Gramene, the Rat Genome Database, TAIR, EcoCyc, and the Saccharomyces Genome Database. Links: Website, GMOD Blog

Contact Us

  • Email: robin.haw[AT]oicr.on.ca - contact me to find out more about a project or your potential mentor(s).
  • Discussion mailing lists: Genome Informatics Google Groups - ask about our projects; join the community!
  • IRC group: #genomeinformatics on Freenode.

How to apply

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

  • Your information
    • Name, email, and website (optional)
  • Brief background: education and relevant work experience
  • Your programming interests and strengths
    • What are your languages of choice?
    • Any prior experience with open source development?
    • Your interest and background in biology or bioinformatics
    • Any prior exposure to biology or bioinformatics?
  • Your ideas for a project (an original idea or one expanded from our Ideas Page)
    • Provide as much detail as possible
    • Strong applicants include an implementation plan and timeline (hint!)
    • Refer to and link to other projects or products that illustrate your ideas
    • Identify possible hurdles and questions that will require more research/planning
  • What can you bring to the team?

Guidelines and Advice

Resources

For Students
For Mentors

Project Ideas

As we are developing new features for WormBase, Reactome and GBrowse, we are exploring a number of areas ideal for Google Summer of Code students. These projects include a broad set of skills, technologies and domains, such as GUIs, database integration and algorithms. You are also encouraged to propose your own ideas related to our projects. If you have strong computer skills and have an interest in biology or bioinformatics, then you should apply!

IDEA 1: Your Original Idea

Feel free to propose your own idea. As long as it relates to one of our projects, we will give it serious consideration. Creativity and self-motivation are great traits for open source programmers, but make sure your proposal is also relevant.

IDEA 2: Export Reactome layout in BioPAX

It is difficult to exchange pathway layout or diagrams among different pathway databases. BioPAX is a pathway exchange format, but without support of pathway diagram. In this project, we propose to create an XML file format for visualization based on Reactome pathway diagrams for BioPAX level 2 and 3 exports, and a Java applet or Web Start visualization tool based on our curator tool to display this format.

  • Language and Skills: Java, XML, OWL and BioPAX
  • Idea by: Guanming Wu
  • Potential Mentors: Guanming Wu
IDEA 3: HTML 5 canvas based visualization tool for pathways and networks

With modern browsers' support of HTML5 canvas, it is a time to develop a canvas-based, dynamic visualization tool for biological interaction networks and pathways based on the new canvas tag. In this project, we propose to develop a canvas-based network interaction visualization prototype that can run in both modern browsers in a full-fledged computer, or in a tablet (e.g. ipad). The whole ideas are based on these two canvas based web applications: LucidChart and HTML 5 canvas painting.

  • Language and Skills: HTML5 (esp canvas), JavaScript, Java, GWT
  • Idea by: Guanming Wu
  • Potential Mentors: Guanming Wu, Robin Haw and Marc Gillespie
IDEA 4: Cytoscape Web pathway visualization tool

Reactome currently uses custom Javascript employing several different technologies to to provide an interactive pathway browsing tool. This is becoming increasingly difficult to maintain and extend. The project proposes to replace the Javascript with Cytoscape Web technology, to provide powerful, extendable and browser-independent visualization for pathways.

Cytoscape Web is a new technology that allows programmers to present networks of nodes and arcs on a webpage in a very flexible way. It is part of the Cytoscape project, but unlike regular Cytoscape, it can seamlessly integrate into a website, without the need for Java Webstart. Currently, Cytoscape Web uses Flash for performing animation, but the special appeal for developers is that the API is accessible from Javascript and is independent of the animation engine, so that if a future version switches to HTML5, all of the code written for this project will continue to work.

This would reuse pre-existing server-side code wherever possible, to reduce the initial learning curve, and would give the student an opportunity to work with cutting edge bioinformatics technology.

  • Language and Skills: Java, Javascript
  • Idea by: David Croft
  • Potential Mentors: David Croft and Guanming Wu

You are strongly recommended to set up a local Reactome installation on your own computer now, before starting with the project. Take a look at the Reactome Supplementary Information for instructions on doing this. You can see an example of the existing pathway browser here. In particular, what we want to replace is the pane showing the actual pathway diagram. The other two panes, showing the hierarchy (on the left) and the text details (at the bottom) are fine and we would be happy to leave them as they are.

IDEA 5: Pathway Summary visualization

The original Reactome website provided a view called the "Sky", which gave a visual summary of all of the pathways in the Reactome database. Unfortunately, this overview was lost in the migration to the new, GWT-based website.

This project would produce a replacement for the old "Sky". In particular, it would show expression and species comparison information in a multi-pathway context. The project would be GWT-based, giving a student experience with an increasingly popular website construction environment.

  • Language and Skills: Java, GWT
  • Idea by: David Croft
  • Potential Mentors: David Croft

You are strongly recommended to set up a local Reactome installation on your own computer now, before starting with the project. Take a look at the Reactome Supplementary Information for instructions on doing this. You can see what the old "Sky" looked like here. Click here for a loose specification of what we want to do.

IDEA 6: Reactome RESTful API

It is crucial to have a nice API for Reactome so that the Reactome annotated data can be used programmatically and integrated in other web applications (e.g. Wormbase) easily with very low maintenance. In this project, we propose to develop a Reactome RESTful API which should be lightweight, easy to use, and well-documented.

  • Language and Skills:RESTful Web Service, Java, Jersey , MySQL
  • Idea by: Guanming Wu
  • Potential Mentors: Guanming Wu
IDEA 7: Chado RESTful API

Chado is the database schema underlying several GMOD projects, and there are many installed instances around the world. Having a RESTful API would allow both the creation of "mashup" sites that pull data from various Chado instances but would also facilitate data sharing between sites that have Chado installed.

IDEA 8: GIS Indexing for Chado

Genome feature sequence data is stored in Chado and getting it out quickly can be a bottleneck. In this project, we propose creating "geographic" coordinate indexes on the feature location table, as well as functions to use them.

  • Language and Skills: PostgreSQL and plpgsql, Perl
  • Idea by: Scott Cain
  • Potential Mentors: Scott Cain
IDEA 9: Develop collaborative genome assembly tools and databases

This idea is speculative!

Required reading: http://code.google.com/p/google-summer-of-code/wiki/AdviceforStudents

With the advent of NGS sequencing technology, more complex genomes are being sequenced than ever before. However, after the initial sequencing funds have been spent, much more long term 'curation' work is needed. Most sequencing projects will produce an obligatory 'draft' genome, after which the community needs tools to enable it to continue to work on improving the assembly and annotation of this draft.

The rough outline of the idea is to create a hybrid between a genome sequence assembly database (such as Chado, BAM or Bio::SeqFeature::Store) and a version control system (such as GIT). Using this system the community can work together on building and rebuilding the reference genome for their model organism.

  • Language and Skills: Perl (BioPerl, Catalyst, Moose), Chado, Java, PHP (MediaWiki), GIT, RDBMS, creativity, vision, insight
  • Potential Mentors: ?
Details
IDEA 10: The genome game: crowd-sourcing better crops

This idea is a mix of a few different ideas...

Required reading: http://code.google.com/p/google-summer-of-code/wiki/AdviceforStudents

With the ongoing 'data deluge' in biology, approaches for integrating knowledge from disparate groups of specialists have never been so important.

The genome of a specific individual (potato, tomato or human) varies at specific positions along it's length, and these variations (e.g. SNPs) give different individuals their different traits and propensities. In many cases, traits can be 'scored' according to some objective requirement (typically responses to various biotic and abiotic stresses or disease propensities).

We can build a wiki system that allows the community to collectively assign (and negotiate) scores for specific SNPs via published association studies. Players can then submit and rank their personal genomes (in a given 'environment'), as well as work on defining 'optimum' genotypes for given requirements (in a given 'environment'). The system would provide a platform for education, allowing direct comparison of cumulative risks for specific combinations of lifestyle choices and genetic factors.

Details

Similar projects:

  • SNPedia, a wiki for human SNP association studies.
  • 23andMe, when they eventually steal this idea.
  • The PGP 'wiki': GET-Evidence, "assists genome analysis by providing a Wikipedia-style location where individuals can record their interpretations of individual variants and review relevant literature".
  • The Solanaceae Genomics Network, some of the best plant bioinformaticians around.

Correspondence:

IDEA 11: Exploring the Intersection of Design and Information in Biological Data

Are you passionate about social media? Do you dream in Pantone? Are you interested in exploring the clearest way to display a vast amount of information? Does working on a project to make science faster and more open make your heart race? Do you speak REST, CSS, Javascript, Perl and related technologies? If so, please consider joining us at the intersection of Bioinformatics, Web Design, and Information Architecture as we rebuild one of the original model organism databases.

Since its inception on the web in 2001 -- and with a long tradition of electronic sharing of data that predates that -- WormBase (http://www.wormbase.org) has grown to support an active research community of nearly 50K unique visitors a month from across the globe. Initially, WormBase focused on the roundworm Caenorhabditis elegans, a genetic model system well known for studies of things like programmed cell death and neuronal development. WormBase is now a true clade resource with complete genomes of both free-living and parasitic nematodes.

WormBase is a highly distributed project that includes biologists and computer scientists at four centers: Caltech, Washington University, The Ontario Institute for Cancer Research (Toronto), and the Wellcome Trust Sanger Institute (Hinxton, UK), so you should be able to jump between an editor and an IM window with ease.

You'll be helping us to develop an entirely new look-and-feel for WormBase, and in turn introduce novel user experiences rarely seen in biological databases. You'll have the opportunity to work with and learn about biological data spanning the breadth and depth of a robust experimental system. A particular focus will be on mashing up third party data sources to build a more complete picture of gene and protein function.

  • Language and Skills: modern CSS, Javascript (JQuery), consuming RESTful services, Perl
  • Idea by: Todd Harris
  • Potential Mentors: Todd Harris, Abigail Cabunoc

Contact: Todd Harris (todd@wormbase.org)

IDEA 12: Reactome-R/Bioconductor

Bioconductor provides tools for the analysis and comprehension of high-throughput genomic data. This idea would see the development of Reactome to support Bioconductor, resulting in the creation of libraries, vignettes, sample workflows and documentation.

  • Language and Skills: R, BioConductor
  • Idea by: Robin Haw
  • Potential Mentors: Robin Haw and Guanming Wu
IDEA 13: Genome Browser Community Tracks

JBrowse is a next-generation Genome Browser which provides conventional desktop & tablet-based browsing of experimental annotations on the human genome. This idea is to enhance JBrowse with an easy-to-use facility that allows genome researchers to create community tracks from their own data to share with other members of the research community. This facility would incorporate social networking features such as Facebook's "like" mechanism.

  • Language and Skills: AJAX, Javascript and a server-side scripting language such as Python, PHP or Perl
  • Idea by: Lincoln Stein
  • Potential Mentors: Lincoln Stein