Difference between revisions of "Tracks/Software"

(Updated page to include 2015 rules. Still in need of medal criteria and example priojects)
Line 20: Line 20:
  
  
<p>
 
Computational work and software development are a very important part of Synthetic Biology. The iGEM competition again has a track for teams that want to focus on exactly that.
 
</p><p>
 
This year, we want to create a yet closer link to the wet lab side of iGEM. We therefore encourage software/computational teams to validate their tools and algorithms with some experiments. These experiments can be "outsourced", that is, performed in some other lab or by a collaborating iGEM team. We are working on supporting software teams to find partner labs -- stay tuned! Moreover, if you have a large ambitious project that includes both a lot of computational and a lot of wet lab work, think about registering two teams -- students can be members of both the computational and the wet lab team at the same time. This gives more exposure to the hard computational work which will be judged by experts (and you can win one more price!).
 
</p><p>
 
Software projects will also be judged by the quality of documentation (both for users and for other developers), by how much they embrace best practices (e.g. modern tools, testing, agile development) and by how well they make use of previous iGEM teams' work and how well they enable other teams to pick up from where they will leave. Many software projects from previous years have resulted in long-term efforts and have even led to several start-up companies. We would love to see that happen again this year.
 
</p>
 
  
<h2><a class="anchor" id="Track Details"></a>Information about the track</h2>
 
  
<p>
 
The iGEM software track started in 2008. Since 2012, there is a centralized repository for iGEM software projects on GitHub. Please, use git right from the start of your project -- knowing the history of your commits is very helpful for other developers who want to build on your hard work. This will not only preserve the projects but also help others to avoid re-inventing the wheel.
 
</p><p>
 
iGEM software developers often work closely with experimental synthetic biologists to improve design, assembly and testing of biological circuits, make bio engineering more predictive or help discovering and exchanging information about standard biological parts. Of course we are open to all kind of cool projects but please make sure that they are relevant to real-world Synthetic Biology. For some things, there is no need to start from scratch. Over the years, the Synthetic Biology community has already created many interesting libraries, design frameworks, and software tools. Please use, abuse and improve them wherever possible. There is also a nascent standard for synthetic biology data exchange (SBOL) which you should probably have a look at.
 
</p>
 
  
<h3>Team Projects from previous years</h3>
 
<h4>UT Tokyo 2012</h3>
 
<p>
 
In 2012, the UT Tokyo team created an innovative BioBrick search page. Their project was web accessible and allowed users to search the Registry for parts using many different keywords, approaches, years and other parameters. They also created a rating system for parts based on the number of uses.
 
</p>
 
<a href="https://2012.igem.org/Team:UT-Tokyo-Software"><img src="https://static.igem.org/mediawiki/2014/e/e7/BioBrick_Search-UT_Tokyo2012.jpg" width = "700px"></a>
 
  
<h4>SYSU-Software 2013</h3>
+
<p>If you are going to design a new life form, chances are you’ll need a computer to design the smallest genetic circuits and deal with genome-scale complexity. </p>
 +
<p>Software development is a valuable skill set for any synthetic biology team to have. In previous iGEM competitions, software has often been built by wetlab teams to solve specific problems. Recognising the utility of these software tools, and the importance of software development skills, the software track has been set up for computer scientists and developers to nurture their knowledge of biology, and for computational biologists, bioinformaticians and biologists to enhance their aptitude for building software.</p>
 +
<p>Whether you are a wet lab team that has decided to build a software tool, or a software group looking to get involved in iGEM, we encourage you compete in the dedicated software track 2015. </p>
 
<p>
 
<p>
SYSU-Software created a program called CAST (Computer Aided Synbio Tool), to address specific technical challenges in synthetic biology. Their software can automatically perform regulatory network and gene circuits design, modeling, vector design and actually build the proposed circuit. All designs can be stored in a database to be shared through CAST. In addition, they incorporated wetlab experimentation into the project to validate their new simulation model.
 
