Математические чудеса для ракетчиков: аэрокосмическая промышленность, компьютерное программирование и подъем IBM

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

Даже если вы настоящий знаток математики, вы, вероятно, подумаете, что складывать и вычитать 10-значные числа со скоростью 200 в секунду не только фантастически, но и невозможно. Это фантастика, но не невозможно, по крайней мере, для новой машины электронной обработки данных, которая прибыла в MSD неделю назад.¹

Здесь «MSD» означает подразделение ракетных систем корпорации Lockheed Aircraft. Lockheed создала MSD в 1953 году, разместив ее в Ван-Найсе, штат Калифорния, к северу от Голливуда в бассейне Лос-Анджелеса и в нескольких минутах езды на востоке от штаб-квартиры Lockheed в Бербанке. Задача MSD заключалась в том, чтобы вовлечь Lockheed в гонку военных ракет для ядерных межконтинентальных баллистических ракет, управляемых ракет различных типов, а также спутников и их запуска. К 1957 году MSD была переименована в «Ракетно-космический отдел» и переехала на север, в Саннивейл на полуострове Сан-Франциско, где она стала крупнейшим работодателем в этом районе, разработав и производя ядерную баллистическую ракету для подводных лодок Polaris. По случайному использованию MSD можно сделать вывод, что статья «Математические чудеса для ракетчиков» была вырезана из какого-то внутреннего издания Lockheed.

Но как насчет «новой электронной машины обработки данных», которая могла бы выполнять эти «фантастические» расчеты? Статья продолжается:

Новая машина называется машиной обработки данных с магнитным барабаном Type 650 и является одной из первых, поставленных IBM. Это первая ракетная и авиационная промышленность, а также первая по эту сторону реки Миссисипи.

Сегодня IBM 650 признан одним из первых коммерческих электронных компьютеров этой фирмы, но слово «компьютер» еще не попало в вырезку из статьи.

Что должен был сделать MSD 650?

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

Как получилось, что эта вырезка сохранилась до наших дней? Как получилось, что он доступен в цифровой форме, чтобы воспроизвести его здесь в качестве иллюстрации, чтобы вы и ваш автор могли его прочитать? Необходимая причина заключалась в том, что Роберт У. «Боб» Бемер, который в то время работал в подразделении ракетных систем компании Lockheed в Ван-Найсе и впоследствии станет опытным пользователем IBM 650, аккуратно вырезал статью и поместил ее в альбом для вырезок. Достаточные причины заключались в том, что после смерти Бемера в 2004 году в возрасте 84 лет его жена Бетти Бемер пожертвовала все личные документы Бемера Музею компьютерной истории (CHM). В 2018 году музей использовал свой недавний грант «Доступ к историческим записям» от Национальной комиссии по публикациям и документам Национального архива для создания вспомогательного средства поиска документов Бемера, а также для оцифровки и размещения в свободном доступе в Интернете примерно 10 процентов коллекции, более 3000 страниц. .²

Бемер, получивший степень по математике в колледже Альбион, работал в области вычислительной техники в RAND, Lockheed и Marquardt Aircraft, прежде чем присоединиться к подразделению ракетных систем Lockheed в 1954 году. К тому времени, когда Бемер вернулся в Lockheed, он был одним из самых термин и опытные пользователи раннего вклада аэрокосмической техники в электромеханические вычисления: IBM-CPC, «калькулятор с карточным программированием».

Несколькими годами ранее, в 1948 году, инженеры завода Northrup Aircraft в Хоторне недалеко от международного аэропорта Лос-Анджелеса установили новую связь между калькулятором IBM и счетной машиной IBM (высококлассным табулятором). Получившаяся система представляла собой калькулятор, в котором последовательность операций можно было контролировать — программировать — с помощью правильно закодированных последовательностей перфокарт, подаваемых в счетную машину. Важно отметить, что операции, выполняемые системой и контролируемые перфокартами, определялись другим запрограммированным элементом, очень тщательно и специально подключенной «платой» внутри калькулятора. Эти доски определяли пространство операций, которые можно было выполнять, а перфокарты определяли, что на самом деле происходило в этом пространстве. С помощью собственной системы инженеры Northrop смогли автоматизировать сложные технические расчеты, необходимые для их аэрокосмических исследований и разработок.³

