The ability to reliably re-program cells has great potential for tackling societal challenges, in areas such as health, food and energy. DNA is the code that stores the information required to replicate life, and is read by cellular machinery. In addition to its role in the natural sense, it is also possible to use DNA as a substrate for computing, by taking advantage of its physical properties. This gives rise to the potential use of DNA as an intracellular controller, improving cell-based production of biofuels and medicines, and even acting as “smart drugs”. In this talk, I’ll show how we have used DNA strand displacement to create complex dynamical behaviours. Network designs benefit from the Visual DSD software, developed within Microsoft Research, to build, analyse and test models of DNA strand displacement networks. We formally implement chemical reaction networks (CRNs), which are capable of a rich set of nonlinear dynamics. By combining DNA implementations of non-catalytic and autocatalytic reactions, we construct a circuit that implements a well-studied approximate majority algorithm, one of the fastest known ways for a population to reach a collective majority decision between two possible outcomes. The experimentally observed dynamics of the full circuit are well predicted by a model whose parameters are inferred from experimental measurements of the constituent reactions using Markov chain Monte Carlo parameter estimation. The predictability of the dynamics of DNA-based computing architectures could one day lead to their use in a clinical context as sophisticated molecular controllers.