</p>
 
 
<p>
 
<p>
SYSU-Software won the Best Software Project Award in 2013.
+
<h2><u><a class="anchor" id="Track Details"></a>Information about the track</u></h2>
</p>
+
<h4><u>Work Together & Solve Challenges in SynBio Software</u></h4>
  
<a href="https://2013.igem.org/Team:SYSU-Software"><img src="https://static.igem.org/mediawiki/2014/7/71/SYSU-2013.png" width = "500px"></a>
+
<p>Wetlab teams have lots of problems. Software teams can provide solutions. This year, iGEM is encouraging software and wet lab teams to work together and assist each other. If you need software for your wetlab project, or are a software team looking for a problem reach out to each other, by using the iGEM Reddit, contacting other teams on Twitter, or encouraging computer science departments to start teams.</p>  
  
<h2><a class="anchor" id="Resources"></a>iGEM Software Resources</h2>
 
<ul>
 
  
<li><a href="http://igem.synbioreview.com/"> iGEMsoft: an iGEM software project aggregator</a></li>
+
<h4><u>Two Teams are Better than One</u></h4>
  
<li><a href="https://github.com/igemsoftware"> iGEM software on GitHub</a></li>
+
If you have a large ambitious wet lab project that includes a lot of computational work, think about registering two teams -- students can be members of both the computational and the wet lab team at the same time. This gives more exposure to the hard computational work which will be judged by experts (and you can win one more prize!).
  
<li><a href="http://www.sbolstandard.org/"> Synthetic Biology Open Language (SBOL) </a></li>
 
  
<li><a href="http://parts.igem.org/Registry_API?title=Registry_API"> iGEM Parts Registry API</a></li>
+
<h4><u>Learn to be a Professional Biocoder</u></h4>
 +
iGEM encourages software teams to learn the best practices of professional software developers. As software development is about solving problems in way that is useful for the users and for other developers, students, the software track focuses on teaching students the importance of:
  
</ul>
+
<li>Quality of codebase documentation</li>
<h2><a class="anchor" id="Requirements"></a>Requirements</h2>
+
<li>Automated testing practices</li>
 +
<li>Version control (Git & Github)</li>
 +
<li>Professional software development practices (Agile, Scrum etc)</li>
 +
<li>Making use of previous iGEM teams’ work</li>
 +
<li>Documenting code to enable other teams to pick up from where they will leave</li>
 +
<li>Conducting user experience testing</li>
  
 +
<h4><u>Tools that Stand the Test of Time</u></h4>
 +
<p>Many tools built by iGEM teams have been of professional-level quality, and others have shown great potential to be improved upon by future teams. Software projects from previous years have resulted in long-term efforts and have even led to several start-up companies. iGEM would love to see that happen again this year.</p>
 +
 +
<p>Since 2012 there has been a centralised repository for software projects on Github. iGEM is currently exploring ways to host the work products and codebases of the 2015 competition for synthetic biologists and developers to access and improve in the future. Stay tuned for updates.</p>
 +
<p>
 
<p>
 
<p>
Software teams are not be required to contribute parts to the Registry (but instead are expected to contribute to the GitHub software repository). Key requirements for software teams are:
+
<h2><u>Picking a Project</u></h2>
</p>
+
<p>iGEM software developers should work closely with experimental synthetic biologists and iGEM teams to build tools that are genuinely useful to the synthetic biology and iGEM communities. Software tools could directly help synthetic biologists in the lab, at their desktops, or even in how they communicate with each other and access information. You may wish to build a tool that:</p>
  
<ul>
+
<li>Improves design, assembly and testing of biological circuits</li>
  <li>Wiki documentation must contain project aims, methods and success</li>
+
<li>Makes bioengineering more predictive </li>
  <li>Use git (from beginning of project)</li>
+
<li>Helps biologists discover parts and exchange information about them</li>
  <li>Submission of complete source code and any auxiliary files to GitHub</li>