IBM увидела в работе инженеров Northrop и их энтузиазме рынок, быстро превращающий пользовательскую инновацию в стандартизированный и разработанный продукт, объявленный в ноябре 1948 года, IBM-CPC. Представление IBM о рынке оказалось продуктивным: к середине 1950-х годов аэрокосмические и другие инженеры, частные фирмы и правительственные организации проглотили около 700 CPC. Недавно оцифрованные части коллекции Бемера показывают нам, что, если считать его раннее резюме в целом точным, то Боб Бемер не только столкнулся с IBM-CPC в самом начале 1949 года в RAND, но и что он также использовал первый и четвертый CPC в истории. производства IBM.⁴

В RAND Бемер научился кодировать CPC для выполнения расчетов, имеющих центральное значение для некоторых из наиболее насущных проблем новой холодной войны, определяемых ядерным оружием — Советский Союз взорвал свою первую ядерную бомбу вскоре после того, как Бемер присоединился к RAND — доставленную аэрокосмическими аппаратами. . Бемер использовал CPC для анализа таких проблем, как стратегические военные игры, статистические бомбардировки, защита от ядерного деления и стратегические исследования периметра самолетов, что бы это ни значило. Более того, в RAND и вскоре после этого в Lockheed до 1952 года Бемер разрабатывал то, что он называл системами для CPC, которые, по сути, представляли собой системное программное обеспечение или своего рода операционные системы. Системы CPC Бемера представляли собой запрограммированные платы, которые определяли пространство операций, в пределах которого вычисления могли быть автоматизированы посредством программного управления с помощью перфокарт. Одна из этих систем, названная FLODESC, была описана Бемером как вычислительная система общего назначения для CPC. В частности, это дало возможность выполнять вычисления с использованием чисел с плавающей запятой. Примечательно, что Бемер хранил свое описание FLODESC вместе с другими работами CPC в папке, ошибочно помеченной как Программирование на IBM 650, в своих файлах.

Тем не менее, возможно, обозначение Бемером своей папки с программированием CPC как «Программирование на IBM 650» имеет смысл — помимо возможного повторного использования канцелярских принадлежностей — в том смысле, что он сразу же перешел от передового использования CPC к широкому использованию одного из первых коммерческих цифровых продуктов IBM. электронные компьютеры, IBM 650 — машина, которой хвастался Локхид, совершала «математические чудеса» для своих «ракет». Конечно, некоторые элементы дизайна, анализа, подхода и математики, которые Бемер отточил для CPC, были перенесены на его быстрое знакомство с компьютером IBM 650.

Действительно, в кратких воспоминаниях о своем опыте работы с IBM 650, опубликованных в 1986 году в журнале Annals of the History of Computing, Бемер вспоминает, что одной из его первых задач при поступлении на работу в подразделение ракетных систем Lockheed было для установки нового IBM 650 подразделения. Один из первых 10 произведенных 650-х, установка потребовала от Бемера поездки через всю страну в Эндикотт IBM, Нью-Йорк, объекты для тестирования компьютера, первого в своем роде - в воспоминаниях Бемера - предназначен для научной работы. В то время как IBM 650 в первую очередь задумывалась IBM как бизнес-компьютер меньшего масштаба, босс Бемера в подразделении ракетных систем Арт Хаббард делал довольно существенную ставку на то, что 650 может быть доступным и полезным инструментом для научных и инженерных расчетов. : Он заказал три штуки!⁵

