Difference between revisions of "GMOD Evo Hackathon Proposal"

From GMOD
Jump to: navigation, search
(Ian's JBrowse project suggestions)
Line 1: Line 1:
 
<div style="text-align: center; line-height: 1.1;  margin-bottom: 2em; font-size: 200%">NESCent Hackathon on GMOD Tools for Evolutionary Biology</div>
 
<div style="text-align: center; line-height: 1.1;  margin-bottom: 2em; font-size: 200%">NESCent Hackathon on GMOD Tools for Evolutionary Biology</div>
 
__NOTITLE__
 
__NOTITLE__
The GMOD Evo Hackathon aims to bring together experts in evolutionary biology, software, and bioinformatics to design and implement enhancements for GMOD tools, improving their support for evolutionary biology.
+
 
 +
The GMOD Evo Hackathon aims to bring together key developers of GMOD components with developers from the evolutionary biology community to fill critical gaps in GMOD for evolutionary research.
 +
 
 
__TOC__
 
__TOC__
  
== Overview ==
+
== Synopsis ==
  
We propose a NESCent-hosted hackathon to improve Generic Model Organism Database (GMOD) tools' support for evolutionary biology. Historically, the GMOD tools have emphasized storage and presentation of single-genome information, with very limited support for the data and formats that are important to the evolutionary biology community.  In this meeting, we specifically aim to develop tools for 1) viewing comparative genomics data, 2) visualize phylogenomic data, and 3) supporting population diversity and phenotype annotation. The proposed event will bring together a selected group of 20 experts in evolutionary biology, software, and bioinformatics in an informal, high-intensity environment, with the goal of achieving the maximum possible progress within the event's five-day duration.
+
We propose a hackathon to fill critical gaps in the capabilities of the Generic Model Organism Database (GMOD) toolbox that currently limit its utility for evolutionary research. Specifically, we aim to focus on tools for 1) viewing comparative genomics data; 2) visualizing phylogenomic data; and 3) supporting population diversity data and phenotype annotation.  
  
== Background ==
+
The event would be hosted at NESCent and bring together a group of about 20 software developers, end-user representatives, and documentation experts who would otherwise not meet. The participants would include key developers of GMOD components that currently lack features critical for emerging evolutionary biology research, developers of informatics tools in evolutionary research that lack GMOD integration, and informatics-savvy biologists who can represent end-user requirements.  
The GMOD project is a confederation of open-source projects developing software tools for storing, managing, curating, and publishing biological data. GMOD tools are used by many large and small biological databases, and increasingly by individual research labs, for the dissemination of the results of experimental research and curated knowledge.
+
  
While GMOD's software tools provide a powerful and feature-rich basis for working with biological data, many GMOD tools still lack features needed to effectively support evolutionary biology.  GMOD's current strengths are with genomic data.  In the past GMOD has not emphasized areas that are traditionally important in evolutionary biology, such as phenotypes, phylogenetics, population genetics and natural diversity.  Historically, evolutionary researchers have not had access to genomics data because of cost issues, and thus GMOD has not had a large presence in that community.
+
The event would hence provide a unique opportunity to infuse the community of GMOD developers with a heightened awareness of unmet needs in evolutionary biology that GMOD components have the potential to fill, and for tool developers in evolutionary biology to better understand how best to extend or integrate with already existing GMOD components.
  
However, two trends are now bringing the interests of these communities together in ways that can benefit both.  First, high-throughput sequencing technologies have made large-scale, multi-specimen/multi-organism sequencing affordable, even for small labs.  This trend has also vastly increased the volume and diversity of public genome and transcriptome data, creating tempting opportunities for evolutionary and comparative analysis.  GMOD provides important tools for working with this data: [[GBrowse]] and [[JBrowse]] for visualization, [[Chado]] for storage, indexing, and as a backend for analyses, [[MAKER]] for high-throughput standardized annotation, and [[Galaxy]] as a comparative genomics workbench.
+
== Background ==
  
Second, GMOD's existing user base is increasingly pursuing research in areas such as phenotypes and population biology. Evolutionary biologists have a great deal of experience working with these types of data. Making GMOD more useful to evolutionary researchers and bringing those researchers into the GMOD community will also benefit GMOD's traditional user base, which is just starting to use these data types.
+
The GMOD project is a confederation of intercompatible open-source projects developing software tools for storing, managing, curating, and publishing biological data. Although the GMOD project originated from the goal of developing a generic tool set for common needs among model organism databases, GMOD tools are meanwhile used by many large and small, collaborative and single-investigator biological database projects for the dissemination of results of experimental research and curated knowledge.
  