+
<li>Improves parts registry navigation</li>
  <li>Basic code documentation for outside developers</li>
+
<li>Helps the iGEM community communicate with one another / identify problems</li>
  <li>Detailed installation or setup instructions for users (if applicable)
+
<li>Serve as a better biobrick database API</li>
  <li>for web servers: ensure another developer can easily set up an independent copy of your web server. Preferably provide a Docker container of your web server. A virtual machine snapshot or Vagrant configuration file and / or simple step by step installation instructions may be an alternative.</li>  
+
<li>Parses information from one form to another</li>
  <li>If your institution requires it, seek Institutional Review Board (IRB) approval before conducting software testing.</li>
+
</ul>
+
  
<h2><a class="anchor" id="Medal Criteria"></a>Medal Criteria</h2>
+
<p>The track is open to all sorts of projects but teams should make sure that they are not repeating work that has been done by the community already. If the team believes they can improve an existing software solution, they should ensure that their tool has significant performance or feature advantages over the existing one. </p>
  
 
<p>
 
<p>
<b>Bronze. </b>The following 4 goals must be achieved:<br>
+
<p>
<ol id="criterialist">
+
<h2><u>Requirements</u></h2>
<li>Register the team, have a great summer, and have fun attending the Jamboree in Boston.</li>
+
There is no constraint on languages, libraries or other software developments tools in the track, except that the use of Git/Github for version control is mandatory. Please, use git right from the start of your project -- knowing the history of your commits is very helpful for other developers who want to build on your hard work. This will not only preserve the projects but also help others to avoid re-inventing the wheel.
<li>Create and share a description of the team's project via the iGEM wiki.</li>
+
<p>
<li>Present a Poster and Talk at the Regional Jamboree and World Championship Jamboree.</li>
+
<p>
<li>Develop and make available, via <a href="https://github.com/igemsoftware">The iGEM Software Registry</a>, an open source software that supports Synthetic Biology based on Standard Parts. </li>
+
<h2><u>Medal Criteria</u></h2>
</li></ol>
+
 
</p>
+
Bronze
 +
 
 +
 
 +
  * Register for iGEM, have a great summer, and attend the Giant Jamboree
 +
 
 +
  * Complete the judging form
 +
 
 +
  * Create a Team wiki
 +
 
 +
  * Present a poster and a talk at the iGEM jamboree.
 +
 
 +
  * Create a page on your team wiki with a clear attribution of each aspect of your project. This page must clearly attribute work done by students and distinguish it from work done by others, including host labs, advisors, instructors, sponsors, professional website designers, artists and commercial services.
 +
 
 +
  * Develop and make available, via the iGEM GitHub page, an open source software that supports synthetic biology based on standard parts and interacts with the registry.
 +
 
 +
 
 +
 
 +
Silver
 +
 
 +
 
 +
  * Provide a comprehensive, well-designed user guide and upload it to your wiki - be creative, an instructional video may work as well.
 +
 
 +
  * Develop a well documented library or API for other developers, rather than “only” a stand-alone app for end users.
 +
 
 +
  * Demonstrate that you followed best practices in software development so that other developers can modify, use and reuse your code. Provide more than one realistic test case. Examples of best practices are automated unit testing, documentation of test coverage, bug tracking facilities, documentation of releases, and changes between releases.
 +
 
 +
 
 +
 
 +
Gold
 +
 
 +
 
 +
  * iGEM projects involve important questions beyond the bench, for example relating to (but not limited to) ethics, sustainability, social justice, security and intellectual property rights. Expand on your silver medal activity by demonstrating how you have integrated the investigated issues into the design and/or execution of your project OR demonstrate an innovative policy and practices activity that relates to your project (this typically involves educational, public engagement, and/or public perception activities; see the human practices hub for information and examples of previous teams comprehensive and innovative activities).
 +
 
 +
  * Address a problem that you would like to co-develop with a wetlab team. This should be a collaboration where the wetlab team posts a problem they are having and your team addresses the issue by creating an online software solution.
 +
 
 +
  * Re-use and further develop a previous iGEM software project (or parts thereof) and demonstrate how future teams can continue this thread.
 +
 
 +
  * Demonstrate your software at the iGEM Giant Jamboree in the software demo suite. You should show a functional prototype that teams can use in following years.
 +
 
 +
 
  
 