После подключения 650 к сети первой важной задачей для Бемера и его коллег было заставить 650 выполнять вычисления с плавающей запятой, столь важные для работы инженеров ракетного подразделения. Как позже вспоминал Бемер, «почти все научные исследования 650 проводились с помощью программ с плавающей запятой, которые нам приходилось изобретать самим». В течение нескольких месяцев, опираясь на его предыдущую работу по созданию «системы» с плавающей запятой для CPC и аналогичную работу его коллег, группа Бемера создала «систему» ​​с плавающей запятой для своего нового IBM 650, названную системой FLAIR, для «плавающей абстракции». интерпретационные процедуры». Связь между основополагающей работой Бемера над CPC и его первой работой по созданию IBM 650, пригодной для использования инженерами Lockheed, была тесной.

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

Письмо от 14 февраля 1955 года Бемеру от Дональда У. Пендери, тогдашнего регионального менеджера IBM в Лос-Анджелесе, а затем главного корпоративного планировщика Xerox, было оцифровано в рамках музейного проекта обработки истории программного обеспечения и показывает, в какой степени IBM опирался на опыт Бемера с 650, а также на лидирующие позиции ракетного подразделения над IBM в то время в области программного обеспечения. «Дублированные программы и бланки карточек, которые вы распространяли, — писал Пендери, — будут очень полезны для других наших клиентов».

Мнение Пендери о полезности программного обеспечения и опыта Бемера и ракетного подразделения для других первых научных и инженерных пользователей IBM 650, безусловно, отражалось в мнениях, высказанных некоторыми из этих самых пользователей. С. А. Лоуренс, директор отдела управления системами Collins Radio в Айове, написал Бемеру в следующем месяце, в марте 1955 года, поблагодарив Бемера и его коллег за представление делегации Collins Radio на IBM 650. «Мы убеждены», — Лоуренс. написал, «что вы являетесь пионером в области использования 650 и знаете его возможности и ограничения намного лучше, чем, вероятно, даже IBM»⁷

Работа Бемера по распространению информации об использовании ракетным подразделением 650 для аэрокосмической техники и связанного с ним программного обеспечения принесла взаимную выгоду Lockheed, IBM и самому Бемеру. Бемер стал широко известен среди зарождающегося компьютерного сообщества как эксперт по программированию, а IBM и Lockheed оставались в центре разработок по использованию компьютеров IBM для технической работы. Эта трехсторонняя выгода для Lockheed, открывающего свои двери и делящегося своим программным обеспечением с IBM и ее клиентами, была в центре внимания письма Фреда Л. Брауна, менеджера IBM, в мае 1955 года боссу Бемера, Арту Хаббарду.

Г-н. Бемер является признанным лидером в области цифрового анализа, — написал Браун, продолжая, — его вклад в эффективное использование нескольких наших компьютеров имел большое значение для IBM, а также для корпорации Lockheed Aircraft.⁸

Таким образом, читатель может не удивиться, узнав, что всего несколько месяцев спустя IBM переманила Бемера. Бемер покинул подразделение ракетных систем, чтобы присоединиться к IBM и ее усилиям по разработке программного обеспечения. В IBM Бемер внимательно следил за развитием FORTRAN, в то время как он впервые создал систему для выполнения вычислений с плавающей запятой на IBM 705, новом и самом мощном бизнес-компьютере компании. Эта система 705, названная PRINT-1, была продолжением создания Бемером систем с плавающей запятой для IBM 650 и IBM CPC. Из PRINT-1 Бемер перешел в разработку программного обеспечения, связанного с FORTRAN.⁹

К 1957 году Бемер все еще работал в отделе исследований программирования IBM и стал абсолютным приверженцем того, что он называл «автоматическим программированием», то есть программирования на языке программирования высокого уровня и использования компиляторов для создания исполняемого машинного кода. В марте 1957 года Бемер опубликовал короткую заметку в малоизвестном ныне журнале Automatic Control под названием «Как относиться к компьютеру». В статье Бемер высказал мнение, что «компьютер не следует арендовать или покупать, если для его работы не предусмотрена система автоматического программирования или кодирования». Он продолжил, представляя взгляд на «новые синтетические языки… в… процессе, который повлияет на ваше использование компьютеров». Эти языки программирования высокого уровня «будут в основном алгебраическими, как арифметическими, так и логическими, а также лингвистическими, так что процедуры могут состоять из реальных предложений на живом языке».¹⁰

