The developmental mapping from genotype to phenotype is responsible for much of the evolvability (adaptive variation) exhibited in nature. Random mutations are transformed into structured phenotypic variation and the effects of deleterious mutations are mitigated. This mechanism is powerful precisely because search becomes constrained, generating only highly adaptive phenotypes. In evolutionary computation, acquiring such constraints and bias is akin to learning the underlying structure of a particular fitness function; such structure can be exploited to improve search efficiency. For example, when evolving a design for a coffee table, an evolvable encoding would discover that table height and surface area correspond to fundamental axes of variation, constraining search to solutions that maintain constant height and high surface area. Such evolvability is exhibited in indirect encodings, particularly developmental systems.