Баг: первый настоящий жук
Слово: баг, bug · где услышишь: везде, где пишут код, — в ревью, в задачах, на занятиях
«Истории слов» — рубрика буткемпа Hammerhall. Наша команда строит учебную платформу и сервисы вокруг неё, а здесь рассказывает, откуда взялись слова, на которых говорит.
Гарвард, 9 сентября 1947 года. Mark II — огромная вычислительная машина на реле — встаёт. Инженеры ищут неисправность и в реле № 70 на панели F находят мотылька, застрявшего между контактами.
Кто-то из команды вынимает его, вклеивает скотчем в журнал машины и делает запись. Она помечена 15:45 — без четверти четыре дня — и заканчивается словами: «First actual case of bug being found» — «первый настоящий случай, когда найден жук». Журнал с мотыльком и сегодня хранится в Смитсоновском музее американской истории.
В той команде работала Грейс Хоппер (Grace Hopper) — математик, одна из первых программистов, потом контр-адмирал флота США. В 1968 году она рассказывала в интервью: «Когда мы отлаживали Mark II, он стоял в другом здании, на окнах не было сеток, работали мы, конечно, ночью — и налетели все жуки на свете. Однажды ночью машина встала, мы пошли искать жука — и нашли настоящего, большого мотылька». И добавила, что мотылёк, насколько она знает, так и лежит в журнале в Гарварде. А журнал в итоге оказался у флота — в музее военно-морского центра — и уже оттуда попал в Смитсоновский.
Почему «настоящий»#
Перечитай запись в журнале. Не «найден жук», а «первый настоящий случай». Смешно это, только если слово «жук» (bug) про неисправность все и так знали. Сама Хоппер начинает рассказ словами «когда мы отлаживали» — по-английски debugging, «выводили жуков». Машину отлаживали ещё до мотылька. Глагол debug словари находят в 1945 году — в британском авиационном журнале, об испытаниях моторов и самолётов.
Гарвардская коллекция научных инструментов уточняет: инженеры-электрики называли «жуками» трудно находимые неисправности в приборах ещё до 1944 года. А команда предыдущей машины, Mark I, перенесла это слово на неожиданные ошибки в программе.
Само слово старше мотылька лет на 70. В марте 1878 года Томас Эдисон (Thomas Edison) писал Уильяму Ортону (William Orton), президенту телеграфной компании Western Union: «Вы отчасти были правы, я нашёл „жука“ в своём аппарате». А в ноябре того же года объяснял компаньону, как рождаются изобретения: сначала догадка, она приходит вспышкой, потом начинаются трудности — показываются «жуки» (bugs), «как называют эти мелкие неисправности и трудности», и нужны месяцы работы, прежде чем станет ясно, успех это или провал.
В 1889 году лондонская газета растолковала метафору: Эдисон две ночи искал «жука» в своём фонографе — так говорят, когда разбираются с трудностью: будто внутрь забралось воображаемое насекомое и устраивает все неприятности. Придумал ли слово сам Эдисон, точно неизвестно: он так говорил и писал, но есть сведения, что у телеграфистов «жук» встречался и чуть раньше.
Ночное пугало#
А откуда само английское bug? Скорее всего, от средневекового bugge — «что-то пугающее, пугало». В английской Библии 1535 года есть строка: «не придётся тебе бояться никаких bugges ночью». В русском Синодальном переводе тот же стих звучит так: «Не убоишься ужасов в ночи». Насекомым — сначала клопом — bug стал только в XVII веке, а от старого пугала в английском остались bugbear — страшилище и bugaboo — бука.
Выходит, у бага длинная дорога: ночной ужас, клоп, неисправность в аппарате Эдисона — и только потом мотылёк в реле.
Правда и легенда#
Легенда звучит так: «Грейс Хоппер нашла первый баг — мотылька — и придумала это слово». Её повторяют даже солидные издания. Правда скромнее и интереснее.
Слово было задолго до Хоппер. Журнал, по мнению музея, скорее всего, не её. Кто вклеил мотылька — источники расходятся. Даже год в старых подписях и статьях стоит другой — 1945. Сама Хоппер вспоминала ночь, хотя запись в журнале сделана днём.
А вот прославила историю действительно она: десятилетиями рассказывала её на лекциях как шутку. И вместе с командой помогла bug и debug прижиться у программистов.
Баги у нас#
У нас слово «баг» звучит каждый день. Код платформы проходит ревью — его читает не только автор, — и у каждой найденной ошибки есть уровень серьёзности.
Ошибки бывают и в текстах — в том числе в этих самых «Историях слов». Их записывают, и из них выросло правило рубрики: красивая история слова — тоже факт. История с мотыльком — хорошая проверка этого правила: в ней путаются год, человек и даже машина. Поэтому баг мало найти — его нужно записать, как тогда, в журнал.
Баг не открыли в 1947 году — тогда его только вклеили в журнал.
Источники
- Smithsonian, National Museum of American History, «Log Book With Computer Bug» — журнал с мотыльком: запись, команда, «probably not Hopper's», жуки Эдисона.
- Smithsonian, Computer Oral History Collection: интервью с Грейс Хоппер, 1968 — история мотылька её словами.
- Edison Papers, «Edison Invents the Technical „Bug“» — письма Эдисона 1878 года о «жуках».
- Fred R. Shapiro, «Etymology of the Computer Bug: History and Folklore», American Speech, т. 62, № 4, 1987 — заметка в лингвистическом журнале: что в истории правда, а что фольклор.
- Etymonline, «bug» — от средневекового пугала до неисправности в машине.
- JSTOR Daily, «The Bug in the Computer Bug Story», 2022 — популярный пересказ: газета 1889 года и что напутали позже.