Then: I google “time-series visualization” and start work on a new version of my model, thinking that maybe I can impress her with a prototype. I am really into the kind of girl you can impress with a prototype.
The idea is to animate through the borrowed books over time instead of just seeing them all at once. First, I transcribe more names, titles, and times from the logbook into my laptop. Then I start hacking.
Programming is not all the same. Normal written languages have different rhythms and idioms, right? Well, so do programming languages. The language called C is all harsh imperatives, almost raw computer-speak. The language called Lisp is like one long, looping sentence, full of subclauses, so long in fact that you usually forget what it was even about in the first place. The language called Erlang is just like it sounds: eccentric and Scandinavian. I cannot program in any of these languages, because they’re all too hard.
But Ruby, my language of choice since NewBagel, was invented by a cheerful Japanese programmer, and it reads like friendly, accessible poetry. Billy Collins by way of Bill Gates.
But, of course, the point of a programming language is that you don’t just read it; you write it, too. You make it do things for you. And this, I think, is where Ruby shines:
Imagine that you’re cooking. But instead of following the recipe step-by-step and hoping for the best, you can actually take ingredients in and out of the pot whenever you want. You can add salt, taste it, shake your head, and pull the salt back out. You can take a perfectly crisp crust, isolate it, and then add whatever you want to the inside. It’s no longer just a linear process ending in success or (mostly, for me) frustrating failure. Instead, it’s a loop or a curlicue or a little scribble. It’s play.
So I add some salt and a little butter and I get a prototype of the new visualization working by two in the morning. Immediately I notice something strange: the lights are following one another.
On my screen, Tyndall will borrow a book from the top of aisle two. Then, in another month, Lapin will ask for one from the same shelf. Five weeks later, Imbert will follow—exactly the same shelf—but meanwhile, Tyndall has already returned and gotten something new from the bottom of aisle one. He’s a step ahead.
I hadn’t noticed the pattern because it’s so spread out in space and time, like a piece of music with three hours between each note, all played in different octaves. But here, condensed and accelerated on my screen, it’s obvious. They’re all playing the same song, or dancing the same dance, or—yes—solving the same puzzle.
The bell tinkles. It’s Imbert: short and solid, with his bristly black beard and sloping newsboy cap. He hoists his current book (a monstrous red-bound volume) and pushes it across the desk. I quickly scrub through the visualization to find his place in the pattern. An orange light bounces across my screen, and before he says a word, I know he’s going to ask for a book right in the middle of aisle two. It’s going to be—
“Prokhorov,” Imbert wheezes. “Prokhorov must be next.”
Halfway up the ladder, I feel dizzy. What’s going on? No daredevil maneuvers this time; it’s all I can do to keep my balance as I pull slim, black-bound PROKHOROV off the shelf.
Imbert presents his card—6MXH2I—and takes his book. The bell tinkles, and I am alone again.
In the logbook, I record the transaction, noting Imbert’s cap and the smell of garlic on his breath. And then I write, for the benefit of some future clerk, and perhaps also to prove to myself that this is real:
Strange things are afoot at Mr. Penumbra’s 24-Hour Bookstore.
MAXIMUM HAPPY IMAGINATION
“… CALLED SINGULARITY SINGLES,” Kat Potente is saying. She’s wearing the same red and yellow BAM! T-shirt from before, which means (a) she slept in it, (b) she owns several identical T-shirts, or (c) she’s a cartoon character—all of which are appealing alternatives.
Singularity Singles. Let’s see. I know (thanks to the internet) that the Singularity is the hypothetical point in the future where technology’s growth curve goes vertical and civilization just sort of reboots itself. Computers get smarter than people, so we let them run the show. Or maybe they let themselves …
Kat nods. “More or less.”
“But Singularity Singles…?”
“Speed-dating for nerds,” she says. “They have one every month at Google. The male-to-female ratio is really good, or really bad. Depends who—”
“You went to this.”
“Yeah. I met a guy who programmed bots for a hedge fund. We dated for a while. He was really into rock-climbing. He had nice shoulders.”
Hmm.
“But a cruel heart.”