August 29, 2018
The Synbio Stack, Part 1
There are a few questions that I ask myself every day: How are we going to feed 10 billion people without creating deserts where we once had farms? How are we going to make sure we don’t all die of disease without limiting health exclusively to those who can afford luxury goods? How can we scale up our manufacturing output so more people can have higher standards of living globally, while shrinking our ecological impact and stopping climate change?
To me, these are The Big 21st Century Questions. And they all have biotech answers. The only problem is that, today, we aren’t creating biotech answers fast enough to meet our vast need for solutions.
This is why we need a Synbio Stack. We need an ecosystem of technologies that will make humanity’s ability to build biotechnology solutions one-hundred or even one-thousand fold faster. This article is about that ecosystem — the “tech stack” being created that will help us create the world-saving bio-solutions we need.
What is a Technology Stack?
“Stacks” are a combination of technologies that make vast complexity manageable. They separate parts of huge systems into “abstraction layers” that mask some of the complexity so designers can focus on the part they need to design at the moment without considering all the other complicated parts. Stephen Wolfram articulated this idea in 1986:
“The components of a system should be arranged in some form of hierarchy. Components higher on the hierarchy should provide overall control for sets of components lower on the hierarchy, which can be treated as single units or modules. This principle is crucial to software engineering, where the modules are typically subroutines. It is also manifest in biology in the existence of organs and definite body parts, apparently mirrored by subroutine-like constructs in the genetic code.” — Approaches to Complexity Engineering (Stephen Wolfram, 1986)
For something as complicated as a CPU with billions of transistors or a cell with trillions of molecules, organizing things in this layered way is critical to any type of engineering effort. Wolfram continues:
“An important aspect of modularity is the abstraction it makes possible. Once the construction of a particular module has been completed, the module can be treated as a single object, and only its overall behaviour need be considered, wherever the module appears. Modularity thus divides the problem of constructing or analysing a system into many levels, potentially making each level manageable.” — Approaches to Complexity Engineering (Stephen Wolfram, 1986)
By slicing a big complicated problem into smaller, simpler pieces stacked on top of each other, complicated problems become much easier to solve.
One famous example from web development is the LAMP Stack (Linux, Apache, MySQL, PHP). If you Google it, you’ll find many tutorials on how to use the LAMP Stack to create web applications, as well as diagrams explaining it like this one:
The magic of the LAMP stack is that if you are making a web app, you can stay at the top layer and write some PHP scripts, rather than needing to think about controlling processes in the operating system layer on the bottom. Rather than needing to be an expert computer scientist to make a website, now you just need to know some simple scripting.
This points us to another important thing about stacks: the same abstraction layers can be filled by different technologies. In our LAMP example, the abstraction layers are (from bottom to top) Operating System, Web Server, Database Server, and Scripting Language; the technologies filling those abstraction layers are Linux, Apache, MySQL, and PHP. These same abstraction layers can be filled by different technologies to create other stacks, like the widely used MEAN Stack that uses MongoDB, Express.js, AngularJS, and Node.js as the specific technologies stacked together.
Modern web development stacks have largely moved past LAMP and MEAN these days, but LAMP still remains one of the most common technology combinations on the Internet (source) because it was the first to make it possible for almost anyone to build a website. This is the power of a stack: it lets people do things they wouldn’t be able to handle without it, granting access to technology previously out of many people’s reach and accelerating development by orders of magnitude.
Why is a “Stack” Important for Biology?
Biology is so complex, our only chance to engineer it is to use a stack (or stacks).
Drew Endy was the first to articulate this idea in his 2003 Nature review “Foundations for Engineering Biology.” There he identifies “standardization, decoupling, and abstraction” as the key elements comprising the new discipline of “synthetic biology.” These three engineering concepts are layered on top of the genetic engineering tools that had been in development since the first restriction enzymes were used to reprogram DNA in the 1970s, and together they create a new approach to biotechnology that we call “synbio.” This video shows Drew making this argument on a whiteboard in 2007.
Rob Carlson further developed this idea in his 2010 book Biology is Technology. Carlson traces the history of abstraction layer development that enabled the design and engineering of the incredibly complex airplanes and integrated circuits we take for granted today. Here he quotes Tom Knight, one of the first developers of the Internet and co-founder of Ginkgo Bioworks:
“We have an opportunity to use our complexity and information management tools to modularize, abstract, and understand biological systems. In the same way that we simplified and abstracted components from physics to allow us to build billion component processors, we can and will modularize, abstract, and understand biological components with the explicit goal of constructing artificial biochemical and biological systems.” – Tom Knight, quoted in Biology is Technology (Rob Carlson, 2010)
The creation of a Synbio Stack will free people from thinking about individual DNA base pairs so they can focus on designing new biological applications. It will become easier than ever for more people to create new applications with biotechnology, empowering them to create solutions to the huge existential problems humanity faces today.
What is the Synbio Stack?
If abstraction layers are so important for engineering biology, what are all the different layers? And what technologies can fill them?
There are many ways of slicing this pie, and every synbio lab is probably working with slightly different technology configurations. That said, I think in terms of four (very broad) layers:
- Application Layer: Valuable products ranging from food to pharmaceuticals to fashion.
- Bio CAD / CAM Layer: Computer aided design and/or manufacturing (CAD / CAM) software to design applications and plan how they will be built.
- Process Execution Layer: Hardware that automate processes described by the Bio CAD/CAM software in order to manipulate reagents and biology.
- Biological Reagents Layer: Component biological parts being combined to create applications.
Each of these layers can be broken down themselves into more layers and sublayers. Yet, even with this 30,000-foot view of the synbio stack, we can see the advantages of abstraction layers for people building with biology. The stack divides the huge and complicated job of creating a new organism into several smaller, less complicated jobs. That makes things that were once impossible now doable.
People and organizations have the opportunity to specialize within different layers to build out the capacities needed there. For example, with a synbio stack like this, someone using CAD software to design a DNA part is free from thinking about the step-by-step process the robots will carry out to create their design. This means they can focus on the very difficult job of designing functional DNA parts. Organizing the work of creating a new bio-product this way makes it possible to build teams and tackle problems that used to be impossible.
State of the Stack
Since abstraction layers add so much value to engineering with biology, it should be no surprise that many companies are working to create solutions at the different layers of the stack. Here is a list of just some of the companies working at the different layers.
It should be obvious from this diagram that there are many different approaches to creating the layer-cake of technologies that a modern synthetic biology lab requires to effectively design organisms — more ways than can comfortably fit in this image. And more companies with novel approaches are emerging every quarter to add their solution to the buffet of technologies that those who would engineer biology can choose from. And that is a good thing. The more these solutions become available as off-the-shelf, modular components, the more organizations will be able to create fully functioning synbio foundries, and the more potentially world saving applications we can build.
My company, Opentrons, makes affordable open-source robots for running biology experiments. We are lowering the largest barrier to entry for using a stack to engineer biology: the cost of lab automation. In subsequent articles we will do a deep dive into the specific pieces of technology some of our customers are stacking with Opentrons to do their work. We’ll also demonstrate how we are making the synbio stack an affordable off-the-shelf piece of technology and democratizing biotechnology in ways that were previously not possible.
Special thanks to Karl Schmieder of MessagingLab for his excellent editing, to Kristin Ellis and Kinnari Watson from Opentrons for their insights, and to Francis Lee for his perspective.