top of page

Understanding and quantifying synthetic biological systems' applicability, performance, and limits


Programming Biology

Computing in the 21st century is extremely exciting, diverse, and democratized. Using just a few simple concepts and a personal computer, people of all ages and backgrounds can create smartphone applications, social media networks, and amazing electronic gadgets. Each of these creations can then be shared, modified, and extended by others. The Living Computing Project is going to let us “program biology” and democratize the process as society has with electronic computing. Programming biology is going to be the key to solving many of the 21st century’s most pressing human health, agricultural, and materials challenges.

This project’s technology will allow us to apply the same simple concepts from traditional computing and use them to design new solutions in bio-therapeutics, bio-materials, bio-energy, and bio-remediation. Programming biology will allow for amazing systems that can harness evolution, adaptation, replication, self-repair, chemistry, and living organisms. This project will create a quantitative set of freely available design principles, computational tools, mathematical models, physical-biological artifacts, educational resources, and outreach activities. Once available, these resources will allow for novel, living biological solutions to be built more quickly, perform better, be more reliable to manufacture and cost less to produce.

This project is unique in that these resources will be explicitly developed to validate key computational concepts to understand how well these concepts can be applied rigorously and repeatedly to biology. This project decomposes these concepts into three areas: Computing Paradigm (digital, analog, memory, and communication),  Computing Activity (specification, design, and verification), and Computing Metric (time, space, quality, and complexity). Once complete, this project will provide the most comprehensive, freely available, and computationally relevant set of building blocks to engineer biological systems to date.

Scientific Work

Explicitly five unanswered questions will be addressed in this project:


What computational models are available to biology, what are their limits, and how do they perform?


What communication mechanisms are available to biology, what are their limits, and how do they perform?


What are the theoretical and empirical measures of quality, scale, time, and space in biological computing systems?


How generalizable are the concepts and “design rules” which can be learned from studying biological systems?


How can the results (data and learnings) from biological specification, design, and verification be authoritatively disseminated to the community as design principles and grand challenges?

This project addresses these questions with an interdisciplinary team with expertise in theoretical computer science, electronic design automation, biophysics/chemistry, control theory, and molecular cell biology. We will approach this project by building individual DNA “parts”, quantitatively measuring their individual performance, and rigorously testing their limits regarding compositional structure, performance, and function. We will then archive these building blocks and associated data in an open-source data repository. In addition, software tools will be created that let others use these parts effectively. We will investigate using these parts in the development of bio-sensing and cell-differentiation/detection applications. We will develop a “roadmap” that helps the field chart the predicted future applicability of this technology.




The Living Computing Project’s Inventory of Composable Elements (ICE) is an open-source registry software and platform for managing information about biological parts. It was created at the Joint Bio Energy Institute (JBEI) by Nathan Hillson and his team. We are using ICE since ICE based repositories form an interconnected “web”, ICE supports SBOL, and has integrated DNA plasmid viewer software. For more information click here.



Metafluidics is a repository for open-source hardware designs. Metafluidics is developed at Lincoln Labs by Dr. David Kong. Metafluidics will serve to archive all microfluidic designs related to the design and verify axes. In addition, it will be used to form the DNA assembly foundation of this project. For more information click here.

Screenshot 2020-03-25 at 7.32.32.png

The SBOL Stack is a platform for storing, sharing, and publishing synthetic biology designs using the Synthetic Biology Open Language (SBOL). We are using the SBOL stack since this will allow for distribution of SBOL files as a means of data exchange. It also integrates nicely with the software tools being developed for this project. For more information click here. 



LCP is using a GitHub repository for sharing its code base. Repositories will begin as private and will be shared with select collaborators. Over time the repositories will become public and pushed to the Nona Research Foundation ( To access our GitHub repositories please contact Doug Densmore.

  • White Twitter Icon
  • github-icon
  • White YouTube Icon

Our Team

Douglas Densmore (Lead PI)
BU -- Professor

Department of Electrical and Computer Engineering

Ahmad "Mo" Khalil

BU -- Associate Professor

Biomedical Engineering Department

Wilson Wong

BU -- Associate Professor

Biomedical Engineering Department

Ron Weiss 

MIT -- Professor

Biological Engineering Department

Domitilla Del Vecchio

MIT -- Associate Professor

Department of Mechanical Engineering

Timothy Lu

MIT -- Associate Professor

Department of Electrical and Computer Engineering

Peter Carr

MIT Lincoln Labs

Senior Scientist

Mary Dunlop

BU -- Associate Professor

Biomedical Engineering Department

Chris Myers

University of Utah -- Professor

Electrical & Computer Engineering Department

Christopher Voigt

MIT -- Professor

Biological Engineering Department

Jacob Beal

BBN Technologies


Tiffany E. Grant King

TEGrant Consulting

STEM Pathways Coordinator

bottom of page