How a data processing problem at Lyft became the basis for Eventual