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.
- Installability Test
- Submission of Code
1) IF you are creating an application that requires direct installation onto a hard drive, you must provide the software committee with a version of the program by September 11th. This is so that we can test to see if the tool is installable. The contact person for this will be our co-chair, Raik Greunberg. You must email (Raik.Gruenberg [at] gmail.com) with an installable version of your code so that it can be tested thoroughly ahead of the next deadline.
2) The deadline for submission of code to the iGEM Github Repository is the same date as the Wiki Freeze for conventional iGEM teams. You MUST submit your code to iGEM by September 18th - the judges will use this code as the basis of evaluating your project at the jamboree. Any code submitted after this deadline will be ignored and may subject your team to severe penalties.
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 OneIf 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 BiocoderiGEM 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.
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.
All teams must be part of the iGEM github repository run by HQ - teams must contact the committee chair (see below), who will create a new account for you to get started.
Medal CriteriaMedal criteria have been announced for some tracks here. Check back for final details soon.
Team Projects from previous yearsThe committee is working to put together a list of projects from previous years along a buildup of why they were successful. Watch this space.
iGEM is moving 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.
Examples of the best software tools from the last few years (and the reasons why they were so good) are being gathered from previous judges. Watch this space.
Special Prizes / Grand PrizeThe 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.
Synthetic Biology Resources
Bioinformatics Development Guidelines
Development Frameworks & Team Management
If students, mentors or other interested parties have any questions about the iGEM 2015 software track, the track committee can be contacted by emailing software (at) igem (dot) 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