По опыту шахматных уроков я знал, что нет ничего лучше для учителя, чем ученик, который стремится к большему. Поэтому порой буквально заставлял преподавателей давать нам опциональные усложненные задания и настаивал на том, чтобы сложные темы подробно разбирались на занятиях. Преподаватели с огромной радостью шли мне навстречу, чего нельзя сказать о большинстве моих одногруппников. «Ботаник, выскочка, зубрила» – так думала обо мне половина факультета. Это абсолютно нормально, если достигаешь успеха и чем-то выделяешься, найдутся те, кто будет тебя осуждать. Зависть, непонимание и еще тысяча причин, по которым одни люди обсуждают других. Так было, есть и будет. Лучшее, что тут можно сделать, – просто заниматься своими делами, не пытаясь что-то кому-то доказать.
В библиотеке я отыскал монографию Дональда Кнута «Искусство программирования». Четыре тома о базовых алгоритмах, структурах данных и теории информатики. Читая книгу, я был поражен, насколько огромен и сложен этот мир. Особенно удивила именно сложность, так как уже к сотой странице я окончательно перестал понимать, о чем речь. В этот момент все большую популярность начинала приобретать Coursera – онлайн-платформа с курсами по разным направлениям. Coursera стала для меня дополнением к университету, там была возможность глубже погрузиться в темы, которые меня интересовали. Где-то я прочитал, что на собеседованиях в Google задают вопросы по структурам данных, поэтому в первую очередь выбрал курс «Алгоритмы» (англ. Algorithms) от преподавателей Принстона Роберта Седжвика и Кевина Уэйна. Мне понадобилось три попытки (и два года), чтобы пройти и полностью осознать этот курс.
С наступлением трехмесячных летних каникул человек сорок с факультета уехали работать в США по программе Work and Travel. Это был отличный способ скопить две-три тысячи долларов, работая официантом или кассиром.