<p>
 
<p>
<b>Silver</b>: In addition to the Bronze Medal requirements, the following 4 goals must be achieved:<br>
+
<p>
<ol id="criterialist">
+
<h2><u>Team Projects from previous years</u></h2>
<li>Demonstrate the relevance of your development for Synthetic Biology based on standard Parts.</li>
+
Autogene was the co-winner of the 2012 software track (together with the project from the UK Tokyo team). The AutoPlasmid program is at the core of the project and allows users to automatically annotate a DNA sequence by matching it against a database of 40,000 known plasmid features. The project addressed a clear unmet need that was practical for the community and could be used by almost every experimental synthetic biologist.
<li>Provide a comprehensive and well-designed User Guide. (Be creative! An instructional video may work as well.)</li>
+
<p>
<li>Provide detailed API documentation, preferably, automatically built from source code documentation (use tools like doxygen, yard, rdoc, naturaldocs, etc). </li>
+
<p>
<li>Demonstrate that you followed best practises in software development so that other developers can modify, use and reuse your code. Provide more than one realistic test case. Examples of best practices are automated unit testing and documentation of <a href="http://martinfowler.com/bliki/TestCoverage.html"> test coverage </a>, bug tracking facilities, documentation of releases and changes between releases.</li>
+
<h2><u>Track Awards</u></h2>
</ol>
+
 
</p>
+
<p>iGEM ismoving to a nominations system for awards. That means the top 3 - 5 software teams will get recognition for their work. Think of the nominations as you would the academy awards. Being nominated amongst a very strong field of competitors is still recognition that you did a great job.</p>
 +
 
 +
<h4><u>Best Software Track Project</u></h4>
 +
<p>The best software track project, based on nominations and achieving Gold Medal Criteria, will receive the best Software Track Project award.
 +
 
 +
<h4><u>Best Software Tool for all teams in the competition.</u></h4>
 +
<p>iGEM projects often create or adapt computational tools to move the bigger project forward. Because they are born out of a direct practical need, these software tools (or new computational methods) can even prove surprisingly useful for others. Without necessarily being big or complex, they can make the crucial difference to a project's success. This award tries to find and honour such "nuggets" of computational work. To be eligible, your software has to be documented and made available under an OSI approved open source license.</p>
 +
 
 +
<h4><u>Special Prizes / Grand Prize</u></h4>
 +
The Software teams are eligible for all the special prizes on top of the software track prize, including best model, best poster, best wiki, best applied design, etc. Software teams can also win the entire iGEM competition,
  
 
<p>
 
<p>
<b>Gold</b>: In addition to the Bronze and Silver Medal requirements, two additional goals must be achieved: <br>
+
<p>
<ol id="criterialist">
+
<h2><u>iGEM Software Resources</u></h2>
<li>Provide a convincing validation, testing the performance of the development -- experimentally (can be outsourced) or by other teams and users. Note, even if the algorithm or tool turns out not to work that well, the Gold requirement is fulfilled if the test is good and the analysis convincing. Validation may include: preferably experiments, informatics analysis (complexity, run time) of an algorithm, or user studies.</li>
+
<p>The requirements for medals in the software track are in line with standards and expectations required of professional software development teams and are supposed to give teams a taste for building useful computational synbio tools. iGEM appreciates that the requirements are tough, and we are working to put together more and more educational materials for teams to use.</p>
</ol>
+
<p>Software teams should not necessarily start from scratch; over the years, libraries, design frameworks, and software tools have been built for you to use, abuse and improve wherever possible. In particular  teams should make use of the SBOL standard for synthetic biology data exchange as well as SBOL Visual.</p>  
And the second goal can be any one of the following:
+
<ol id="criterialist">
+
<li>Make your software interact / interface with the Registry. </li>
+
<li>Re-use and further develop previous iGEM software projects (or parts thereof) or use and/or improvement of existing synthetic biology tools or frameworks. </li>
+
<li>Develop a well documented library or API for other developers (rather than “only” a stand-alone app for end users.)</li>
+
<li>Support and use the SBOL and / or SBOLv standard.</li>
+
<li>iGEM projects involve important questions beyond the bench, for example relating to (but not limited to) ethics, sustainability, social justice, safety, security, or intellectual property rights. <b>Describe</b> an approach that your team used to address at least one of these questions. <b>Evaluate</b> your  approach, including whether it allowed you to answer your question(s), how it influenced the team’s scientific project, and how it might be adapted for others to use (within and beyond iGEM). We encourage thoughtful and creative approaches, and those that draw on past Policy & Practice (formerly Human Practices) activities.</li>
+
</li></ol>
+
</p>
+
+
  
 +