Создавая свою статью, кажется почти уверенным, что Бемер имел в виду работу, проводимую одновременно в отделе автоматического программирования Грейс Хоппер в подразделении Remington Rand Univac компании Sperry Rand. Как можно быть уверенным в этом? Письмо, оцифрованное в рамках проекта по обработке истории программного обеспечения, от Хоппера к Бемеру от 1 апреля 1957 года, сразу после появления статьи Бемера. В очень знакомом письме Хоппер выражает свое восхищение самоуверенной статьей Бемера и сообщает ему обновленную информацию о своей работе с «B-Zero. . . теперь называется Flow-matic в отделе продаж» — ранний скомпилированный язык программирования, разработанный Hopper для программного обеспечения для бизнеса. Похожий на английский язык Flow-matic Хоппер сыграл важную роль в ее последующей работе по созданию знаменитого языка программирования COBOL, на котором до сих пор работают многие ключевые финансовые и государственные системы¹¹.

Эти несколько выдержек из статей Боба Бемера дают дополнительное представление о важности южной Калифорнии для развития электронных цифровых вычислений и, в частности, истории программного обеспечения. Они подчеркивают, как компьютерные эксперты в аэрокосмической отрасли развили важные возможности как в аппаратном, так и в программном обеспечении, которые были на одном уровне или даже превосходили возможности таких производителей компьютеров, как IBM, и как эти ведущие пользователи в аэрокосмической отрасли помогли создать сообщество других пользователей компьютеров. и с производителями компьютеров. Случай Бемера показывает, насколько проницаемы границы между контекстами аэрокосмической отрасли и развивающейся компьютерной индустрии, когда специалисты по компьютерам перемещаются между секторами, внося свой вклад в разработку аппаратного и программного обеспечения в обоих секторах. Карьера Боба Бемера на протяжении десятилетий развивалась во многих других направлениях. Он работал в области вычислений с разделением времени и компьютерных стандартов, таких как ASCII, прежде чем стать одним из первых и громогласных сторонников обеспокоенности, информирования общественности и технических решений для ошибки 2000 года. Все эти увлекательные темы затронуты на 3000 оцифрованных страницах документов Бемера, которые теперь доступны в Интернете через Музей, а в помощи по поиску исследуются десятки тысяч дополнительных страниц, на которых будущих исследователей ждет еще более полная картина.

Примечания

  1. Бемерские вырезки, с. 211.
  2. Путеводитель по бумагам Роберта (Боба) Бемера
  3. Карточный программируемый калькулятор IBM
  4. Джеймс В. Кортада, IBM: Взлет и падение и новое изобретение мировой иконы. МИТ Пресс: 2019, с. 157 и История Джонниака Ф. Дж. Грюнбергера, стр. 2.
  5. Роберт В. Бемер, «Почти 650 воспоминаний о 650», Annals for the History of Computing, т. 8, н. 1, 1986, стр. 66–69.
  6. Бемерские вырезки, с. 186.
  7. Бемерские вырезки, с. 187.
  8. Бемерские вырезки, с. 184.
  9. Материалы Западной объединенной компьютерной конференции, 7–9 февраля 1956 г., с. 52.
  10. Роберт В. Бемер, «Как рассматривать компьютер», Automatic Control, март 1957 г., стр. 66–69.
  11. Бемерские вырезки, с. 151.

Ресурсы

В поисках помощи

Оцифрованные материалы

Вставка 1: Мемуары — вычисления до фортрана, 102785394 (1 папка)

Вставка 2: Речи и документы, 102785430 (5 папок)

Вставка 3: IBM 650 — лабораторная книга, 102785388 (1 папка)

Вставка 4: проблема 2000 года — исторический файл, 102785459 (2 папки)

Для получения дополнительной информации о нашем проекте обработки истории программного обеспечения, поддерживаемом Национальной комиссией по историческим публикациям и записям Национального архива, см.:

Первоначально опубликовано на https://www.computerhistory.org 25 марта 2019 г.