This hackathon is way to bring these communities together so that GMOD tools can be enhanced to:
+
GMOD's software tools provide a powerful and feature-rich basis for working with biological, in particular genomic and other molecular data. However, due to GMOD's historical emphasis on single-genome projects many GMOD tools still lack features that are critical to effectively support the comparative, phylogenetic, and natural diversity-oriented questions frequently asked in evolutionary research.  
# better serve the needs of evolutionary biologists for data types GMOD already handles well, and
+
# better support data types that evolutionary biologists have a longstanding interest in, but that are new to GMOD.
+
  
We are seeking NESCent's support and hosting for this event. NESCent has a commitment to facilitating data sharing in evolutionary research and GMOD is a way to achieve that goalGMOD is a widely adopted set of tools that facilitate data integration and sharing through common formats and interfaces.  Making GMOD more useful to evolutionary biologists would help the evolutionary community better share their data.
+
Recent developments have given rise to a window of opportunity for forging collaborations towards filling this gap. In particular, the cost of collecting comparative molecular data on a large or even genomic scale has recently dropped dramatically, primarily thanks to next-generation high-throughput sequencing technologies. This has enabled evolutionary researchers to bring genome-scale molecular data to bear on key evolutionary questions. It has also allowed single organism-focused molecular biology labs, who represent GMOD's traditional user base, to broaden out to multi-organism comparative approachesBringing these two communities with increasingly shared interests and complementary scientific and technical expertise together offers an opportunity to start filling GMOD's gaps in these areas while building on its existing strengths. In addition, such direct interaction will heighten future awareness of needs of evolutionary researchers among GMOD developers who have so far mostly supported its traditional user base, and can in the long term increase the ranks of GMOD contributors from a field it was not originally designed to serve.  
  
NESCent is also an excellent place to hold a hackathonNESCent has significant experience hosting hackathonsHolding the event at NESCent would allow us take advantage of that experience.
+
The hackathon meeting format is ideally suited to realize this opportunityIts strengths lie in facilitating face-to-face interaction among people with complementary expertise, and collaborative work on tangible products that can form the basis of continued partnerships long beyond the end of the meetingThis meeting format, and the overall goals of the event are closely aligned with NESCent's objectives in promoting collaborative work, data sharing and interoperability. NESCent's past experience in  organizing successful hackathons, and its position as a neutral intellectual hub within the evolutionary biology make it an ideal location for holding the event.
  
 
== Specific objectives ==
 
== Specific objectives ==
  
