Да, я очень хочу. Может, я даже сам куплю ей книгу Тафти. Заверну в коричневую бумагу и подарю. Стоп… я не сошел с ума? Книга-то дорогая. Может, есть издание попроще, в мягкой обложке. Можно купить и на «Амазоне». Хотя это глупо, я же работаю в книжном. (А «Амазон» быстро доставит?)

Кэт все еще ждет ответа.

– Конечно, – пищу я.

Она записывает свой адрес на открытке Пенумбры: katpotente@ – ну естественно – gmail.com.

– А купоном в следующий раз воспользуюсь, – обещает она, взмахнув телефоном. – Пока.

Как только она уходит, я открываю свою гипертаргетированную рекламную кампанию. Я там что, случайно отметил пункт «красивая»? (А «одинокая»?) Я вообще могу себе это позволить? Чисто в плане маркетинга это был провал: я не продал ни одной книжки, ни дорогой, ни дешевой. Более того, я должен доллар: Кэт написала адрес на открытке. Но особых поводов для беспокойства нет: из моего первоначального бюджета в одиннадцать баксов «Гугл» вычел всего семнадцать центов. За единственный показ рекламы – единственный и безупречный, который состоялся ровно двадцать три минуты назад.

Позднее, когда час ночной изоляции и вдыхание паров лигнина отрезвляют меня, я делаю две вещи.

Во-первых, пишу Кэт и спрашиваю, не хочет ли она пообедать завтра, то есть в субботу. Я иногда бываю трусоват, но верю, что железо надо ковать, пока горячо.

А во-вторых, я гуглю «визуализацию временнóго ряда» и начинаю работу над новой версией своей модели в надежде произвести на Кэт впечатление своим прототипом. Я люблю девушек, на которых можно произвести впечатление прототипом.

Я задумал сделать анимацию, чтобы данные о том, как брали книги, отображались в динамике, а не одновременно. Первым делом я переписываю побольше имен, названий и сведений о времени из книги учета в ноутбук. А потом начинаю свой хакатон.

Не все программирование одинаково. В обычных письменных языках есть разные ритмы и идиомы, так? В языках программирования тоже. Язык си строится на жестком императиве – примерно так и говорят компьютеры. Лисп похож на одно длинное закрученное предложение с кучей придаточных – до того длинное, что забываешь, о чем, собственно, шла речь. Про эрланг все понятно из названия: скандинавский и эксцентричный. Ни на одном из них я программировать не умею, потому что они слишком трудные.

А вот руби, мой любимый язык со времен «Нового бейгла», придумал японский программист-весельчак, поэтому руби читается как понятные дружелюбные стихи. Билли Коллинз[9] переоделся Биллом Гейтсом.

Хотя, разумеется, язык программирования придуман не для того, чтобы на нем просто читать, – надо еще и писать. Ты пишешь – он на тебя работает. И вот тут руби, по-моему, просто звезда.

Это как готовка. Только ты не следуешь рецепту шаг за шагом в надежде на лучшее, а можешь в любой момент вынимать ингредиенты из кастрюли и класть обратно. Можно посолить, попробовать, покачать головой и убрать лишнюю соль. Можно взять отдельно идеальную хрустящую корочку, а внутрь добавить все, что захочешь. Это уже не линейный процесс, который заканчивается успехом или (как правило, у меня) огорчительным провалом. Это кольцо, завитушка или каракуля. Игра.

Итак, добавив соли и немного масла, я к двум часам ночи получаю рабочий прототип новой визуализации. И тут же замечаю нечто странное: разноцветные огни повторяют друг друга.

Визуализация показывает, что Тиндал берет книгу с самого верха второго ряда. А через месяц Лапин берет книгу с той же полки. Через пять недель оттуда же забирает книжку и Имберт, а Тиндал тем временем уже возвращает ту и берет другую книгу снизу первого ряда. Он на шаг впереди всех.

Раньше я этой закономерности не видел, потому что биты информации разнесены в пространстве и времени, – это как если бы в музыке проходило по три часа между каждой нотой и все они игрались в разных октавах. Но когда я вывел информацию на экран и ускорил, все стало очевидно. Эти люди играют одну и ту же мелодию, или танцуют один и тот же танец, или – ну да – решают одну и ту же головоломку.

Звенит колокольчик. Это Имберт: невысокий, крепкий, черная щетина и кепка-восьмиклинка набекрень. Он кладет на прилавок то, что сдает (громадную книжищу в красном переплете). Я быстренько прокручиваю визуализацию, чтобы найти место Имберта в общем узоре. На экране загорается оранжевая лампочка, и не успевает он открыть рот, я знаю, что он попросит книгу из середины второго ряда. Это будет…

– «Прохоров», – хрипит Имберт. – «Прохоров» следующий.

Я лезу по лестнице, и на полпути у меня начинает кругом идти голова. Что тут происходит-то? В этот раз я не делаю никаких отчаянных маневров – мне бы на ногах устоять. Я беру с полки тонкую книжку в черном переплете. «Прохоров».

Имберт подает карточку – 6MXH2I – и забирает свою книгу. Звякает колокольчик, и я снова остаюсь один.

Я фиксирую обмен в книге учета, упоминая в том числе кепку Имберта и тот факт, что изо рта у него пахло чесноком. А потом пишу для неизвестного будущего работника и, может, для того, чтобы доказать самому себе, что это все реально:

Перейти на страницу:

Похожие книги