Введение

Каково это — стоять на передовой, когда некому принять решение за тебя, а возможности что-то переделать уже нет? Маргарет Гамильтон, первый программист, нанятый для проекта «Аполлон» в MIT, объясняла:

Поскольку программное обеспечение было загадкой, чёрным ящиком, высшее руководство предоставило нам полную свободу и доверие. Нам нужно было найти путь, и мы его нашли. Оглядываясь назад, мы были самыми счастливыми людьми в мире: у нас не было выбора, кроме как быть первопроходцами; не было времени оставаться новичками.

Когда «кроме нас — никого», наши решения формировались под давлением ограничений. В Cray Research именно ограничения и барьеры указывали нам на лучшую точку приложения усилий. Чтобы оставаться лучшими в мире, у нас не было иного выбора. Но прежде чем искать рычаги воздействия, мы тщательно выявляли и доказывали применимые возможности. Именно эти возможности показывали нам, какие решения могут оказаться осуществимыми.

Мы выработали эвристику мирового класса: если это не приносило удовольствия, то, вероятно, не стоило и делать. Мы, так сказать, «выкладывали всё на сцену» и не позволяли себе отвлекаться на то, что чего-то никогда раньше не делали.

Эти подходы зародились не в Cray Research. На самом деле советские технологии развивались параллельным путём на протяжении всей ранней холодной войны, потому что схожие ограничения порождают схожие решения.

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

Если вы ищете подтверждения своим взглядам, мифы об основателях, советы, тезисы или цитаты на вынос — эта книга не для вас. Если вы ожидаете объяснений без ответственности или абстракций без последствий — эта книга не для вас.

Беглое чтение не сработает. Пассивное чтение обречено на провал. Почему? Потому что у нас не было времени оставаться новичками, не было выбора, кроме как быть первопроходцами. Если вы здесь, чтобы прочувствовать ту напряжённую среду, в которой родились современные вычисления, — эта книга для вас.

Если вам близок хотя бы один из этих вопросов:

  • Почему я понимаю системы, но не понимаю, как думают эксперты?
  • Почему во многих историях вычислительной техники, кажется, отсутствует «почему»?
  • Почему я вижу только успешные результаты, а не то, как инженерные решения принимались под экзистенциальным давлением?

Вы попали по адресу.