Многострадальное приложение
Многострадальное приложение
Все это время меня не покидало ощущение, что где-то по ходу работы вся комиссия снова должна собраться вместе, чтобы мы могли поговорить друг с другом и обсудить то, что нам удалось узнать.
Чтобы помочь подобному обсуждению, я в течение всей работы писал небольшие отчеты: я описывал свою работу с командой, которая занималась измерением температуры (анализируя фотографии и ошибочные показания прибора); я написал о своих беседах с мистером Ламбертом и рабочими-сборщиками и не забыл даже тот листочек бумаги, на котором было написано «Погнали дальше». Все эти маленькие отчеты я отправил Элу Килу, исполнителю, чтобы он распространил их среди остальных членов комиссии.
Кроме того, была еще и авантюра — расследование отсутствия передачи информации между менеджерами и инженерами, работавшими над двигателями, — об этом я тоже написал: дома, на своем небольшом персональном компьютере IBM. Я уже несколько устал, а потому утратил самообладание, которое было мне необходимо, так что отчет был написан не так аккуратно, как все остальные мои отчеты. Но поскольку я писал его только для прочтения остальными членами комиссии, я не стал ничего исправлять и просто отправил его доктору Килу, прикрепив записку, которая гласила: «Я считаю, что этот отчет будет интересен остальным членам комиссии, но Вы можете сделать с ним все, что пожелаете, — он несколько несдержан в конце».
Он поблагодарил меня и сказал, что отправил мой отчет всем.
Потом я отправился в Космический Центр им. Джонсона в Хьюстоне, чтобы исследовать авиационную электронику. Там была группа Салли Райд. Они расследовали вопросы безопасности, разговаривая с астронавтами об их впечатлениях. Салли познакомила меня с инженерами по программному обеспечению, и они показали мне тренажеры для астронавтов.
Все это действительно очень необычно. Там есть всевозможные имитаторы с изменяющейся степенью сложности, на которых тренируются астронавты. Один из них был очень похож на настоящую машину: поднимаешься по лестнице, входишь внутрь; в окнах компьютеры воспроизводят нужные изображения. Когда пилот передвигает рычаги управления, вид за окнами меняется.
Перед этим тренажером стояла двойная задача: обучать астронавтов и проверять компьютеры. В задней части отсека, где сидит команда, располагались лотки, наполненные кабелями, спускавшимися вниз через грузовой отсек и уходившими куда-то в задний отсек, где специальные инструменты моделировали сигналы двигателей — давление, скорость течения топлива и т.п. (Кабели были доступны, потому что техники проверяли «перекрестную наводку» — помехи в сигналах, передаваемых туда-обратно.)
Самим шаттлом управляет, главным образом, компьютер. Как только он включается и начинает работать, то внутри больше никто ничего не делает, потому что возникает огромное ускорение. Когда шаттл достигает определенной высоты, компьютеры на некоторое время немного снижают осевую нагрузку двигателя, а по мере увеличения разрежения воздуха снова ее поднимают. Примерно через минуту после этого отпадают два твердотопливных ракета-носителя; еще через несколько минут отпадает основной топливный резервуар, причем все операции контролируются компьютерами. Шаттл автоматически попадает на орбиту — астронавты просто сидят на своих местах.
У компьютеров шаттла не хватает памяти, чтобы хранить все программы до конца полета. После попадания шаттла на орбиту астронавты вынимают некоторые кассеты и загружают программу для следующей фазы полета — всего этих фаз шесть. Ближе к концу полета астронавты загружают программу возвращения на Землю.
На борту шаттла четыре компьютера, обрабатывающих одни и те же программы. Обыкновенно все четыре компьютера работают абсолютно согласованно. Если один компьютер выходит из согласования, то полет все равно может продолжаться. Но если согласованно работают только два компьютера, полет необходимо прекратить, и шаттл должен немедленно вернуться на Землю.
Для большей безопасности на борту есть еще и пятый компьютер, расположенный отдельно от четырех предыдущих, с проводами, идущими по другим каналам. В этот компьютер заложено всего две программы: программа подъема и программа спуска. (У него едва хватает памяти на размещение двух этих программ.) Если что-то произойдет с остальными компьютерами, то этот пятый компьютер сможет вернуть шаттл на Землю. Его никогда нельзя использовать ни для чего другого.
Но наиболее эффектная вещь — это посадка. Как только астронавты узнают, где они должны приземлиться, они нажимают одну из трех кнопок — обозначенных как Эдвардс, Уайт Сэндс и Кеннеди, — благодаря чему компьютер узнает, где приземлится шаттл. Затем несколько маленьких ракет его немного замедляют и вводят в атмосферу под почти прямым углом. Это опасная часть, во время которой нагревается все покрытие.
В течение этого времени астронавты ничего не видят, и все изменяется настолько быстро, что снижение должно проводиться автоматически. На высоте около 35 000 футов шаттл замедляется до скорости, не превышающей скорость звука, и тогда им можно управлять вручную, если возникнет такая необходимость. На высоте же в 4 000 футов происходит нечто, что выполняет не компьютер: пилот нажимает на кнопку, чтобы опустить шасси.
Я нашел это очень странным — глупость, которая, очевидно, связана с психологией пилотов: они герои в глазах публики; все считают, что именно они управляют шаттлом, тогда как истина в том, что им не нужно ничего делать до того момента, когда они нажимают кнопку, чтобы опустить шасси. Для них просто невыносима мысль, что, на самом деле, им делать нечего.
Я считал более безопасным тот вариант, когда шасси опускались бы компьютером на тот случай, если астронавты по какой-то причине потеряют сознание. Инженеры-программисты со мной согласились и добавили, что если опустить шасси раньше или позднее нужного времени, то возникнет очень опасная ситуация.
Инженеры рассказали мне, что наземное управление может послать на шаттл сигнал спуска шасси, но подобное дублирование создавало некоторую неуверенность: что произойдет, если пилот, находясь в полубессознательном состоянии, считает, что шасси должны опуститься в определенное время, а контролер на земле знает, что это время ошибочно? Было бы гораздо лучше, если бы всем процессом управлял компьютер.
Раньше пилоты также управляли тормозами. Однако это создавало множество проблем: если вы слишком много тормозили в начале посадочной полосы, то к ее концу тормозная колодка стиралась до основания, так что вы не могли остановиться! Тогда программистов попросили написать компьютерную программу для управления тормозами. Сначала астронавты возражали против подобной перемены, но теперь они довольны, так как автоматический тормоз работает просто превосходно.
Несмотря на то, что в Джонсоне пишут много превосходных программ, компьютеры, которыми оборудован шаттл, настолько устарели, что их уже даже не производят. Они оснащены памятью старого типа, состоящей из маленьких ферритовых сердечников, через которые проходят проводки. Тем временем, мы уже разработали гораздо лучшее аппаратное обеспечение: современные кристаллы памяти гораздо меньше старых, обладают гораздо большей емкостью и гораздо более надежны. Они содержат внутренние коды исправления ошибок, которые автоматически поддерживают память в хорошем состоянии. С помощью современных компьютеров мы можем создавать отдельные программные модули, так что изменение полезной нагрузки не станет требовать грандиозного изменения программ.
Из-за огромных инвестиций, сделанных в имитаторы полета и все остальное аппаратное обеспечение, начинать все заново и заменять миллионы строк программ, которые создавались постепенно, было бы очень дорого.
Я узнал, как программисты разрабатывали авиационную электронику для шаттла. Одна группа создавала части программ. После этого части объединялись в огромные программы, которые тестировала независимая группа.
Когда обе группы приходили к выводу, что все ошибки устранены, они проводили имитацию всего полета, во время которой проверяется каждая часть системы шаттла. Для таких случаев у них был особый принцип: эта имитация — не просто упражнение по проверке состояния программ; это реальный полет — если сейчас что-то выйдет из строя, то это очень серьезно, как если бы на борту шаттла действительно были астронавты и у них возникли проблемы. Речь идет о вашей репутации.
За много лет, в течение которых они этим занимались, выход из строя происходил всего шесть раз на этапе имитации полета и ни одного раза во время реального полета.
Таким образом, было похоже, что программисты знают свое дело: они знали, что их работа жизненно важна для шаттла, но представляет собой потенциальную опасность, поэтому они были в высшей степени аккуратны. Они писали программы управления очень сложными механизмами в среде с радикально изменяющимися условиями — программы, измеряющие эти изменения, выказывают гибкость в своих ответных сигналах и поддерживают высокую точность и безопасность. Я бы сказал, что в некоторых отношениях они когда-то занимали важнейшее место в том, что касается обеспечения качества в роботизированных или интерактивных компьютерных системах, но из-за устаревшего аппаратного обеспечения теперь об этом не может быть и речи.
Я не исследовал авиационную электронику столь же тщательно, как двигатели, поэтому, быть может, я несколько голословен, но сам я так не считаю. Инженеры и руководители отлично находили общий язык друг с другом и внимательно следили за тем, чтобы не снижать критерии безопасности.
Я сказал программистам, что считаю их систему и их отношение к своей работе очень хорошим.
Один парень пробормотал что-то насчет шишек из НАСА, которые хотят урезать финансирование тестирования программ, чтобы сэкономить деньги: «Они постоянно твердят, что мы всегда проходим тесты, так в чем смысл такого их количества?»
До отъезда из Хьюстона я продолжил свое тайное расследование слуха о том, что Белый Дом надавил на НАСА с тем, чтобы шаттл был запущен. Хьюстон является коммутационным центром, поэтому я отправился к специалистам по телеметрии и спросил их о системе коммутации. Я проделал все то же самое, что и во Флориде — люди отнеслись ко мне так же хорошо, — но на этот раз я узнал, что если бы астронавты захотели связаться с Конгрессом, Белым Домом или чем-то еще, то они должны были предупредить центр за три минуты — не за три месяца, не за три дня, не за три часа, — за три минуты. А потому они могут это сделать, когда захотят, и заранее ничего не нужно записывать. Так что это был тупик.
Однажды я поговорил об этом слухе с репортером из «Нью-Йорк Таймс». Я спросил его: «Как вы выясняете истинность подобных слухов?»
Он говорит: «Я подумал, что могу, по крайней мере, поговорить с людьми, которые работают с системой коммутации. Я попробовал это, но мне не удалось ничего узнать».
В течение первой половины апреля группа генерала Кутины получила окончательные результаты испытаний, которые НАСА проводила в Маршалле. НАСА приложила свою собственную интерпретацию результатов, но мы подумали, что должны написать все заново, по-своему. (Единственным исключением стали те случаи, когда испытания ничего не показали.)
Генерал Кутина создал в Маршалле целую систему для написания отчета нашей группы. Этот процесс длился два дня. Но прежде чем мы смогли хоть чего-то достигнуть, мы получили от мистера Роджерса послание: «Возвращайтесь в Вашингтон. Вы не должны писать свой отчет там».
Таким образом, мы отправились в Вашингтон, и генерал Кутина выделил для меня офис в Пентагоне. Офис был замечательным, но у меня не было секретаря, поэтому я не мог работать быстро.
Бил Граэм всегда очень мне помогал, поэтому я позвонил ему. Он устроил так, что я занял кабинет одного из его подчиненных — тот был в отъезде — и смог воспользоваться услугами его секретаря. Она очень и очень мне помогла: она могла записывать информацию с той же скоростью, с какой я говорил, а потом она все редактировала, исправляя мои ошибки. Мы очень напряженно трудились в течение двух или трех дней и написали таким образом большие разделы отчета. Все получалось очень хорошо.
Нил Армстронг, который тоже входил в нашу группу, очень умело излагал свои мысли на бумаге. Он мог посмотреть на мою работу и немедленно найти любое слабое место и каждый раз оказывался прав, что производило на меня очень сильное впечатление.
Каждая группа писала одну или две главы основного отчета. Наша группа писала какую-то часть «Главы 3: Катастрофа», но основной нашей задачей была «Глава 4: Причина катастрофы». Однако одним из результатов такой системы стало то, что мы так и не встретились, чтобы обсудить, что узнала каждая группа — прокомментировать открытия друг друга с разных точек зрения. Вместо этого мы занимались тем, что называется «правкой» — или тем, что мистер Хотц позднее назвал «высечением надписи на надгробной плите», — исправлением пунктуации, улучшением предложений и т.п. Мы так и не обсудили свои идеи по-настоящему, кроме разве что нескольких случаев, когда такое обсуждение возникало в процессе правки.
Например, возникал вопрос: «В этом предложении о двигателях следует употребить вот эти слова или вот те?»
Тогда я пытался дать начало небольшой дискуссии. «По моим собственным ощущениям, я получил впечатление, что двигатели далеко не так хороши, как вы здесь утверждаете…»
Тогда они говорили: «Что ж, мы воспользуемся более консервативной формулировкой», — и переходили к следующему предложению. Возможно, это очень эффективный способ быстрого написания отчета, но мы проводили одно заседание за другим, занимаясь исключительно исправлением слов.
Время от времени мы прерывались, чтобы обсудить типографские проблемы и цвет обложки. И после каждого обсуждения нас просили проголосовать. Я считал, что лучше всего голосовать за тот же цвет обложки, который был выбран на прошлом заседании, но в результате всегда оставался в меньшинстве! В конце концов, мы выбрали красный цвет. (Книга вышла в обложке синего цвета.)
Однажды я разговаривал с Салли Райд о чем-то, что упоминал в своем отчете о двигателях, но, судя по всему, она об этом не знала. Я сказал: «Разве Вы не видели мой отчет?»
Она говорит: «Нет, мне его никто не давал».
Тогда я иду в офис Кила и говорю: «Салли утверждает, что у нее нет копии моего отчета».
Он изображает удивление и поворачивается к своему секретарю. «Пожалуйста, сделайте копию отчета доктора Фейнмана для доктора Райд».
Потом я узнаю, что моего отчета не видел и мистер Эчесон.
— Сделайте копию и отдайте ее мистеру Эчесону.
В конце концов, я все понял и сказал: «Доктор Кил, я думаю, что моего отчета не видел никто».
Тогда он говорит своему секретарю: «Пожалуйста, сделайте копии для всех членов комиссии и раздайте им».
В конце концов, я ему сказал: «Я ценю ту работу, которую Вы выполняете, и я понимаю, что трудно запомнить все. Но мне казалось, что Вы сказали мне, что показали мой отчет всем».
Он говорит: «Ну, я имел в виду всем, кто здесь работает».
Позднее, во время разговора с людьми, которые там работали, я узнал, что они тоже не видели моего отчета.
Когда остальные члены комиссии наконец-то увидели мой отчет, большинство сочли его очень хорошим и предложили включить его в какую-нибудь часть общего отчета комиссии.
Получив такую поддержку, я постоянно поднимал вопрос о своем отчете. «Мне бы хотелось устроить заседание, чтобы обсудить, что нам с этим делать», — не переставал твердить я.
— Мы устроим заседание по этому поводу на следующей неделе, — таков был стандартный ответ. (Мы были слишком заняты правкой и голосованием по поводу цвета обложки.)
Мало-помалу я осознал, что мой отчет, в том виде, в каком он был написан, потребовал бы долгой правки, а времени у нас уже не было. Тогда кто-то предложил, чтобы мой отчет был оформлен как приложение. Тогда его не нужно будет править, чтобы он соответствовал основному тексту.
Однако некоторые члены комиссии настаивали на том, чтобы мой отчет был каким-то образом присоединен к основному: «Приложения выйдут только через несколько месяцев, поэтому если Ваш отчет выйдет в качестве приложения, то его никто не будет читать», — сказали они.
Однако я решил пойти на компромисс и согласиться на то, чтобы отчет вышел в виде приложения.
Но теперь возникла новая проблема: мой отчет, который я написал дома на своем текстовом процессоре, нужно было перевести из формата IBM в большую систему документации, которую использовала комиссия. Это можно было сделать с помощью оптического сканирующего прибора.
Однако мне нужно было немного побегать, чтобы найти нужного человека, который смог бы это сделать. Потом это было сделано не сразу. Когда я спросил, что произошло, этот парень сказал мне, что потерял копию, которую я ему дал. Поэтому мне пришлось дать ему еще одну копию.
Через несколько дней я закончил писать отчет по авиационной электронике и решил объединить его со своим отчетом по двигателям. Тогда я взял свой новый отчет, принес его к тому парню и сказал: «Я хочу объединить этот отчет с предыдущим».
Потом мне по каким-то причинам понадобилось посмотреть копию своего нового отчета, но парень дал мне старую копию, в которой не было информации по авиационной электронике. «А где последний вариант моего отчета?» — спросил я.
— Я не могу его найти, — и т.д. Я уже не помню всех деталей этой истории, но, по-моему, мой отчет постоянно либо отсутствовал, либо в наличии была лишь его часть. Быть может, это действительно были всего лишь какие-то промахи, но их было слишком много. Так что мне пришлось побороться за право моего отчета на существование.
Потом в последнюю пару дней, когда основной отчет уже был готов к отправлению в печать, доктор Кил захотел, чтобы мой отчет тоже был исправлен, несмотря на то, что он идет в качестве приложения. Тогда я отнес его к постоянно работающему там редактору, способному человеку по имени Хансен, и он откорректировал мой отчет, не изменяя его смысла. Потом его вернули в машину под названием «Вариант N23» — он прошел множество переработок.
(Кстати: 23 варианта имело все. Кто-то заметил, что компьютеры, которые должны увеличивать скорость выполнения нами разных действий, не увеличили скорость написания нами отчета: раньше мы делали всего 3 варианта — так как их очень трудно печатать, — теперь же мы производим 23 варианта!)
На следующий день я увидел, что Кил работает над моим отчетом: он обводил в круги целые его части, а потом перечеркивал их крестом; там были всевозможные мысли. Он объяснил: «Эту часть можно вычеркнуть, потому что она в большей или меньшей степени говорит о том же, о чем мы уже написали в основном отчете».
Я попытался объяснить, что гораздо проще проследить за логикой, когда все мысли вытекают одна из другой, а не тогда, когда все разбросано маленькими кусочками по всему отчету. «Как никак, — сказал я, — это будет всего лишь приложение. Так что не будет ничего страшно, если какие-то мысли в нем повторятся».
Доктор Кил вернул некоторые части моего отчета на свои места там, где я его об этом попросил, но в отчете по-прежнему отсутствовало так много всего, что он уже не был похож на то, что представлял собой ранее.