<h4><u>Git Resources</u></h4>
 +
<li>http://git-scm.com/downloads</li>
 +
<li>https://www.codeschool.com/courses/try-git</li>
 +
<li>http://training.github.com/resources/videos/</li>
 +
<li>http://gitref.org</li>
 +
 +
<h4><u>Other Resources</u></h4>
 +
<li>The java jdk: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html</li>
 +
<li>Netbeans - be sure to get either the Java EE version or the "All" option: https://netbeans.org/downloads/</li>
 +
 +
<h4><u>Python</u></h4>
 +
<li>The anaconda distribution of python: https://store.continuum.io/cshop/anaconda/</li>
 +
<h4><u>Bioinformatics Development Guidelines</u></h4>
 +
<li>Bioinformatics small tools manifesto: https://github.com/pjotrp/bioinformatics</li>
 +
<h4><u>Software Development Frameworks / Team Management Tools</u></h4>
 +
<li>Scrum - http://en.wikipedia.org/wiki/Scrum_%28software_development%29Agile</li>
 +
<li>http://en.wikipedia.org/wiki/Agile_software_development</li>
 +
<li>Trello - https://trello.com/</li>
 
<p>
 
<p>
Please feel free to contact us with any question or concern:
+
<p>
<img src="https://static.igem.org/mediawiki/2014/0/07/Softwaretrack_email.png">
+
<h2><u>Committee</u></h2>
</p>
+
  
 +
<p>If students, mentors or other interested parties have any questions about the iGEM 2015 software track, the track committee can be contacted at software@igem.org</p>
 +
 +
 +
<li>Edward Perello - Founder & CBO @ Desktop Genetics | Software Committee Chair</li>
 +
<li>Raik Grünberg -  X @ Y | Software Committee Co-chair</li>
 +
<li>Gil Alterovitz - Assistant Professor @ Center for Biomedical Informatics, Harvard Medical School</li>
 +
<li>Evan Appleton - Research Assistant, CIDAR Lab @ Boston University</li>
 +
<li>Cory Li - Sizigi Studios</li>
 +
<li>Jenhan Tao - Graduate Student Researcher, Glass Lab @ UCSD</li>
 +
<li>Sean Ward - Founder & CEO @Synthace</li>
 +
  
  

Revision as of 00:34, 17 March 2015

Please note that all information on this page is in a draft version.
Please check back often for details.

If you are going to design a new life form, chances are you’ll need a computer to design the smallest genetic circuits and deal with genome-scale complexity.

Software development is a valuable skill set for any synthetic biology team to have. In previous iGEM competitions, software has often been built by wetlab teams to solve specific problems. Recognising the utility of these software tools, and the importance of software development skills, the software track has been set up for computer scientists and developers to nurture their knowledge of biology, and for computational biologists, bioinformaticians and biologists to enhance their aptitude for building software.