Organizers have identified the following broad themes and specific objectives for guiding work at the event.  This is based on our own experience, interactions with others in the GMOD and evolutionary biology communities, and insights gained by the recent [http://www.nescent.org/cal/calendar_detail.php?id=530 ''Tools for Emerging Model Systems'' working group (EMS WG)] at NESCent.  This group consisted of evolutionary biologists working on non-model organisms and struggling with how best to exploit their data and connect their communities.
+
Organizers have identified the following broad themes for focusing work at the event.  These are based on the organizers' experience, interactions with others in the GMOD and evolution communities, and insights gained by the recent [http://www.nescent.org/cal/calendar_detail.php?id=530 ''Tools for Emerging Model Systems'' working group (EMS WG)] at NESCent.
  
During the hackathon, participants will refine and distill these and other options into concrete implementation objectives(Additional ideas and discussion topics can be found on our [[GMOD_Evo_Hackathon_Proposal_Supplemental_Information | Supplemental Information ]] page.)  Organizers will focus participants on tasks for which we have a very clear idea of the objective, available data to test the problem, and ones that we can be completed or significant progress can be made during the hackathon itself.
+
Before and at the hackathon, the participants will refine and distill these and other options into concrete implementation targetsThe participants will develop criteria for priotization, such as maturity of a target for implementation, availability of test data, and potential for completing or making significant progress the target during the hackathon. Further ideas and discussion topics can be found on the [[GMOD_Evo_Hackathon_Proposal_Supplemental_Information | Supplemental Information ]] page.
  
=== Viewing tools for Comparative genomics data ===
+
=== Viewing tools for comparative genomics data ===
[[GBrowse_syn]] is the GMOD component for viewing comparative genomics data, particularly for viewing synteny between genomes.  GBrowse_syn is a popular component, tying with JBrowse in popularity (33%) in the user survey.  While very useful, it does not currently support the Next Generation Sequencing (NGS) data increasingly available for comparative genomics.  Because GBrowse_syn is under-engineered for the current community need, and has a very small developer base, this is an ideal component to work on during the Hackathon.  Additionally, because the EMS working group identified 'working with NGS data' as their number one concern, this objective is a high priority.  Working on improving the GBrowse_syn component at the Hackathon would facilitate the recruitment of new developers, as well as catalyze new feature development.  We expect the improved analysis and storage tools resulting from this work to make cross-species comparative analysis of large-scale datasets much more accessible.
+
  
==== Compatibility with SAM data ====
+
[[GBrowse_syn]] is a popular GMOD component for viewing comparative genomics data, particularly for viewing synteny between genomesIt does not currently support the next-generation sequencing (NGS) data increasingly available for comparative genomics and emerging model systems. Support for NGS data was identified by the EMS working group as a high priority.
[http://samtools.sourceforge.net/ Sequence Alignment Format (SAM)] has become the de facto standard format for high throughput sequencing data.  While GBrowse 2.0 can support SAM data, GBrowse_syn does not.  Because GBrowse_syn currently runs on the GBrowse 1.x platform., it needs to be upgraded to the GBrowse 2.x platform before it can support SAM data.  We may want to also extend basic SAM functionality to show per-base information.
+
  
==== Database backend scalability ====
+
In particular, GBrowse_syn lacks support for the [http://samtools.sourceforge.net/ Sequence Alignment Format (SAM)], its mechanism of storing genome comparisons does not scale beyond a few organisms, and the means for tracking the necessary alignment metadata in Chado are insufficient.
Currently, each pairwise comparison between organisms is stored in a separate database to drive GBrowse_syn.  This quickly becomes unwieldy for large numbers of genomesA hackathon objective could be to address this scalability issue.
+
  
==== Tracking of alignment metadata ====
+
In addition to filling those gaps, GBrowse_syn would also particularly stand to benefit from the event by gaining a more sustainable developer base.  
In order to properly display syntenic views, particularly for NGS data, the source and target genome build information must be readily available for the genomes that have been aligned.  There is currently limited ability for this information to be extracted from SAM alignment files and stored in Chado.  Therefore, we intend to extend Chado to properly store experimental and alignment metadata, vital for comparative analysis.
+
  
=== Phylogenetics Visualization ===
+
=== Visualization of phylogenetic data and trees ===
==== A multiple sequence alignment viewer for GMOD ====
+
GMOD doesn't have presently have web-based alignment viewers in its toolkit.  However, [http://solgenomics.net SGN] has a relatively mature [http://solgenomics.net/tools/align_viewer/ web-based multiple alignment and tree browser].  The tool currently is SGN-specific, and supports only FASTA and clustal alignment formats.  An objective for the hackathon would be to extract this viewer from SGN's codebase to make it an independently installable component, and to add support for viewing SAM and BAM alignment formats.  Adding a multiple alignment viewer to the GMOD suite of tools would give a significant boost to GMOD's comparative toolset.
+
  
==== Evolutionary visualization in JBrowse ====
+
The GMOD toolkit at present does not include web-based alignment viewers, nor can the increasingly popular [[JBrowse]] genome browser (the designated successor of [[GBrowse]]) display multiple sequence alignments. GMOD also lacks a phylogenetic tree widget.
  
The rising popularity and functionality of [[JBrowse]] makes this software a good platform to develop and/or integrate multiple alignment viewing. Its current genome browser functionality should naturally extend to viewing multiple sequence alignment both at close and distant zoom levels.  One possible outcome of the meeting could be to fold in some of the SGN codebase into the JBrowse toolAdditionally, visualization of phylogenies while viewing alignments is a necessary improvement.
+
Implementing these from scratch would be far beyond a suitable hackathon target. However, [http://solgenomics.net SGN] has a relatively mature [http://solgenomics.net/tools/align_viewer/ web-based multiple alignment and tree browser] that could be extracted from SGN's codebase and transformed into a GMOD component, an add-on for JBrowse.  Current Java-based tree viewers (such as [http://www.phylosoft.org/atv/ Archaeopteryx] or [http://www.phylowidget.org PhyloWidget]) could be used as the basis for a JavaScript-based tree viewer (or an applet that can be controlled through JavaScript) that integrates with JBrowse.
  
Specific project ideas:
+
=== Population Diversity and Phenotype support ===
  
1. The key priority for AJAXifying phyloinformatics is a good tree widget implemented in Javascript, presumably all with right angles, using rectangular DIVs for branches and nodes. Click node to hide/show/rotate subtrees.  Not quite [http://www.phylosoft.org/atv/ Archaeopteryx Tree Viewer], but basic functionality is there. Maybe some more interesting behavior such as squishing subtrees (scaling them down rather than hiding completely).
+
GMOD's capabilities in managing phenotype and natural diversity data is scattered across partially redundant and outdated modules, does not support modern ontology-based entity-quality data, and lacks a web-interface. The sophisticated phenotype annotation tools that do exist cannot interface with Chado, GMOD's central relational data model. Yet, phenotypic and genetic diversity data are central to many evolutionary research questions.
  
2. This approach sadly cannot be extended to circular trees, very popular e.g. with the virus researchers. Least common denominator Javascript is stuck with right angles for the time being. If this constraint can be dispensed with (e.g. by assuming everyone is running a post-2008 browser) then circular trees are back on the table. But I (Ian) would personally not touch this - I like pages that work everywhere.
+
A [[Chado Natural Diversity Module Working Group| Natural Diversity Module initiative]  to address at least the deficiencies within Chado has already formed earlier this year. Several key developers (one of the original developers of the module, the developer of {{GDPDMLink|GDPDM}}, the basis of its design, and the developer of Phenex, a phenotype curation tool) are already local to NESCent, and so the hackathon provides a unique opportunity to review and refine the natural diversity data model face-to-face, and to integrate it the with an updated and reconciled phenotype module.  A recently reported prototype of a Chado data adapter for Phenote, GMODs phenotype annotation tool, could be generalized to become the data persistence interface for such data.
  
3. High-grade alignment tracks with operations such as row re-ordering via JBrowse drag-and-drop track ordering mechanism. The current alignment tracks are nearly complete and online at [http://omgbrowse.org/fresherbrowse/ omgbrowse.org], and we also have a nice new [http://github.com/ihh/jbrowse/blob/gdtrack/bin/draw-basepair-track.pl#L100 API for rendering image tracks] with one example (RNA secondary structure). This is a small but developer-friendly base on which we need to build more sophisticated glyphs and tracks.
+
Aside from the data model deficiencies, the [http://aniseed-ibdm.univ-mrs.fr/ ANISEED] project has started efforts to generalize its sophisticated atlas/image-based web interface for phenotype data, and to make it operate on top of Chado. The hackathon could harness this synergy to help this effort leap forward, which could ultimately provide GMOD with the currently missing web-interface for such data.
  
4. As preparation for JBrowse-syn, a goal is to be able to have two parallel JBrowse instances running side by side and talking to each other, e.g. A can tell B what region A's looking at, and suggest a homologous region that B should look at. Some messaging infrastructure exists; we need code to register listeners and keep them informed.
+
== Hackathon Procedures ==
  
My inclination would just be for everyone to pile on the tree widget...
+
Participants will split into subgroups at the event. The composition and tasks of the subgroups will be guided by the overall objectives, but will otherwise emerge and be self-determined by the participants both prior to and at the event.
  
 +
After the hackathon organizers and GMOD staff will followup with participants to help with seeing unfinished tasks through to completion, similar as has been done in GMOD following the [[Meetings|GMOD Meetings]].
  
=== Population Diversity and Phenotype support ===
+
A hackathon is a working meeting and concentrates on writing code. All code and documentation will be made available immediately and freely to the community under an [http://www.opensource.org/licenses/alphabetical OSI-approved] open source license.
  
==== Population diversity  in Chado ====
+
=== Participant Invitation and Selection ===
Phenotypic diversity data is very useful for evolutionary studies. In-depth analysis of this data requires proper representation, handling, and storage: specific phenotypes, environmental conditions, population details, and other experimental metadata all must be tracked, and more importantly cross-referenced with known genomic and genetic information. One of the best conceptual tools for representing this type of information in machine-readable form is ontologies, and GMOD's open-source Chado database schema is the most mature, flexible, and feature-rich storage engine for storing ontology-based data. However, it lacks specific support for evolutionary phenotype data or natural diversity data. Earlier this year, a [[Chado Natural Diversity Module Working Group|working group]] was formed to work on the design of a new Natural Diversity module for Chado, based initially on the design of the {{GDPDMLink|GDPDM}}.  One of the objectives for this hackathon will be to finalize and integrate the group's work into the larger Chado schema, and to make sure it integrates well with the existing or new Phenotype module (below).
+
  
==== Evolutionary phenotype data in Chado ====
+
Participation will be arranged by invitation and by self-nomination followed by review. If you are interested in participating, please contact one of the organizersWe expect to support about 20 participants, about half of whom will be invited and half will be self-nominated attendees.
Support for phenotype data in Chado needs to be rationalized, as it currently supports two distinct models (an older prototype, a more robust followup) that use overlapping sets of tables. Ideally, we will settle on one set of well defined tables to facilitate future work, as well as come up with migration plans for those using the old modelIncluded in this would be the ability to support both EAV (Entity-Attribute-Value, used in the "old" schema) and EQ (Entity-Quality), both of which can leverage PATO and other ontologies for phenotype term specificity.  In particular, we will want to make sure that the Phenotype module is congruent with the Natural Diversity module (above), so that proper links are made between the recorded phenotypes, and the environments in which they are observed.
+
  
==== Connecting Annotation tools to Chado ====
+
The objective for direct invitations is to ensure that critical developers for each of the three themes are present.  
Phenote and Phenex are two related annotation tools for capturing ontology-based phenotype descriptions.  However, neither of these tools, connect with Chado. At least one current GMOD user has written data adapters to take the Phenote generated annotation and load/retrieve it into/from Chado.  Together with an improved and standardized phenotype module in Chado, these tools would help unify the ability to capture, store, and access phenotype data.  This may be a suitable foundation for a general purpose program for doing this data transfer.
+
  
Together, these objectives are particularly suited for a NESCent-supported hackathon.  Phenote currently has limited financial support, and Phenex is outside of GMOD.  Also, due to NESCent's involvement in the Phenoscape project, which records phenotype data with ontologies, we will have many of the users and developers at our disposalAnd, since many of the users and developers work at different institutions, working face-to-face at the hackathon is an advantage over the struggle of communicating through mailing lists.
+
People interested in participating will be solicited to self-nominate through a variety of channels, including GMOD mailing lists, the [http://www.gmod.org GMOD web site], and [http://life.biology.mcmaster.ca/~brian/evoldir.html EvolDir]In addition, the organizers will announce Calls for Participation at conferences they attend, such as [http://www.k-state.edu/agc/symp2010 Arthropod Genomics], [http://www.evolutionsociety.org/SSE2010/ Evolution], [http://ievobio.org/ iEvoBio], [http://www.open-bio.org/wiki/BOSC_2010 BOSC], and [http://www.iscb.org/ismb2010 ISMB]. Additional targets may be identified by [http://www.nescent.org/eog/AboutEOG.php NESCent's Education and Outreach group].
  
==== Web Interfaces to Evolutionary Data in Chado ====
+
The organizing committee will select participants from the applicant pool to create a group with balanced, complementary, and diverse sets of expertise, background, and interests, using a number of criteria:
 
+
* Experience in bioinformatics programming in general and GMOD in particular;
The ANISEED project has an atlas/image-based web interface for phenotype, gene expression, and cell fate data.  They are currently developing version 3 of this interface, called NISEED, that will be based on Chado for the first time.  NISEED adds web-based query and curation interfaces to Chado.  The ANISEED team is new to the GMOD community and having an ANISEED representative would both add knowledge of these dataypes to the mix, and help ANISEED integrate with the larger goals of GMOD.
+
* Experience with and understanding of evolutionary data types;
 
+
* Potential to uniquely benefit from the event;
== Hackathon Procedures ==
+
* Complementarity of expertise and background;
 
+
* Achieving critical mass for each of the themes; and
Participants will split into subgroups at the event. The composition and tasks of the subgroups will be guided by the overall objectives, but will otherwise emerge and be self-determined by the participants both prior to and at the event.
+
* Availability during the event.
 
+
After the hackathon organizers and GMOD staff will followup with participants to get tasks done through to completion.  Such followup is standard practice in GMOD and we have been doing it consistently following [[Meetings|GMOD Meetings]] since 2008.
+
 
+
The hackathon concentrates on writing code. All code and documentation will be made available immediately and freely to the community under an [http://www.opensource.org/licenses/alphabetical OSI-approved] open source license.
+
  
 
== Organizers ==
 
== Organizers ==
Line 102: Line 89:
 
: Hilmar is the Assistant Director of Informatics at [http://www.nescent.org NESCent], where he is responsible for implementing NESCent's goal of enabling data interoperability in evolutionary biology.  He is also a veteran of many hackathons at NESCent and elsewhere.
 
: Hilmar is the Assistant Director of Informatics at [http://www.nescent.org NESCent], where he is responsible for implementing NESCent's goal of enabling data interoperability in evolutionary biology.  He is also a veteran of many hackathons at NESCent and elsewhere.
  
== Participant Invitation and Selection ==
+
[[Category:GMOD Evo Hackathon]]
Participation will be arranged by invitation and by self-nomination followed by review. If you are interested in participating, please contact one of the organizers.  We are asking for support for ~20 participants, including the organizing committee, with a 50/50 split between invited and self-nominated attendees.
+
[[Category:Meetings]]
 
+
=== Invited Participants ===
+
For each of the objectives above, the organizing committee has nominated 2-4 people who are experts in their respective areas to guide the hackathon in that area.  While assigned to a particular objective, these key persons often have cross-cutting expertise and will be able to influence and contribute to multiple objectives.  We believe they will make a significant contribution to the hackathon.  A preliminary list is included in this proposal.  We propose ~10 persons with a 70/30 split between GMOD and evolutionary community members, respectively.
+
 
+
=== Selected self-nominated Participants ===
+
We expect the rest of the attendees (~10 participants) to be self-nominated, with an emphasis on those from the evolutionary community.  Nominations will be solicited on GMOD mailing lists, the [http://www.gmod.org GMOD web site], and prominent evolutionary biology mailing lists such as [http://life.biology.mcmaster.ca/~brian/evoldir.html EvolDir].  Organizers will also work with [http://www.nescent.org/eog/AboutEOG.php NESCent's Education and Outreach group] to identify appropriate resources to send out announcements.  People will be encouraged to self-nominate, as well as to nominate others.  Depending on the timing of the hackathon, members of the organizing committee and key GMOD community members will solicit nominations at conferences they attend such as [http://www.k-state.edu/agc/symp2010 Arthropod Genomics], [http://www.evolutionsociety.org/SSE2010/ Evolution], [http://ievobio.org/ iEvoBio], [http://www.open-bio.org/wiki/BOSC_2010 BOSC], and [http://www.iscb.org/ismb2010 ISMB].  We will also work with NESCent's Education and Outreach group to advertise the hackathon as a part of their activities.
+
 
+
==== Selection Criteria ====
+
Participants will be selected from the applicant pool by the organizing committee based on a number of criteria:
+
; Experience in bioinformatics programming
+
: The goal of the hackathon is to produce working code.  Participants do not need to have a degree in computer science, but they must know how to program.
+
; Experience with and understanding of evolutionary data types
+
: Participants must also have some understanding of the domain the hackathon is working in.  Participants do not need to have a degree in evolutionary biology, but they must have at least a basic understanding of current issues in evolutionary biology.
+
; Access to evolutionary data
+
: Applicants that have access to evolutionary datasets will be favored over those who do not.  Having data in hand reveals concrete problems that can be addressed in the context of a week-long hackathon.
+
; Knowledge of GMOD
+
: Applicants with GMOD experience will be favored over those who do not.
+
 
+
The first two criteria are required for participants.  The remaining criteria will be used to build a balanced, complementary, and diverse set of applicants.
+
 
+
==== Diversity ====
+
Organizers will strive to include participants from a broad swath of the tree of life, that are working in many different areas of evolutionary biology.  We will also strive to nominate and include participants from historically under-represented groups in computational and evolutionary biology.
+
  
 
[[Category:GMOD Evo Hackathon]]
 
[[Category:GMOD Evo Hackathon]]
 
[[Category:Meetings]]
 
[[Category:Meetings]]

Revision as of 18:53, 30 May 2010

NESCent Hackathon on GMOD Tools for Evolutionary Biology

__NOTITLE__

The GMOD Evo Hackathon aims to bring together key developers of GMOD components with developers from the evolutionary biology community to fill critical gaps in GMOD for evolutionary research.

Synopsis

We propose a hackathon to fill critical gaps in the capabilities of the Generic Model Organism Database (GMOD) toolbox that currently limit its utility for evolutionary research. Specifically, we aim to focus on tools for 1) viewing comparative genomics data; 2) visualizing phylogenomic data; and 3) supporting population diversity data and phenotype annotation.

The event would be hosted at NESCent and bring together a group of about 20 software developers, end-user representatives, and documentation experts who would otherwise not meet. The participants would include key developers of GMOD components that currently lack features critical for emerging evolutionary biology research, developers of informatics tools in evolutionary research that lack GMOD integration, and informatics-savvy biologists who can represent end-user requirements.

The event would hence provide a unique opportunity to infuse the community of GMOD developers with a heightened awareness of unmet needs in evolutionary biology that GMOD components have the potential to fill, and for tool developers in evolutionary biology to better understand how best to extend or integrate with already existing GMOD components.

Background

The GMOD project is a confederation of intercompatible open-source projects developing software tools for storing, managing, curating, and publishing biological data. Although the GMOD project originated from the goal of developing a generic tool set for common needs among model organism databases, GMOD tools are meanwhile used by many large and small, collaborative and single-investigator biological database projects for the dissemination of results of experimental research and curated knowledge.

GMOD's software tools provide a powerful and feature-rich basis for working with biological, in particular genomic and other molecular data. However, due to GMOD's historical emphasis on single-genome projects many GMOD tools still lack features that are critical to effectively support the comparative, phylogenetic, and natural diversity-oriented questions frequently asked in evolutionary research.

Recent developments have given rise to a window of opportunity for forging collaborations towards filling this gap. In particular, the cost of collecting comparative molecular data on a large or even genomic scale has recently dropped dramatically, primarily thanks to next-generation high-throughput sequencing technologies. This has enabled evolutionary researchers to bring genome-scale molecular data to bear on key evolutionary questions. It has also allowed single organism-focused molecular biology labs, who represent GMOD's traditional user base, to broaden out to multi-organism comparative approaches. Bringing these two communities with increasingly shared interests and complementary scientific and technical expertise together offers an opportunity to start filling GMOD's gaps in these areas while building on its existing strengths. In addition, such direct interaction will heighten future awareness of needs of evolutionary researchers among GMOD developers who have so far mostly supported its traditional user base, and can in the long term increase the ranks of GMOD contributors from a field it was not originally designed to serve.

The hackathon meeting format is ideally suited to realize this opportunity. Its strengths lie in facilitating face-to-face interaction among people with complementary expertise, and collaborative work on tangible products that can form the basis of continued partnerships long beyond the end of the meeting. This meeting format, and the overall goals of the event are closely aligned with NESCent's objectives in promoting collaborative work, data sharing and interoperability. NESCent's past experience in organizing successful hackathons, and its position as a neutral intellectual hub within the evolutionary biology make it an ideal location for holding the event.

Specific objectives

Organizers have identified the following broad themes for focusing work at the event. These are based on the organizers' experience, interactions with others in the GMOD and evolution communities, and insights gained by the recent Tools for Emerging Model Systems working group (EMS WG) at NESCent.

Before and at the hackathon, the participants will refine and distill these and other options into concrete implementation targets. The participants will develop criteria for priotization, such as maturity of a target for implementation, availability of test data, and potential for completing or making significant progress the target during the hackathon. Further ideas and discussion topics can be found on the Supplemental Information page.

Viewing tools for comparative genomics data

GBrowse_syn is a popular GMOD component for viewing comparative genomics data, particularly for viewing synteny between genomes. It does not currently support the next-generation sequencing (NGS) data increasingly available for comparative genomics and emerging model systems. Support for NGS data was identified by the EMS working group as a high priority.

In particular, GBrowse_syn lacks support for the Sequence Alignment Format (SAM), its mechanism of storing genome comparisons does not scale beyond a few organisms, and the means for tracking the necessary alignment metadata in Chado are insufficient.

In addition to filling those gaps, GBrowse_syn would also particularly stand to benefit from the event by gaining a more sustainable developer base.

Visualization of phylogenetic data and trees

The GMOD toolkit at present does not include web-based alignment viewers, nor can the increasingly popular JBrowse genome browser (the designated successor of GBrowse) display multiple sequence alignments. GMOD also lacks a phylogenetic tree widget.

Implementing these from scratch would be far beyond a suitable hackathon target. However, SGN has a relatively mature web-based multiple alignment and tree browser that could be extracted from SGN's codebase and transformed into a GMOD component, an add-on for JBrowse. Current Java-based tree viewers (such as Archaeopteryx or PhyloWidget) could be used as the basis for a JavaScript-based tree viewer (or an applet that can be controlled through JavaScript) that integrates with JBrowse.

Population Diversity and Phenotype support

GMOD's capabilities in managing phenotype and natural diversity data is scattered across partially redundant and outdated modules, does not support modern ontology-based entity-quality data, and lacks a web-interface. The sophisticated phenotype annotation tools that do exist cannot interface with Chado, GMOD's central relational data model. Yet, phenotypic and genetic diversity data are central to many evolutionary research questions.

A [[Chado Natural Diversity Module Working Group| Natural Diversity Module initiative] to address at least the deficiencies within Chado has already formed earlier this year. Several key developers (one of the original developers of the module, the developer of GDPDM, the basis of its design, and the developer of Phenex, a phenotype curation tool) are already local to NESCent, and so the hackathon provides a unique opportunity to review and refine the natural diversity data model face-to-face, and to integrate it the with an updated and reconciled phenotype module. A recently reported prototype of a Chado data adapter for Phenote, GMODs phenotype annotation tool, could be generalized to become the data persistence interface for such data.

Aside from the data model deficiencies, the ANISEED project has started efforts to generalize its sophisticated atlas/image-based web interface for phenotype data, and to make it operate on top of Chado. The hackathon could harness this synergy to help this effort leap forward, which could ultimately provide GMOD with the currently missing web-interface for such data.

Hackathon Procedures

Participants will split into subgroups at the event. The composition and tasks of the subgroups will be guided by the overall objectives, but will otherwise emerge and be self-determined by the participants both prior to and at the event.

After the hackathon organizers and GMOD staff will followup with participants to help with seeing unfinished tasks through to completion, similar as has been done in GMOD following the GMOD Meetings.

A hackathon is a working meeting and concentrates on writing code. All code and documentation will be made available immediately and freely to the community under an OSI-approved open source license.

Participant Invitation and Selection

Participation will be arranged by invitation and by self-nomination followed by review. If you are interested in participating, please contact one of the organizers. We expect to support about 20 participants, about half of whom will be invited and half will be self-nominated attendees.

The objective for direct invitations is to ensure that critical developers for each of the three themes are present.

People interested in participating will be solicited to self-nominate through a variety of channels, including GMOD mailing lists, the GMOD web site, and EvolDir. In addition, the organizers will announce Calls for Participation at conferences they attend, such as Arthropod Genomics, Evolution, iEvoBio, BOSC, and ISMB. Additional targets may be identified by NESCent's Education and Outreach group.

The organizing committee will select participants from the applicant pool to create a group with balanced, complementary, and diverse sets of expertise, background, and interests, using a number of criteria:

  • Experience in bioinformatics programming in general and GMOD in particular;
  • Experience with and understanding of evolutionary data types;
  • Potential to uniquely benefit from the event;
  • Complementarity of expertise and background;
  • Achieving critical mass for each of the themes; and
  • Availability during the event.

Organizers

Nicole Washington, Chair
Nicole is currently the Lead Data Manager for the Data Collection Center the modENCODE project at the Lawrence Berkeley National Lab. She also has experience curating phenotype data with ontologies and was one of the developers of Phenote, an ontology-based phenotype annotation tool.
Sheldon McKay
Sheldon (University of Arizona) is the Scientific Lead for the The iPlant collaborative's iPlant tree of life project (iPToL) engagement team. Sheldon is also the lead developer for GBrowse_syn, GMOD's most widely used comparative genomics viewer. Sheldon was a participant in the Evolutionary Database Interoperability Hackathon at NESCent in March 2009 and was a co-organizer and participant in the NESCent Phyloinformatics VoCamp November 2009.
Robert Buels
Rob is the engineering team lead at the Sol Genomics Network (SGN), a clade-oriented database dedicated to the biology of the Solanaceae family which includes a large number of closely related and many agronomically important species such as tomato, potato, tobacco, eggplant, pepper, and the ornamental Petunia hybrida. Rob's (and SGN's) interests include plant adaptation and diversification, and linking the phenome to the genome.
Scott Cain
Scott is the GMOD Program Coordinator. Scott has organized a previous GMOD hackathon held at the University of Chicago in 2007.
Hilmar Lapp
Hilmar is the Assistant Director of Informatics at NESCent, where he is responsible for implementing NESCent's goal of enabling data interoperability in evolutionary biology. He is also a veteran of many hackathons at NESCent and elsewhere.