Первый баг был настоящим: мотылёк, Грейс Хоппер и рождение слова
Почему ошибку в программе называют «багом» — жучком? За словом стоит реальный мотылёк, приклеенный скотчем в журнал в 1947 году, и женщина, научившая компьютеры понимать слова.
Самый знаменитый баг в истории можно потрогать — он лежит под стеклом в музее.
Проще попросить прощения, чем разрешения. — любимая фраза Грейс Хоппер
Жучок в реле
9 сентября 1947 года команда инженеров в Гарварде возилась с гигантским электромеханическим компьютером Mark II. Машина сбоила. Покопавшись, инженеры нашли причину в реле №70: между контактами застрял мотылёк и мешал им сомкнуться. Насекомое аккуратно извлекли, приклеили скотчем в рабочий журнал и подписали: «First actual case of bug being found» — «первый реальный случай обнаружения жучка».
Эту запись вела команда, в которой работала Грейс Хоппер. Та страница журнала с настоящим мотыльком сохранилась и сегодня хранится в Смитсоновском музее. Так слово bug навсегда прилипло к ошибкам в технике.
Маленькая поправка к легенде
Красивая история почти правда — но с нюансом. Слово bug в значении «дефект в технике» употребляли ещё инженеры XIX века, в том числе Эдисон. Так что мотылёк не придумал термин — он его обессмертил. Запись в журнале потому и была шуткой: инженеры знали слово «баг» и обрадовались, что нашли наконец буквального жучка. От того же случая пошло и debugging — «вылавливание жучков», отладка.
Кто такая Грейс Хоппер
Хоппер — фигура покруче любого мотылька. Математик с докторской степенью, она пошла на флот во время Второй мировой и попала программировать один из первых компьютеров — Harvard Mark I. Тогда «программировать» означало возиться с переключателями и кодами в машинных числах. Хоппер это не устраивало.
Компьютер, понимающий слова
Главная её идея звучала почти еретически: пусть человек пишет программу понятными словами, а специальная программа сама переведёт их в машинный код. В 1952 году Хоппер создала один из первых компиляторов — A-0. Многие не верили, что машина может «писать программы для себя». А она смогла.
Чтобы понять, насколько это было дерзко, представьте эпоху. Считалось, что компьютер — это арифмометр для чисел, и точка. Хоппер же утверждала, что машину можно научить понимать команды, записанные почти как человеческие слова, а перевод в нули и единицы она сделает сама. Сегодня это очевидно: мы пишем print и не задумываемся, во что это превращается. Но кто-то должен был первым доказать, что так вообще можно — и этим человеком была Хоппер.
Из этой линии выросла её мечта о языке, похожем на английский, — и в итоге язык COBOL, на котором до сих пор крутятся банки и страховые. Благодаря Хоппер мы программируем словами вроде if, print и while, а не голыми числами.
| Вклад Грейс Хоппер | Почему это важно |
| Один из первых компиляторов (A-0) | Машина переводит человеческий код в свой |
| Идея языка, близкого к английскому | Программирование стало доступнее |
| Влияние на COBOL | Бизнес-системы на десятилетия |
| Запись про «первый баг» | Слово, которое знают все |
Адмирал и наносекунда
Хоппер дослужилась до контр-адмирала ВМС США. На лекциях она раздавала слушателям кусочки провода длиной около 30 см — расстояние, которое свет проходит за одну наносекунду. Так абстрактная скорость становилась осязаемой. Каждый раз, когда вы говорите «в коде завёлся баг», вы цитируете тот самый журнал 1947 года — и отдаёте дань женщине, научившей компьютеры понимать человеческие слова.