Whether you are a wet lab team that has decided to build a software tool, or a software group looking to get involved in iGEM, we encourage you compete in the dedicated software track 2015.

Information about the track

Work Together & Solve Challenges in SynBio Software

Wetlab teams have lots of problems. Software teams can provide solutions. This year, iGEM is encouraging software and wet lab teams to work together and assist each other. If you need software for your wetlab project, or are a software team looking for a problem reach out to each other, by using the iGEM Reddit, contacting other teams on Twitter, or encouraging computer science departments to start teams.

Two Teams are Better than One

If you have a large ambitious wet lab project that includes a lot of computational work, think about registering two teams -- students can be members of both the computational and the wet lab team at the same time. This gives more exposure to the hard computational work which will be judged by experts (and you can win one more prize!).

Learn to be a Professional Biocoder

iGEM encourages software teams to learn the best practices of professional software developers. As software development is about solving problems in way that is useful for the users and for other developers, students, the software track focuses on teaching students the importance of:
  • Quality of codebase documentation
  • Automated testing practices
  • Version control (Git & Github)
  • Professional software development practices (Agile, Scrum etc)
  • Making use of previous iGEM teams’ work
  • Documenting code to enable other teams to pick up from where they will leave
  • Conducting user experience testing
  • Tools that Stand the Test of Time

    Many tools built by iGEM teams have been of professional-level quality, and others have shown great potential to be improved upon by future teams. Software projects from previous years have resulted in long-term efforts and have even led to several start-up companies. iGEM would love to see that happen again this year.

    Since 2012 there has been a centralised repository for software projects on Github. iGEM is currently exploring ways to host the work products and codebases of the 2015 competition for synthetic biologists and developers to access and improve in the future. Stay tuned for updates.

    Picking a Project

    iGEM software developers should work closely with experimental synthetic biologists and iGEM teams to build tools that are genuinely useful to the synthetic biology and iGEM communities. Software tools could directly help synthetic biologists in the lab, at their desktops, or even in how they communicate with each other and access information. You may wish to build a tool that:

  • Improves design, assembly and testing of biological circuits
  • Makes bioengineering more predictive
  • Helps biologists discover parts and exchange information about them
  • Improves parts registry navigation
  • Helps the iGEM community communicate with one another / identify problems
  • Serve as a better biobrick database API
  • Parses information from one form to another
  • The track is open to all sorts of projects but teams should make sure that they are not repeating work that has been done by the community already. If the team believes they can improve an existing software solution, they should ensure that their tool has significant performance or feature advantages over the existing one.

    Requirements

    There is no constraint on languages, libraries or other software developments tools in the track, except that the use of Git/Github for version control is mandatory. Please, use git right from the start of your project -- knowing the history of your commits is very helpful for other developers who want to build on your hard work. This will not only preserve the projects but also help others to avoid re-inventing the wheel.

    Medal Criteria

    Bronze * Register for iGEM, have a great summer, and attend the Giant Jamboree * Complete the judging form * Create a Team wiki * Present a poster and a talk at the iGEM jamboree. * Create a page on your team wiki with a clear attribution of each aspect of your project. This page must clearly attribute work done by students and distinguish it from work done by others, including host labs, advisors, instructors, sponsors, professional website designers, artists and commercial services. * Develop and make available, via the iGEM GitHub page, an open source software that supports synthetic biology based on standard parts and interacts with the registry. Silver * Provide a comprehensive, well-designed user guide and upload it to your wiki - be creative, an instructional video may work as well. * Develop a well documented library or API for other developers, rather than “only” a stand-alone app for end users. * Demonstrate that you followed best practices in software development so that other developers can modify, use and reuse your code. Provide more than one realistic test case. Examples of best practices are automated unit testing, documentation of test coverage, bug tracking facilities, documentation of releases, and changes between releases. Gold * iGEM projects involve important questions beyond the bench, for example relating to (but not limited to) ethics, sustainability, social justice, security and intellectual property rights. Expand on your silver medal activity by demonstrating how you have integrated the investigated issues into the design and/or execution of your project OR demonstrate an innovative policy and practices activity that relates to your project (this typically involves educational, public engagement, and/or public perception activities; see the human practices hub for information and examples of previous teams comprehensive and innovative activities). * Address a problem that you would like to co-develop with a wetlab team. This should be a collaboration where the wetlab team posts a problem they are having and your team addresses the issue by creating an online software solution. * Re-use and further develop a previous iGEM software project (or parts thereof) and demonstrate how future teams can continue this thread. * Demonstrate your software at the iGEM Giant Jamboree in the software demo suite. You should show a functional prototype that teams can use in following years.

    Team Projects from previous years

    Autogene was the co-winner of the 2012 software track (together with the project from the UK Tokyo team). The AutoPlasmid program is at the core of the project and allows users to automatically annotate a DNA sequence by matching it against a database of 40,000 known plasmid features. The project addressed a clear unmet need that was practical for the community and could be used by almost every experimental synthetic biologist.

    Track Awards

    iGEM ismoving to a nominations system for awards. That means the top 3 - 5 software teams will get recognition for their work. Think of the nominations as you would the academy awards. Being nominated amongst a very strong field of competitors is still recognition that you did a great job.

    Best Software Track Project

    The best software track project, based on nominations and achieving Gold Medal Criteria, will receive the best Software Track Project award.

    Best Software Tool for all teams in the competition.

    iGEM projects often create or adapt computational tools to move the bigger project forward. Because they are born out of a direct practical need, these software tools (or new computational methods) can even prove surprisingly useful for others. Without necessarily being big or complex, they can make the crucial difference to a project's success. This award tries to find and honour such "nuggets" of computational work. To be eligible, your software has to be documented and made available under an OSI approved open source license.

    Special Prizes / Grand Prize

    The Software teams are eligible for all the special prizes on top of the software track prize, including best model, best poster, best wiki, best applied design, etc. Software teams can also win the entire iGEM competition,

    iGEM Software Resources

    The requirements for medals in the software track are in line with standards and expectations required of professional software development teams and are supposed to give teams a taste for building useful computational synbio tools. iGEM appreciates that the requirements are tough, and we are working to put together more and more educational materials for teams to use.

    Software teams should not necessarily start from scratch; over the years, libraries, design frameworks, and software tools have been built for you to use, abuse and improve wherever possible. In particular teams should make use of the SBOL standard for synthetic biology data exchange as well as SBOL Visual.

    Git Resources

  • http://git-scm.com/downloads
  • https://www.codeschool.com/courses/try-git
  • http://training.github.com/resources/videos/
  • http://gitref.org
  • Other Resources

  • The java jdk: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
  • Netbeans - be sure to get either the Java EE version or the "All" option: https://netbeans.org/downloads/
  • Python

  • The anaconda distribution of python: https://store.continuum.io/cshop/anaconda/
  • Bioinformatics Development Guidelines

  • Bioinformatics small tools manifesto: https://github.com/pjotrp/bioinformatics
  • Software Development Frameworks / Team Management Tools

  • Scrum - http://en.wikipedia.org/wiki/Scrum_%28software_development%29Agile
  • http://en.wikipedia.org/wiki/Agile_software_development
  • Trello - https://trello.com/
  • Committee

    If students, mentors or other interested parties have any questions about the iGEM 2015 software track, the track committee can be contacted at software@igem.org

  • Edward Perello - Founder & CBO @ Desktop Genetics | Software Committee Chair
  • Raik Grünberg - X @ Y | Software Committee Co-chair
  • Gil Alterovitz - Assistant Professor @ Center for Biomedical Informatics, Harvard Medical School
  • Evan Appleton - Research Assistant, CIDAR Lab @ Boston University
  • Cory Li - Sizigi Studios
  • Jenhan Tao - Graduate Student Researcher, Glass Lab @ UCSD
  • Sean Ward - Founder & CEO @Synthace