bug的由来,首个计算机Bug的由来

导读:“Bug”一词,是指“故障”、“缺陷”。了解软件开发的朋友都非常熟悉,程序员和测试人员更不用说,在工作中会常遇到。
9月9日下午在微博上看到@新浪科技发了一条微博消息:
#历史上的今天#1945年的今天,一只小飞蛾钻进了计算机电路里,导致系统无法工作,一位名叫格蕾丝·赫柏的人把飞蛾拍死在工作日志上(见图),写道:就是这个 bug(虫子),害我们今天的工作无法完成——于是,bug一词成了电脑系统程序的专业术语,形容那些系统中的缺陷或问题。
首个计算机Bug的由来bug的由来
(图1)
(注1:微博消息是摘自一位新浪博主的博文,点击进入查看后,可知那位博主也是从网络转载。)
好奇使然,于是在Google查找信息,摘录并编译了一些英文信息。
美国海军网站上的记录
下面的蓝色段落,摘自美国海军网站(Naval History& Heritage Command)。
The following image shows an organism of great historic significance, reportedly first identified and named by Lieutenant Grace Murray Hopper while she was _disibledevent=> 下面这张画展示了一个有伟大历史意义的生物,由格蕾丝·穆雷·霍波上尉首次确认并命名。1947年,格蕾丝正在海军服役。
首个计算机Bug的由来bug的由来
(图2:美国海军网站的图片,注意图中红色箭头指示的“1947”)
The First "Computer Bug"
首个“计算机Bug”
Moth found trapped between points at Relay# 70, Panel F, of the Mark II Aiken Relay Calculator while it was being tested at Harvard University, 9 September 1947. The operators affixed the moth to the computer log,with the entry: "First actual case of bug being found". They put out the word that they had "debugged" the machine, thus introducing the term "debugging a computer program".
1947年9月9日,正在哈佛大学测试马克II型艾肯中继器计算机,在电板编号为70的中继器触点旁发现了一只飞蛾。操作员把飞蛾贴在计算机日志上了,并写下了“首个发现bug的实际案例”。他们提出了一个词,“debug(调试)”了机器,从而引入新术语“debugging a computer program(调试计算机程序)”。
In 1988, the log,with the moth still taped by the entry,was in the Naval Surface Warfare Center Computer Museum at Dahlgren, Virginia.
1988年,这个仍然贴着飞蛾的日志,保存于弗吉尼亚州达尔格伦的海军水面作战中心计算机博物馆。
维基百科上的词条
另外,在英文维基百科的 Softwar bug 词条中,有比较全面的介绍,摘录翻译部分内容:
“bug”术语的发明,因为格蕾丝·霍波她公布过早期电子计算机的一个故障原因,通常错误地归功于她。这个版本的故事源自下面这段话:“在1946年,当霍波退役后后,她加入哈佛大学的计算机实验室,继续研究马克II型和马克III型计算机的工作。操作员在追踪马克II型的错误时发现继电器中有一只飞蛾,遂有bug术语。这个bug被仔细移除,并被贴在日志本上。这带来的第一个bug,就是我们今日所说的错误(error)或程序中的故障(glitch)。”
格蕾丝·霍波其实并不是那位发现这只飞蛾的人,只是她欣然承认了而已。虽然日志本上的日期是1947年9月9日(见图2),不过有时候被错误地报导成1945年。发现飞蛾的操作员,包括威廉姆·比尔·伯克,伯克在弗吉尼亚州达尔格伦的海军武器实验室,熟悉工程术语,好逗乐,给飞蛾写下了“首个发现bug的实际案例”。霍波喜欢讲述这个故事。这个日志本现存于史密森尼国立美国历史博物馆,飞蛾还完整地贴于其上。
日志本的信息
从James Huggins的这篇关于第一个计算机Bug的文章中得知:那个日志本经过一些波折后,海军水面作战中心计算机博物馆在1991年捐赠给史密森尼国立美国历史博物馆。后因为经费和空间的缘故,美国历史博物馆拖了好些年才把这个日志本实际展出。
综述
综合上述信息,可以知道新浪科技所发的那条微博消息时,有不少错误,至少有两处。如下:
  1. 时间错误,并非“1945年的9月9日”,应是“1947年的9月9日”。
  2. 关于飞蛾的死,并不是格蕾丝·赫柏拍死的。发现飞蛾的时候,飞蛾已经死亡。
关于时间错误,因为新浪科技编辑是摘编自一篇个人博客,要编辑去查证,有点不现实。
关于飞蛾的死,那个人博客中是说:“哈珀观察这个出错的继电器,发现一只飞蛾躺在中间,已经被继电器打死。她小心地用镊子将蛾子夹出来,计算机又恢复正常。”(且不说个人博主的说法是否正确)编辑硬要说是“格蕾丝·赫柏的人把飞蛾拍死在工作日志” ,有点让人无语。“粗心”不是理由吧?
另外,新浪科技的那条微博转发近3000,并且有不少带V字的账号转发,这条微博,误导了不少受众啊。
首个计算机Bug的由来bug的由来
百度百科中的bug词条,在介绍bug由来时,写的也是“1945年”。此外,很多相关的中文文章,也都写着“1945年”。
结束语
虽说网络信息很多,判断真伪不容易,但像这种涉及国外的历史信息,其实多动动手,就可以在英文维基百科中找到相应词条。
对程序员来说,英语很重要!这里就不多解释,能体会的朋友自然可以体会。
时间匆忙,或许本文有些地方也许有误,可以在评论中留言,也可以在@程序员的那些事 微博中交流讨论。
----------------------------------------------------
本文出处:伯乐在线- 职场博客
本文链接:http://www.jobbole.com/entry.php/1408
转载请注明文章来源和链接,否则视为侵权,谢谢合作!
Tags:  中秋节的由来 教师节的由来 计算机的由来 计算机病毒的由来 bug的由来

延伸阅读

最新评论

发表评论