The very cool thing I key on here is the clever solution to this incredible technical achievement of having a rover on mars doing all this science:
Each day, after the lander downloads the latest batch of data to the 100 scientists watching her movements, the team determines what they want her do next and make sure that their goals align with Curiosity’s capabilities. Then the software team writes the necessary script and sends it off via uplink. Because of the roughly 14 minutes it takes for the instructions to reach Mars, all of this has to be done within the window, when Curiosity is sleeping.
The technology is actually a dance. A dance between all the information going between the red planet, Curiosity, the void, into the earth bound computers, into the scientists brains, back out into the computers, back to the void, back to Curiosity…. a musical remix ever evolving. The team behind Curiosity didn’t attempt to program the be all and end all of Curiosity. Instead they came up with some building blocks and a language to communicate and agreed to dance.
And the bigger idea here is that everything is connected. To work on interesting, important, useful problems the approach is an interplay between humans, machines, software – it is rarely a steady state solution or even a discrete solution.