Аллен его предупреждал:
— Знаешь, Билл, в Гарварде найдутся люди, которые намного сильнее тебя в математике.
— Исключено! Абсолютно исключено! — ответил Гейтс.
— Вот увидишь — настаивал Аллен[744].
Почти год
Гейтс в Гарварде
Когда нужно было высказать свои пожелания по поводу соседей в общежитии, Гейтс отметил, что хочет жить с афроамериканцем и с иностранным студентом. Ему выделили комнату в корпусе для первокурсников Wigglesworth Hall во внутреннем дворе Гарварда и поселили с Сэмом Цнаймером из Монреаля, фанатом науки из бедной семьи еврейских беженцев, и Джимом Дженкинсом, чернокожим студентом из Чаттануги, штат Теннесси. Цнаймер до этого никогда не общался с людьми из привилегированного класса, и Гейтс показался ему очень приветливым, а его способ учиться — довольно странным, но занятным: «Он работал тридцать шесть часов подряд, выключался на десять часов, затем шел за пиццей и снова садился работать. И если на часах было три часа ночи, ну, значит, три часа ночи»[745]. Его восхищало, как Гейтс несколько ночей заполнял налоговые декларации на Traf-O-Data. Когда он погружался в работу, то раскачивался взад-вперед, а иногда они с Цнаймером шли в гостиную общежития и исступленно резались в видеоигру Pong от Atari или шли играть в Spacewar в компьютерную лабораторию Гарварда.
Лаборатория была названа в честь Говарда Айкена, который создал компьютер Mark I и вместе с Грейс Хоппер работал на нем во время Второй мировой войны. В лаборатории стояла любимая машина Гейтса — PDP-10 от компании DEC. Она должна была помогать американской армии во Вьетнаме, но вместо этого в 1969 году PDP-10 привезли в Гарвард для военных исследований. Чтобы не поднять волну антивоенных протестов, компьютер секретно доставили в Лабораторию Айкена одним воскресным утром. Научные проекты финансировались Агентством перспективных исследований Министерства обороны США — Defense Department’s Advanced Research Projects Agency (позднее известное как DARPA[746]), однако это не афишировалось, поэтому нигде не было прописано, кто имеет право пользоваться компьютером. В лаборатории также стояло множество PDP-1, на которых можно было играть в Spacewar. На первом курсе в качестве проекта по информатике Гейтс написал видеоигру по бейсболу, а для этого подключил PDP-10, который выполнял все вычисления, и PDP-1, на который отправлялась картинка. «Я привык к графическому дисплею PDP-1, играя в Spacewar, сейчас такие уже не найти»[747], — рассказывает Гейтс.
Гейтс засиживался допоздна, ему нужно было написать алгоритмы для расчета траектории полета мяча и перемещения игроков. По словам Цнаймера, на первом курсе Гейтс занимался некоммерческими проектами, ему просто нравилось программировать[748]. Преподаватель Томас Читэм, ответственный за лабораторию, относился к Гейтсу неоднозначно: «Он чертовски хорошо программировал». Но иногда вел себя просто отвратительно, «беспардонный был человек… Он оскорблял людей, когда и без этого можно было обойтись, да и просто общаться с ним было не очень приятно»[749].
Аллен не зря предупреждал Гейтса: он действительно был не самым сильным математиком в группе. Его превосходил студент из Балтимора, который в общежитии жил над Гейтсом, — Энди Брейтерман. Они ночи напролет сидели в его комнате, ели пиццу и решали задачки. Брейтерман отзывался о Гейтсе как о живом и напористом человеке, а еще как о хорошем спорщике[750]. Особенно рьяно он отстаивал свое убеждение, что вскоре у каждого человека дома будет персональный компьютер для хранения книг и другой информации. На следующий год Гейтс и Брейтерман стали соседями.
Одним из основных своих предметов Гейтс выбрал прикладную, а не теоретическую математику. И ему даже удалось оставить в этой области небольшой след. Их преподаватель по теоретической информатике Гарри Льюис предложил им решить классическую математическую задачу:
Наш повар неаккуратно готовит, и блины у него все разного размера. Когда я несу стопку блинов клиенту, мне приходится их перекладывать так, чтобы самый маленький оказался сверху, затем шел блин побольше, и так до самого большого блина на дне. Я беру несколько верхних блинов и переворачиваю их, затем повторяю это движение и так сортирую всю стопку. Брать я могу разное количество блинов. Если у меня n блинов, то какое максимальное количество раз мне понадобится перевернуть верхние блины (представить в виде функции f(n)).
Для решения этой задачи необходимо было придумать эффективный алгоритм, как и для написания любой компьютерной программы. Льюис дал условия задачи на лекции и пошел дальше по материалу: «А через день-другой ко мне в кабинет зашел тот смышленый второкурсник и рассказал, что создал алгоритм 5/3 от n». Другими словами, Гейтс подсчитал, что каждый блин потребуется перевернуть 5/3 раз. «Для решения потребовалось провести сложный анализ возможных вариантов расположения верхних блинов. Это было очень умно». Ассистент Льюиса Христос Пападимитриу позднее опубликовал это решение в научном журнале, а Гейтс числился соавтором[751].
Летом 1974 года, когда у Гейтса были каникулы между первым и вторым курсом, компания Honeywell предложила ему работу, и он уговорил Аллена переехать под Бостон и вместе устроиться в Honeywell. Аллен бросил университет, сел в свой «крайслер», приехал на восток страны и подбивал Гейтса тоже оставить учебу.
Он боялся, что они пропустят компьютерную революцию. Сидя в пиццерии, друзья мечтали о том, что когда-нибудь у них будет своя компания. Однажды Аллен спросил, насколько большая компания у них может получиться в лучшем случае? Гейтс предполагал, что программистов на тридцать пять[752]. Но Гейтс не устоял под натиском родителей, которые умоляли его не бросать Гарвард, хотя бы в ближайшее время.
Как и многие новаторы, Гейтс любил протест ради протеста. Например, на втором курсе он твердо решил, что не будет ходить на обязательные лекции, а будет слушать только те курсы, которых нет в его расписании. Этому правилу он следовал неукоснительно и, чтобы не ошибиться, специально посещал занятия, которые по времени пересекались с парами его курса. Таким бескомпромиссным он был бунтарем[753].
(adsbygoogle = window.adsbygoogle || []).push({});