Мельница мифов: откуда взялись буки и баги?

Весьма распространенным заблуждением считается история о том, что будто бы слово "баг" в значении "ошибка компьютерной программы" появилась в 40-х годах прошлого столетия после того, как бабочка, попав в механизм одного из первых компьютеров, вызвала сбой в его работе. Но это не так — данное слово в подобном значении использовалось еще в XIX веке.
Все те, кто пользуется компьютером, конечно же, знают, что такое "баг". Этим словом, которое в английском языке еще означает и "насекомое" (от староанглийского bug - жук), обозначают ошибку в программе или даже во всей операционной системе, которая выдает неожиданный или неправильный результат. Считается, что большинство багов возникают из-за ошибок, допущенных разработчиками программы в ее исходном коде, либо в дизайне. Но в то же время некоторые баги могут возникать из-за некорректной работы компилятора, вырабатывающего некорректный код. Соответственно, программу, которая содержит большое число багов, серьезно ограничивающие ее работоспособность, называют "бажной" или "багнутой" (англ. buggy), а по-русски - "глючной".
Не знаю, как у вас, а лично у меня всегда возникал вопрос — какая ассоциативная связь между насекомым и программной ошибкой? Я задавал его многим моим друзьям, которые занимались программированием, и практически все они рассказывали мне такую историю. Оказывается, один раз насекомое действительно устроило сбой работы компьютера. Впрочем, давайте обо всем по порядку.
Давным давно, 9 сентября 1945 года ученых Гарвардского университета вызвали для того, чтобы определить причину сбоя в работе вычислительной машины Mark II Aiken Relay Calculator, который произошел накануне. Покопавшись в этой громадной куче приборов, соединенных проводами, они обнаружили бабочку, застрявшую между контактами электромеханического реле. Стало ясно, что именно она и явилась причиной сбоя. Одна из сотрудниц университета Грейс Хоппер так сформулировала результат исследований: "неполадку вызвал баг". После чего извлеченное насекомое было вклеено скотчем в технический дневник, с соответствующей сопроводительной надписью. Которую, по словам моих знакомых, до сих пор можно увидеть в этом журнале, хранящемся в университетском научном музее.
Читайте также: Чарльз Бэббидж — отец компьютера XIX в.
Я думаю, эту историю слышали многие и даже посчитали ее правдивой. Но на самом деле все было не совсем так, как описывается в канонической версии. Во-первых, этот случай произошел не в 1945, а в 1947 году. Во-вторых, надпись в журнале гласила о том, что: "First actual case of bug being found" (англ. "первый реальный случай, когда жук был найден"). Из чего следует то, что о существовании "мерзкого жука", устраивающего помехи, техники и ученые знали и раньше, просто никак не могли его найти. Но тогда получается, что слово "баг" в значении "ошибка, сбой" появилось на свет не в 1947 году?
Действительно, это так. Если посмотреть документы, относящиеся к периоду Второй мировой войны, то вы найдете использование этого слова в соответствующем значении чуть ли не в каждом втором отчете американских и английских радистов. Тогда "багами" называли самые разные помехи, возникающие при радиосвязи (треск, свист, и т. п.). Так что фраза о том, что "связь установить не удалось из-за багов на данной частоте" была вполне обычной.
Однако, как выяснилось, на самом деле данный термин куда старше XX столетия. Его можно встретить, например, в дневниках Томаса Эдисона. Так, в 1878 году он писал о том, что: "Это повторялось снова и снова со всеми моими изобретениями. Первым шагом была интуиция, за ней следовала вспышка, затем возникали препятствия — и они исчезали, потом возникали Баги — так называются маленькие недочеты и трудности — и необходимы месяцы постоянного поиска, исследований и тяжелого труда до успеха или неудачи".

































