Yesterday I went to a one day course on botany at Kew Gardens. It seems silly to live so near to a world centre of excellence and not make use of it.
Amongst other interesting things, I spent half an hour studying a daisy under a microscope. Daisies are not in fact a single yellow flower surrounded by white petals. As Wikipeida puts it: “The flowerheads are composite, in the form of a pseudanthium, consisting of many sessile flowers about 3/4 to 1-1/4 in (approx. 2–3 cm) in diameter, with white ray florets (often tipped red) and yellow disc florets.” Botanists love neologisms, but under a microscope you can clearly see the tiny individual flowers in the yellow blob in the centre of the daisy.
I don’t know how many daisies there are in Kew Gardens, but each individual one consists of a large group of flowers. Each flower is operating an algorithm, or a series of algorithms, to control its activities. The whole group of flowers sit on top of other cells with other functions, eg to support the plant, to turn sunlight into energy, to absorb and transport water, to open and the florets with the light of day and close them again at night, etc. Only if all these cells work their separate algorithms correctly does the daisy survive. Interestingly the algorithms are modular enough to gladden the most austere object oriented programmer: for example the chlorophyll cells presumably interface through the production of energy, whilst the flower cells simply receive the energy without knowing or caring where it comes from. The cells presumably are instances of different classes; they have private methods (eg each cell has its own chloroplasts to photosynthesize sunlight, its own vacuoles to maintain rigidity: and these are addressed via standard interfaces with the cell as a whole, eg the amount of water available controls the vacuole.) The algorithms are possibly deterministic, but they depend on so many random external facts (weather, water, soil, availability of insects, etc.) that the effect is of variety and individuality.
Each flower is a set of algorithms given physical form by a set of cells. As a species, Kew’s daisies also run another set of evolutionary algorithms: their reproductive mechanism ensures that genes are shared between plants, with the healthiest (ie most successful) plants spreading and receiving more pollen, so that the most productive characteristics are reinforced over a long period of time and the failures die out. This algorithm works methodically without any individual plant being ‘aware’ of it, and involving insects who are even less ‘aware’ of what they are doing.
When I started to think of all these algorithms working simultaneously in all the cells in all the daisies in Kew Gardens, in both short and long time scales, it occurred to me that we are rather silly to talk about ‘Big Data’ as though it was a new thing. I am living across the road from a distributed supercomputer that makes Tianhe 2 look trivial.