Space exploration requires tremendous precision. When you’re landing a rover on Mars 70 million miles away from the nearest service station, you need to maximize efficiency and prepare for the unexpected. This applies to everything from spacecraft design to data transmission: Those messages returning to Earth as a steady stream of 0s and 1s are bound to contain some errors, so you need to be able...