One of the most profound observations arising from the genome sequencing of different species is the similarity, rather than the differences, apparent in the various sequences. This similarity is reflected not only in the numbers of protein-coding genes, but also in the degree of homology between the genes belonging to different species. What are we to make of this observation? Functional genomics aims to make biological sense of this genome information: to go from a list of components to an operational wiring diagram for an organism. This is of course a major challenge, and there is a growing acceptance that mathematical and computational approaches are needed to make progress.