As a trained statistician with degrees from MIT and Stanford University, Srivastava was intrigued by the technical problem posed by the lottery ticket. In fact, it reminded him a lot of his day job, which involves consulting for mining and oil companies. A typical assignment for Srivastava goes like this: A mining company has multiple samples from a potential gold mine. Each sample gives a different estimate of the amount of mineral underground. “My job is to make sense of those results,” he says. “The numbers might seem random, as if the gold has just been scattered, but they’re actually not random at all. There are fundamental geologic forces that created those numbers. If I know the forces, I can decipher the samples. I can figure out how much gold is underground.”
Srivastava realized that the same logic could be applied to the lottery. The apparent randomness of the scratch ticket was just a facade, a mathematical lie. And this meant that the lottery system might actually be solvable, just like those mining samples. “At the time, I had no intention of cracking the tickets,” he says. He was just curious about the algorithm that produced the numbers. Walking back from the gas station with the chips and coffee he’d bought with his winnings, he turned the problem over in his mind. By the time he reached the office, he was confident that he knew how the software might work, how it could precisely control the number of winners while still appearing random. “It wasn’t that hard,” Srivastava says. “I do the same kind of math all day long.”
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, or even use Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for MakeCode, CircuitPython, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.