Cargando…

Biocoder: A programming language for standardizing and automating biology protocols

BACKGROUND: Published descriptions of biology protocols are often ambiguous and incomplete, making them difficult to replicate in other laboratories. However, there is increasing benefit to formalizing the descriptions of protocols, as laboratory automation systems (such as microfluidic chips) are b...

Descripción completa

Detalles Bibliográficos
Autores principales: Ananthanarayanan, Vaishnavi, Thies, William
Formato: Texto
Lenguaje:English
Publicado: BioMed Central 2010
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2989930/
https://www.ncbi.nlm.nih.gov/pubmed/21059251
http://dx.doi.org/10.1186/1754-1611-4-13
_version_ 1782192408774049792
author Ananthanarayanan, Vaishnavi
Thies, William
author_facet Ananthanarayanan, Vaishnavi
Thies, William
author_sort Ananthanarayanan, Vaishnavi
collection PubMed
description BACKGROUND: Published descriptions of biology protocols are often ambiguous and incomplete, making them difficult to replicate in other laboratories. However, there is increasing benefit to formalizing the descriptions of protocols, as laboratory automation systems (such as microfluidic chips) are becoming increasingly capable of executing them. Our goal in this paper is to improve both the reproducibility and automation of biology experiments by using a programming language to express the precise series of steps taken. RESULTS: We have developed BioCoder, a C++ library that enables biologists to express the exact steps needed to execute a protocol. In addition to being suitable for automation, BioCoder converts the code into a readable, English-language description for use by biologists. We have implemented over 65 protocols in BioCoder; the most complex of these was successfully executed by a biologist in the laboratory using BioCoder as the only reference. We argue that BioCoder exposes and resolves ambiguities in existing protocols, and could provide the software foundations for future automation platforms. BioCoder is freely available for download at http://research.microsoft.com/en-us/um/india/projects/biocoder/. CONCLUSIONS: BioCoder represents the first practical programming system for standardizing and automating biology protocols. Our vision is to change the way that experimental methods are communicated: rather than publishing a written account of the protocols used, researchers will simply publish the code. Our experience suggests that this practice is tractable and offers many benefits. We invite other researchers to leverage BioCoder to improve the precision and completeness of their protocols, and also to adapt and extend BioCoder to new domains.
format Text
id pubmed-2989930
institution National Center for Biotechnology Information
language English
publishDate 2010
publisher BioMed Central
record_format MEDLINE/PubMed
spelling pubmed-29899302010-11-23 Biocoder: A programming language for standardizing and automating biology protocols Ananthanarayanan, Vaishnavi Thies, William J Biol Eng Methodology BACKGROUND: Published descriptions of biology protocols are often ambiguous and incomplete, making them difficult to replicate in other laboratories. However, there is increasing benefit to formalizing the descriptions of protocols, as laboratory automation systems (such as microfluidic chips) are becoming increasingly capable of executing them. Our goal in this paper is to improve both the reproducibility and automation of biology experiments by using a programming language to express the precise series of steps taken. RESULTS: We have developed BioCoder, a C++ library that enables biologists to express the exact steps needed to execute a protocol. In addition to being suitable for automation, BioCoder converts the code into a readable, English-language description for use by biologists. We have implemented over 65 protocols in BioCoder; the most complex of these was successfully executed by a biologist in the laboratory using BioCoder as the only reference. We argue that BioCoder exposes and resolves ambiguities in existing protocols, and could provide the software foundations for future automation platforms. BioCoder is freely available for download at http://research.microsoft.com/en-us/um/india/projects/biocoder/. CONCLUSIONS: BioCoder represents the first practical programming system for standardizing and automating biology protocols. Our vision is to change the way that experimental methods are communicated: rather than publishing a written account of the protocols used, researchers will simply publish the code. Our experience suggests that this practice is tractable and offers many benefits. We invite other researchers to leverage BioCoder to improve the precision and completeness of their protocols, and also to adapt and extend BioCoder to new domains. BioMed Central 2010-11-08 /pmc/articles/PMC2989930/ /pubmed/21059251 http://dx.doi.org/10.1186/1754-1611-4-13 Text en Copyright ©2010 Ananthanarayanan and Thies; licensee BioMed Central Ltd. http://creativecommons.org/licenses/by/2.0 This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
spellingShingle Methodology
Ananthanarayanan, Vaishnavi
Thies, William
Biocoder: A programming language for standardizing and automating biology protocols
title Biocoder: A programming language for standardizing and automating biology protocols
title_full Biocoder: A programming language for standardizing and automating biology protocols
title_fullStr Biocoder: A programming language for standardizing and automating biology protocols
title_full_unstemmed Biocoder: A programming language for standardizing and automating biology protocols
title_short Biocoder: A programming language for standardizing and automating biology protocols
title_sort biocoder: a programming language for standardizing and automating biology protocols
topic Methodology
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2989930/
https://www.ncbi.nlm.nih.gov/pubmed/21059251
http://dx.doi.org/10.1186/1754-1611-4-13
work_keys_str_mv AT ananthanarayananvaishnavi biocoderaprogramminglanguageforstandardizingandautomatingbiologyprotocols
AT thieswilliam biocoderaprogramminglanguageforstandardizingandautomatingbiologyprotocols