整理 | 王启隆
透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。
今天是 2021 年 11 月 2 日,1815 年的今天,乔治·布尔(George Boole)诞生,他提出的布尔逻辑理论,首次定义了逻辑代数系统,在 10 月 30 日的专栏里有过详细介绍。回顾近现代的科技历史,11 月 2 日这一天还诞生了许多形形色色的事件,它们对我们如今的科技进程无不做出了关键的影响。
1916 年 11 月 2 日:编程语言先驱 Adriaan van Wijngaarden 出生
Adriaan van Wijngaarden 于 1916 年 11 月 2 日出生在荷兰,他是编程语言学和语言翻译的领导者,也是编程语言 ALGOL 60 的贡献者;他领导将 ALGOL 60 改写为 ALGOL 68 的项目,这是当时最先进的编程语言,而且激发了远远领先于它的时代的特性。1986 年,他获得了 IEEE 计算机学会先锋奖。Wijngaarden 于 1987 年逝世,享年 71 岁。
Wijngaarden 于 1939 年从代尔夫特理工大学机械工程专业获得学位;随后,他攻读了流体力学博士学位,但后来放弃了这一领域。1945 年,他加入了国立研究院;第二年,他和一个团队前往英国,了解二战期间那里开发的新技术。在英国,Wijngaarden 开始对自动计算的新想法感兴趣;1947 年 1 月 1 日,他成为阿姆斯特丹全新的数学中心计算部门的负责人,随后,他进一步访问了英国和美国,为建造第一台荷兰计算机 ARRA 收集想法。
Wijngaarden 是最初的 ALGOL 语言和后来的 ALGOL 68 的设计者之一,为此他开发了一种两级形式语法,后来被称为 Van Wijngaarden 语法。1962 年,他作为国际信息处理联合会(IFIP)算法语言和微积分工作组 2.1 成员,指定、维护和支持编程语言 ALGOL 60 和 ALGOL 68;ALGOL 语言极大地影响了许多其他语言,并且是计算机协会 30 多年来在教科书和学术资源中使用的算法描述的标准方法。
资料来源:维基百科
1948 年 11 月 2 日:NP 问题的提出者 Leonid Levin 出生
P/NP 问题是一个在理论信息学中计算复杂度理论领域里至今未被解决的问题,也是克雷数学研究所七个千禧年大奖难题之一。P/NP 问题中包含了复杂度类 P 与 NP 的关系;1971 年,图灵奖得主 Stephen A. Cook 和今天要介绍的主角:Leonid Levin,两人相对独立地提出了下面的问题,即复杂度类 P 和 NP 是否是等价的(P=NP?),为世人留下了一大难题。
1948 年 11 月 2 日,Leonid Levin 诞生于苏联,作为一名苏联裔美国计算机科学家,以其在以下方面的工作而闻名:计算中的随机性、算法复杂性和难处理性、平均案例复杂度、数学和计算机科学基础、算法概率、计算理论和信息论。他和图灵奖得主 Stephen Cook 独立发现了 NP 完全问题的存在。
Levin 于 1970 年在莫斯科大学获得硕士学位,师从著名苏联数学家安德烈·科尔莫戈罗夫,并于 1972 年完成了候选人学位的学业要求。1972 年,Levin 开始在国家科学院莫斯科信息传输研究所研究信息论算法问题,1973 - 1977 年在莫斯科国家石油/天然气工业综合自动化研究所担任高级研究科学家。
1978 年,Levin 移民美国,并在一年后自麻省理工学院取得博士学位;他的一生被描述在《Out of Their Minds: the Lives and Discoveries of 15 Great Computer Scientists》一书的一章中,Levin 因发现 NP 完备性和开发平均案例复杂性而在 2012 年获得了 Knuth 奖;Knuth 奖授予为计算机科学基础做出杰出贡献的人,以计算机科学家高德纳(Donald E. Knuth)命名。
而关于 NP 问题,也通常被称为 Cook-Levin 定理,是克雷数学研究所宣布的 7 个千年奖问题之一的基础,并由该机构提供了 100 万美元的奖金。Levin 关于这个定理的期刊文章发表于 1973 年;在那之前的几年里,他就其中的思想进行了演讲,不过,他对于 NP 问题的完整研究结果是在 Cook 发表之后。
把时间回到 2021 年,在如今的纯粹科学研究,通信、交通运输、工业设计,以及社会军事、政治和商业的斗争中都涌现出了大量的 NP 问题。若按经典的纯粹数学家们所熟悉的穷举方法求解,则计算时间动辄达到天文数字,根本没有实用价值;数学界许多有经验的人认为对于这些问题根本上就不存在完整、精确、而又不是太慢的求解算法。因此,NP=P?可能就是这个世纪最重要的数学问题了。
资料来源:维基百科
1988 年 11 月 2 日:第一种蠕虫病毒 Morris 诞生
1988 年 11 月 2 日,最早通过互联网传播的计算机蠕虫之一莫里斯蠕虫(Morris worm)诞生,这也是第一个获得主流媒体显著关注的蠕虫,这也导致了 1986 年计算机欺诈和滥用法案下美国第一次重罪定罪。莫里斯蠕虫是由康奈尔大学的研究生罗伯特·塔潘·莫里斯(Robert Tappan Morris)编写的,并首先于麻省理工学院的计算机系统发布。
罗伯特·塔潘·莫里斯(Robert Tappan Morris)诞生于 1965 年 11 月 8 日,是一位美国计算机科学家,因 1988 年制造莫里斯蠕虫而闻名;在蠕虫病毒爆发后,他被判处 3 年缓刑、400 小时的社区服务和 1 万多美元的罚款。1989 年 7 月 26 日,罗伯特·莫里斯成为第一个因计算机欺诈和滥用法案被定罪的人。
出狱后,罗伯特·莫里斯共同创立了 Viaweb 公司,这家初创公司制作用于创建在线商店的软件,后来以 4800 万美元的价格卖给了雅虎。罗伯特·莫里斯的父亲也叫 Robert Morris,是贝尔实验室的科学家,Unix 的合著者,NCSC(国家计算机安全中心)的前首席科学家;因此,也许应该称呼罗伯特·莫里斯为“小莫里斯”或者“莫里斯二世”。
时间回到 33 年前的今天。按照莫里斯的说法,编写蠕虫病毒的起因并不是想造成破坏,而是想测量互联网的规模。然而,选择在麻省理工学院施放蠕虫,却又掩盖了它其实是来自罗伯特·莫里斯所在的康奈尔大学这一事实;此外,莫里斯蠕虫利用了 Unix 系统中 sendmail、Finger、rsh/rexec 等程序的已知漏洞以及薄弱的密码。
雪上加霜,蠕虫代码中一段非本意的效果加剧了其危害性,它使同一台计算机会被重复感染,每次感染都会造成计算机运行变慢直至无法使用,导致拒绝服务。蠕虫的主体只能感染 DEC 的 VAX 机上运行的 BSD 4 以及 Sun 3 系统,而程序中的一段 C 语言代码会调用程序主体,使其在其它的系统上也能运行。
结果便是,事件第二天,1988 年 11 月 3 日,美国军方的 DARPA 组建了 CERT(计算机紧急反应小组),用以应付此类事件,标志着 Internet 保护开始成为一项严肃的工作,也促使了美国总统里根因此而签署了《计算机安全法令》。如今,莫里斯蠕虫的源代码存放于一个黑色 3.5 英寸软盘中,存放在波士顿科学博物馆中;而罗伯特·莫里斯后来担任了麻省理工学院计算机科学和人工智能实验室的一名终身教授,主攻方向是计算机网络架构,皆大欢喜。
资料来源:维基百科、百度百科
2002 年 11 月 2 日:域名 Linkedin.com 注册成功
领英(LinkedIn)是一款社交网络服务网站,域名 Linkedin.com 注册于 2002 年 11 月 2 日。在该网站完成注册后会自动产生和带入电子名片,专门为商业人士设立,堪称具有社群功能的在线履历始祖;不只求职者可在平台上更新自己的履历,企业或雇主也能发布职位。
截至 2015 年,领英大部分的收入来自向招募人员及专业销售人员收取会员消息的访问权限;自 2016 年 12 月起,领英正式成为 Microsoft 全资子公司,链接了全球云端龙头和专业社群龙头。截至 2021 年 2 月,领英拥有来自 150 个国家地区共 7.4 亿注册会员。“历史上的今天”介绍过的不少工程师和企业家都拥有领英账户,比如在 10 月 31 日专栏中介绍的电子书发明者 Florian Brody,便在领英的个人首页上给自己的传奇经历做了一番介绍。
【欢迎投稿】以史为镜,可以知兴替。计算机科学发展至今,有许多至关重要的事件、人物,欢迎所有朋友一起共建「历史上的今天」,投稿邮箱:tangxy@csdn.net 。