David Mayne has made numerous contributions to the theory of control, and to computational techniques for solving control problems. He pioneered a number of techniques in identification, including the use of Kalman filters for identification, the use of ‘instrumental variables’, canonical forms for identification, and the use of autoregressive models. In systems theory, David developed computational methods for minimal realisations, and contributed to an extension of the Weierstrass excess-function theorem. His best known work is the development of computer algorithms for the optimisation of stochastic and deterministic systems, with proofs of existence and convergence. He has developed two different approaches to the design of control systems, and has implemented these as interactive computing methods. In addition, he has made a number of contributions to finite-dimensional optimisation, and has participated in a range of projects in which his own and other methods have been used to solve industrial problems of control.