I review the development of direct N-body codes at Cambridge over nearly 40
years, highlighting the main stepping stones. The first code (NBODY1) was
based on the simple concepts of a force polynomial combined with individual
time steps, where numerical problems due to close encounters were avoided
by a softened potential. Fortuitously, the elegant Kustaanheimo-Stiefel two
-body regularization soon permitted small star clusters to be studied (NBOD
Y3). Subsequent extensions to unperturbed three-body and four-body regulari
zation proved beneficial in dealing with multiple interactions. Investigati
ons of larger systems became possible with the Ahmad-Cohen neighbor scheme
which was used more than 20 years ago for expanding universe models of 4000
galaxies (NBODY2). Combining the neighbor scheme with the regularization p
rocedures enabled more realistic star clusters to be considered (NBODY5). A
fter a period of simulations with no apparent technical progress, chain reg
ularization replaced the treatment of compact subsystems (NBODY3, NBODY5).
More recently, the Hermite integration method provided a major advance and
has been implemented on the special-purpose HARP computers (NBODY4) togethe
r with an alternative version for workstations and supercomputers (NBODY6).
These codes also include a variety of algorithms for stellar evolution bas
ed on fast lookup functions. The treatment of primordial binaries contains
efficient procedures for chaotic two-body motion as well as tidal circulari
zation, and special attention is paid to hierarchical systems and their sta
bility. This family of N-body codes constitutes a powerful tool for dynamic
al simulations which is freely available to the astronomical community, and
the massive effort owes much to collaborators.