  We describe the development of the theory of automatic groups. We begin with
a historical introduction, define the concepts of automatic, biautomatic and
combable groups, derive basic properties, then explain how hyperbolic groups
and the groups of compact 3-manifolds based on six of Thurston's eight
geometries can be proved automatic. We describe software developed in Warwick
to compute automatic structures, as well as the development of practical
algorithms that use those structures. We explain how actions of groups on
spaces displaying various notions of negative curvature can be used to prove
automaticity or biautomaticity, and show how these results have been used to
derive these properties for groups in some infinite families (braid groups,
mapping class groups, families of Artin groups, and Coxeter groups). Throughout
the text we flag up open problems as well as problems that remained open for
some time but have now been resolved.
