《我的科技生活——在计算机历史博物馆讲述》

2016年3月4日,在加州山景城计算机历史博物馆,一段经过编辑的谈话记录。

新利app怎么样Stephen Wolfram在计算机历史博物馆-点击播放视频

我通常把时间花在建立未来上。但是我发现历史真的很有趣,而且信息量很大,我学了很多。通常是别人的历史。但是,计算机历史博物馆今天让我谈谈我自己的历史,以及我建立的技术史。这就是我在这里要做的。

这对我来说是一个非常激动人心的时刻,因为我已经工作了30多年的一堆东西终于要开花结果了。这也是我这周在旧金山湾区所谈论的。

重点是Wolfram语言,这确实是一种新的语言——一种基于知识的语言,其中包含了尽可能多的关于计算和世界的知识。语言尽可能地自动化,因此人们可以尽可能直接地从计算思维到实际实现。

我想在这里谈谈这一切是如何发生的,以及诸如此类的事情MathematicaWolfram | Alpha出现在路上。

不可避免的是,我要讲的很多内容实际上都是我自己的故事:基本上讲的是,到目前为止,我花了大部分时间建立了一大堆技术和科学。当我回头看,发生的一些事情似乎是不可避免的,不可避免的。还有一些我没有预料到。

但让我从头说起。我1959年出生在英国伦敦,所以,是的,我确实老得离谱,至少以我现在的标准来看是这样。我父亲经营一家小公司——从事国际纺织品贸易——将近60年,他也写过几篇文章“严肃的小说”小说.我母亲是哈佛大学的哲学教授牛津.我碰巧注意到了她教科书关于哲学逻辑的讲座

你知道,我记得当我5、6岁的时候,在一个聚会上和一群成年人玩得很无聊,然后不知何故,最后和一位可能非常杰出的牛津哲学家聊了很久,我听到他在最后说,“有一天那个孩子会成为哲学家,但可能需要一段时间。”他们是对的。这些事情的结果有点可笑。

这是当时的我:

新利app怎么样斯蒂芬·沃尔夫拉姆,儿童哲学家?

我在牛津上的小学,在一个叫龙学校,我想这可能是英国最有名的小学了。维基百科我觉得我们班现在最有名的人是我和那个演员休·劳里

这是我七岁时的一份成绩单。这些是阶级等级。是的,我的诗歌和地理学得很好,但数学不行。(是的,那是英国,所以他们在学校里教“圣经学习”,至少那时是这样。)但至少它说:“他充满了精神和决心;他应该走得更远”……

我的龙校半学期成绩单,7岁

好吧,那是1967年,我在学习拉丁语和其他东西——但我真正喜欢的是未来。当时最面向未来的就是太空计划。我对此非常感兴趣,开始收集所有我能收集到的关于每一个发射的宇宙飞船的信息,并把总结这些信息的小书放在一起。我发现,即使是在英国,人们也可以写信给美国国家航空航天局,免费把这些很棒的东西寄给他们。

斯蒂芬·沃尔夫勒姆新利app怎么样早期绘制的Ranger宇宙飞船 斯蒂芬·沃尔夫勒姆新利app怎么样早期绘制的月球9号宇宙飞船 斯蒂芬·沃尔夫勒姆新利app怎么样早期绘制的月球轨道飞行器 斯蒂芬·沃尔夫勒姆新利app怎么样早期绘制的勘测者7号宇宙飞船

好吧,在那个时候,应该有一天会有一个火星殖民地,我开始做一些设计,关于宇宙飞船和其他东西。

斯蒂芬·沃尔夫勒姆新利app怎么样早期绘制的火星殖民地 一个关于猎户座飞船新利app怎么样信息的早期斯蒂芬沃尔夫勒姆页面 早期斯蒂芬·沃尔夫新利app怎么样勒姆的飞船助推器使用示意图 斯蒂芬·沃尔夫勒姆新利app怎么样早期绘制的火星上的宇宙飞船

这让我对推进和离子驱动之类的东西产生了兴趣,在我11岁的时候,我真正感兴趣的是物理学。

斯蒂芬·沃尔夫拉姆新利app怎么样(Stephen Wolfram)早期绘制的月球轨道器温度控制图 斯蒂芬·沃尔夫勒姆新利app怎么样早期的一幅画:从金星反射的无线电波 斯蒂芬·沃尔夫勒姆新利app怎么样的早期绘画:激光建筑

我发现,如果一个人只是读书,他就能很快学到东西,这与学校无关。我会选择物理领域,并尝试组织有关它们的知识。当我12岁的时候,我花了一个夏天把我能积累的关于物理的所有事实整理在一起。是的,我想你可以称之为“视觉化”。而且,是的,就像其他很多东西一样,它是在网络上现在:

我12岁时在《物理学指南》上写了一页,描述了太阳系中元素的丰富程度 我12岁时在《物理目录》上写了一页,显示了氯化钠和石墨的晶体结构
这是我12岁物理指南的另一页,上面显示了高半衰期原子核的中子数 我12岁那年的物理目录上的赫茨普鲁格-罗素图解

几年前我又发现了这个——大约是在Wolfram|Alpha出现的时候——我想,“哦,我的天哪,我一直在做同样的事情!”当然,当我11岁或12岁的时候,我开始输入数字,看看Wolfram|Alpha是否正确。它确实,当然:
地壳上钠、钨含量| α
我12岁的时候,按照英国的传统,我上了一所所谓的公立学校,实际上是私立学校。我去了最著名的伊顿公学,它是在哥伦布来到美洲前50年建立的。哦,太令人印象深刻了:)1972年,我甚至在新生中获得了最好的奖学金。

是的,每个人都一直穿着燕尾服,国王学院的学者,像我一样,也穿长袍——这提供了很好的防雨功能等等。我想我每年都会避免这些哈利波特式的照片,只有一次例外:

伊顿公学课堂照片

在那些拉丁舞、希腊舞和燕尾服的日子里,我过着一种双重生活,因为我真正的激情是研究物理。

我13岁那年的夏天,我把粒子物理学概论

我13岁时的《亚原子粒子物理学》书的目录 我13岁那年写的《亚原子粒子物理学》第一章的开头

我有了重要的发现,即使是一个孩子,也能发现东西。我开始尝试回答有关物理的问题,要么在书中寻找答案,要么自己去想。在我15岁的时候,我开始出版对物理学的论文.是的,当你把一篇论文寄给物理杂志时,没人会问你多大了。

我的第一篇论文:“强子电子?”

但是,好吧,对我来说很重要的一件事发生在我12岁在伊顿公学的时候:我开始了解我的第一台电脑。是艾略特903C。这不是我实际使用的,但它是类似的:

艾略特903 c

它是通过我的一位老师诺曼·劳特利奇传到伊顿公学的,他是我的一个朋友阿兰·图灵的年代。它有8千字的18位铁氧体核心存储器,通常用纸或聚酯磁带编程,通常是用一个叫做SIR的16条指令汇编器。

SIR汇编指令和代码时间

似乎最重要的技巧之一是,在通过光学读卡器后,磁带被倒进垃圾箱后,尽快倒带。

不管怎样,我想用电脑做物理。当我12岁的时候,我拿到这本书了吗

统计物理学,这本书的封面启发了我研究细胞自动机

封面上的内容应该是模拟气体分子显示出增加的随机性和熵。几年之后,我发现这张照片其实是假的。但在我12岁的时候,我真的很想用电脑复制它。

这并不容易。分子位置应该是实数;必须有一个算法来处理碰撞;等等。为了使它适合埃利奥特903,我最终简化了很多——实际上是一个2D元胞自动机。

十年后,我做了一些关于细胞自动机的重大发现. 但当时我的细胞自动机规则很不走运,结果我什么也没发现。最后,我在Elliott 903上最大的成就就是为它编写了一个穿孔磁带加载器。

计算机纸带

你看,用于严肃程序的聚酯薄膜胶带的一个大问题是,它会带上静电,并拾取一些小的五彩纸屑孔,因此读取的比特会出错。嗯,对于我的加载器,我提出了我后来发现的纠错码,我对它进行了设置,这样如果检查失败,磁带就会停在读卡器中,你可以把它向后拉几英尺,然后在抖掉五彩纸屑后重新读。

在我16岁的时候,我发表了一些文章物理论文我离开了学校,到英国政府的一个实验室工作,这个实验室名为卢瑟福实验室做粒子物理研究的。

我在卢瑟福实验室写的一篇论文:中性弱相互作用和粒子衰变

现在你可能还记得我7岁的学业报告,我的数学成绩不太好。当我开始使用计算尺时,情况变得更好了。1972年,我开始使用计算器,我是计算器的早期使用者。但我从来都不喜欢做学校数学,或者一般的数学计算。嗯,在粒子物理学中有很多数学要做,所以我不喜欢它是个问题。

在卢瑟福实验室,有两件事起了作用。首先是一台带绘图仪的可爱的惠普台式电脑,我可以在上面进行非常好的交互计算。第二,我用Fortran编程的,用于更复杂的东西的主机。

从卢瑟福实验室毕业后我上了大学牛津. 在很短的时间内,我认为这是一个错误,但在那些日子里,人们实际上不必去上课,所以我可以躲起来做物理研究。我大部分时间都呆在核物理大楼的一个漂亮的地下空调房间里,那里的终端连接到一台主机和一台计算机阿帕网

那是在1976年,我第一次开始用电脑做符号数学,代数和其他东西。费曼图在粒子物理学中涉及到大量的代数。回到1962年,我想,三个物理学家在欧洲核子研究中心碰面,决定尝试用电脑来做这件事。他们有三种不同的方法。一个人写了一个叫ASHMEDAI的系统Fortran.One-influenced由约翰·麦卡锡他写了一个叫做Reduce in的系统口齿不清.还有一个人用CDC 6000系列汇编语言写了一个叫做SCHOONSCHIP的系统,用的是荷兰语的助记符。奇怪的是,多年以后,其中一位物理学家获得了诺贝尔奖.这是蒂尼·维尔特曼-写SCHOONSCHIP的人汇编语言

减少2用户手册 ASHMEDAI用户指南 SCHOONSCHIP指南,Tini Veltman

不管怎样,在1976年,除了这些系统的创造者,很少有人使用它们。但我开始使用它们。但我最喜欢的是一个完全不同的系统,在麻省理工学院从20世纪60年代中期开始,这是一个叫做Macsyma.它在Project MAC PDP-10电脑上运行。对我这个17岁的英格兰孩子来说,真正重要的是我可以通过阿帕网(ARPANET)获得它。

它是236号宿主。所以我输入@O 236,就进入了一个交互式操作系统。有人把登录软件拿走了。所以我变成了狼,开始使用Macsyma。

Macsyma参考手册

1977年夏天我在阿贡国家实验室-他们实际上相信物理学家就在主机的房间里。

1978年,我去了加州理工学院作为一个研究生。那时,我想我是世界上最大的计算机代数使用者。它很简洁,因为我可以很容易地计算出所有这些东西。我以前喜欢在我的物理论文里写一些非常华丽的公式。然后我就能知道是否有人在看报纸,因为我会收到这样的信,“你是如何从之前的一条推导出这样那样的线的?”

一些我在加州理工学院时写的物理论文

我是一个很好的计算器。这当然是完全不应该的——因为不是我,只是电脑。说实话,有一部分是我干的。你看,通过计算这么多不同的例子,我得到了一种新的直觉。我自己不擅长计算积分,但我可以用电脑来来回回,凭直觉知道该尝试什么,然后做实验看看什么可行。

我为《Macsyma》写了很多代码,建造了这座塔。1979年的某个时候,我陷入了崩溃的边缘。我们需要一些新的东西。(注意,例如,图表中不祥的“MACSYMA RELOAD”线。)

我为Macsyma写的ILINT例程结构

1979年11月,我刚满20岁,我整理了一些论文,称之为论文,然后得到了我的博士学位.几天后,我去拜访欧洲核子研究中心我想到了我的未来,我想,物理学。有一件事我很确定,那就是我需要Macsyma之外的东西,让我能够计算东西。就在那时,我决定为自己建立一个系统。就在那时,我开始设计这个系统,书写其规范

早期手写SMP语言摘要

一开始是algy——代数操纵器。但我很快意识到我需要做的不仅仅是代数运算。我知道当时大多数通用的计算机语言——包括计算机语言阿尔戈尔-像一个,像Lisp和APL. 但不知何故,它们似乎没有捕捉到我想要系统做的事情。

所以我想我做了我从物理中学到的:我试图深入挖掘原子——发生什么的基本元素。我对数理逻辑有一定的了解,对用逻辑表述事物的历史也有一定的了解——尽管我母亲的哲学逻辑教科书还不存在。

这种正规化的努力的整个历史亚里士多德莱布尼茨弗雷格皮亚诺希尔伯特怀特黑德罗素等等——真的很有趣。但这是另一个话题。但在1979年,正是对这类事情的思考让我想到了我的设计,这是基于符号表达的想法,并对它们进行转换。

我给我想建的东西起了名字SMP:一个符号操作程序他开始从加州理工学院周围招募人来帮助我。理查德·费曼我参加了一系列的会议,讨论了SMP的设计,提出了各种各样的想法,我不得不承认,我认为这些想法对于与系统交互的快捷方式很不恰当。与此同时,物理系刚刚得到一台VAX11/780,经过一番争论后,它被要求运行Unix。与此同时,一名年轻的物理研究生罗布派克-最近的创造者编程语言说服我应该用“未来的语言”为我的系统编写代码:C

我很擅长写C,有一段时间平均每天写一千行。到1981年6月,借助于一系列色彩丰富的字符,SMP的第一个版本出现了大部头文献我写的。

SMP的文档

你可能会问,我们能看到SMP吗?当我们在研究SMP的时候,我有一个聪明的想法,我们应该通过加密来保护源代码。你猜对了,在三十年的时间里,没人记得密码。就在不久前,情况还是这样。

在另一个聪明的想法中,我使用了一个修改过的Unix加密程序来进行加密——认为这样会更安全。作为Mathematica成立25周年几年前,我们做了一个众包项目来破解加密,我们做到了。不幸的是,虽然编译代码并不容易,但多亏了一位15岁的志愿者,我们现在已经运行了一些东西。

这就是:运行在VAX虚拟机模拟器中,我可以向您展示30年来首次公开的SMP运行版本。

30年来第一次在VAX模拟器上运行SMP!

SMP有好主意,也有坏主意。SCHOONSHIP一书的作者Tini Veltman向我提出了一个坏主意的例子,他用浮点表示有理数,这样人们就可以在许多处理器上使用更快的浮点指令。但也有很多其他的坏主意,比如让垃圾收集器在堆栈运行时必须对堆栈进行爬网并重新对齐指针。

有一些有趣的想法。比如我所说的“投影”——它本质上是函数和列表的统一。它们几乎是很棒的,但对于咖喱——或者我称之为分层——有一些困惑。还有一些奇怪的边缘情况它们几乎是带有顺序整数指标的向量。

但总的来说,SMP工作得很好,我当然发现它非常有用。下一个问题是如何处理它。我意识到它需要一个真正的团队来完成,我认为最好的方法就是让它商业化。但当时我是一个21岁的物理学教授,对商业一无所知。

所以我想,让我去大学的技术转让办公室,问问他们该怎么做。但事实证明,他们并不知道,因为正如他们解释的那样,“大多数教授不会来找我们;他们自己开公司。“好吧,”我说,“我可以那样做吗?”就在那时,一个几乎是技术转移办公室的律师拿出了教员手册,看了一遍,然后说,“嗯,是的,上面说版权保护材料归作者所有,软件也是版权保护的,所以,是的,你可以做任何你想做的事。”

于是我开始尝试开一家公司。但事实并非如此——因为学校突然决定我不能做我想做的事。

几年前,我访问加州理工学院时遇到了一个95岁的家伙,他当时是教务长,他最终为我补充了他所谓的“沃尔夫勒姆事件”的剩余细节。这比人们想象的还要离奇。我不会在这里全讲。但我只想说这个故事的开始阿诺德·贝克曼他在1929年获得了加州理工学院的博士后学位,并要求获得pH测量仪的使用权贝克曼仪器然后在1980年担任加州理工学院董事会主席,当他意识到基因测序技术是在加州理工学院发明的,并“走出校园”成为现实时,他感到非常沮丧应用生物系统公司

但我创办的这家公司挺过了这场风暴——尽管我最终离开了加州理工学院,而加州理工学院最终出台了一项奇怪的软件所有权政策,在很长一段时间内影响了他们在计算机科学领域的招聘工作。

我没有做好我所谓的开始工作计算机数学公司.我请来了一个年龄刚好是我两倍的人当CEO。很快,事情开始偏离我认为合理的方向。

我最喜欢的疯狂时刻之一是进入硬件行业,构建一个运行SMP的工作站。嗯,当时没有工作站有足够的内存,68000也不能处理虚拟内存。因此,有人炮制了一种方案,两个68000将运行一条不同步的指令,如果第一个指令出现页面错误,它将停止另一个指令并获取数据。我以为这是胡说八道。我也碰巧去过斯坦福大学,偶遇一位名叫Andy Bechtolsheim谁在炫耀斯坦福大学的网络太阳-用纸板箱作为箱子的工作站。

但更糟糕的是,这是1981年,当时有一种观点认为,专家系统形式的人工智能非常热门。因此,该公司与另一家开发专家系统的公司合并,形成了所谓的推断公司(最终成为纳斯达克:INFR)。《SMP》以每本约4万美元的价格卖给工业和政府研究实验室。但后来的风险资本家相信未来是专家系统,没过多久,我就离开了。

与此同时,我成为了大学知识产权政策方面的专家,并最终进入了美国大学高等研究院在普林斯顿,导演非常迷人地说,自从他们“送出了电脑”之后冯·诺依曼死后,他们现在声称拥有任何东西的知识产权都没有多大意义。

我钻研基础科学,大量研究细胞自动机,发现了一些我认为非常有趣的东西。这是我和我的SUN工作站,上面运行着细胞自动机(是的,软体动物看起来像细胞自动机):

我在办公室的SUN工作站上使用细胞自动机(位于爱因斯坦的旧工作站上方) 带有屏幕上细胞自动机图案的软体动物外壳

我做了一些咨询工作,主要是技术战略方面的,这很有教育意义,尤其是在发现不该做的事情方面。我做了很多工作思维机器公司.我认为我最重要的贡献就是去看了这部电影当成丹尼•希利斯-当我们走出电影院时,对丹尼说,“也许你的电脑也应该有闪光灯。”(闪光灯最终成为了电脑的一大特色。)连接机器电脑在博物馆里的来世当然很重要。)

我大部分时间都在研究基础科学,但“因为这很容易”,我决定做一个软件项目,构建一个C解释器,我们称之为IXIS。我雇了几个年轻人,其中一个之后下村我已经从几次黑客灾难中找到了他。我犯了一个可怕的错误,写了别人都不想写的无聊代码——所以我写了一个(相当可爱的)文本编辑器,但整个项目失败了。

那时我与计算机行业有各种各样的互动。我记得Nathan Myhrvold他来找我,问我他开发的一个窗口系统有什么用。我的基本建议是“把它卖给。微软”. 碰巧的是,内森后来成为了微软的首席技术官。

嗯,大约在1985年,我已经做了一些我非常满意的基础科学,我试图用它来开始我所谓的复杂系统研究领域。最后我参与了一个叫里约热内卢格兰德学院的组织,后来成了圣菲研究所-及鼓励他们追求这种研究。但我不相信他们的机会,我决定建立自己的研究机构。

所以我去了很多不同的大学,实际上是为了获得投标。这个伊利诺伊大学具有讽刺意味的是,他们之所以成功,部分原因是他们认为这将有助于他们获得贝克曼基金会的资助——事实上,他们确实获得了。1986年8月,我去了伊利诺伊大学,去了芝加哥以南100英里的香槟-厄本那的玉米地。

我认为我在招募教员和为新成立的复杂系统研究中心(Center for Complex Systems research)建立设施方面做得很好——而这所大学也实现了它的承诺。但几周后,我开始认为这完全是个错误。我把所有的时间都花在管理和筹款上,而不是真正从事科学研究。

所以我很快就想出了b计划,而不是让别人来帮助我做我想做的科学,我会把事情安排好,这样我就可以自己做科学,尽可能高效地做。这意味着两件事:首先,我必须拥有最好的工具;第二,我需要尽可能最好的环境。

当我在做基础科学的时候,我一直在使用不同的工具。有一些SMP。Quite a lot of相当多附言,图形库等等。我花了很多时间把这些东西粘在一起。于是我决定,我应该试着建立一个单一的系统,可以做我想做的所有事情,而且我可以期望永远保持增长。

与此同时,个人电脑刚刚发展到可以在上面运行这样一个系统的阶段。从我的SMP经历中,我知道了很多该做什么不该做什么。于是我开始设计和创建后来的Mathematica。

一些早期的Mathematica设计笔记

我的方案是编写文档来定义要构建的内容。我写了一些核心代码,比如模式匹配器——令人吃惊的是,这么多年后,其中相当一部分仍在系统中。Mathematica的设计在很多方面都没有SMP那么激进和极端。SMP坚持使用将符号表达式转换为一切的思想,但在Mathematica中,我认为我的目标是设计一种语言,它能够有效地捕获所有可能的不同范式,以一种完美的无缝方式思考编程。

当然,一开始,Mathematica并不叫Mathematica。在后来奇怪的命运中,它实际上被称为欧米茄。它通过其他的名字。有博学的人。和技术。这是名单。让我有点震惊的是,有那么多这样的东西——甚至是那些非常可怕的东西——在此后的几年里实际上已经被用于产品中了。

早期可能的Mathematica名称

与此同时,我开始研究如何围绕这个系统建立一家公司。我最初的模型是这样的Adobe当时我们正在使用PostScript:我们构建核心IP,然后将其授权给硬件公司进行捆绑。碰巧,第一个对此感兴趣的人是史蒂夫•乔布斯他当时正在做这件事下一个

嗯,与史蒂夫互动的结果之一是我们讨论了产品的名称。我在学校里学了这么多拉丁语,我曾想过“Mathematica”这个名字,但我觉得它太长太冗长了。史蒂夫坚持说“这就是名字”——并有一个完整的理论,即使用通用词并将其浪漫化。最后他说服了我。

它花了大约18个月的时间来构建Mathematica的第1版。我仍然是正式的物理学教授数学计算机科学在伊利诺伊大学但除此之外,我每天醒着的时候都在开发软件,然后做交易。

我们和NeXT的史蒂夫·乔布斯达成了一项协议,将Mathematica捆绑在一起下一台电脑

软件许可协议将Mathematica捆绑到每台NeXT电脑上

我们还做了很多其他的交易。与太阳,通过Andy Bechtolsheim比尔快乐.与硅谷图形,通过森林Baskett.与热心的,通过戈登•贝尔克里夫硅藻土.与AIX / RT的一部分国际商用机器公司,主要通过安迪·海勒维姬·马克斯坦

最终我们设定了发行日期:1988年6月23日

同时,作为系统的文档,我写了一本书Mathematica:用计算机做数学的系统. 它将由addison - wesley这是该版本中最长的前置时间。最后,它变得非常紧凑,因为这本书充满了花哨的PostScript图形——显然,没有人知道如何以足够高的分辨率渲染这些图形。所以最后我拿了一个硬盘给我在加拿大的一个朋友他有一个照相排版公司他和我在一个假期的周末照看他的照相排字机,之后我飞到洛根机场在波士顿,他把这本书的电影成品交给了艾迪生·韦斯利的一位制片人。

《数学书》1988年第一版封面

我们决定在硅谷宣布Mathematica的成立,特别是在圣克拉拉的TechMart。当时,由于640K内存限制,Mathematica无法在MS-DOS下运行。所以唯一的消费版是针对Mac的。在发布的前一天,我们把磁盘塞进盒子里,然后送到ComputerWare帕洛阿尔托一家软件商店。

原始的Mathematica盒子和内容

这项宣布是一件好事。史蒂夫·乔布斯(Steve Jobs)来了,尽管当时他并没有真正“公开露面”。拉里·特斯勒来自苹果勇敢地自己做了一个演示。约翰计来自Sun的人很明智地让所有的演讲者在一本书上签名:

Mathematica发布会上演讲者签名:苹果公司的拉里·特斯勒;来自Ardent的Gordon Bell;Autodesk的Eric Lyons;卡内基梅隆大学的达娜·斯科特;数学项目的杰里·格林;NCSA的史蒂夫·克里斯滕森;史蒂夫·乔布斯,来自NeXT;来自Silicon Graphics的Forest Baskett;还有Sun公司的Andy Bechtolsheim, John Gage, Bill Joy和Curt Wozniak

Mathematica就是这样诞生的。数学书成为书店里的畅销书,从此人们开始了解如何使用Mathematica。看到所有这些科学类型的人,所有年龄段的人,基本上从来没有自己使用过电脑,开始自己计算东西,真是太棒了。

看登记卡很有趣。有很多有趣和著名的名字。有时会有一些很好的并置。就像我刚看到一篇关于罗杰·彭罗斯他的新书时间标题为“那些电脑都是傻瓜”的杂志……但还有罗杰的Mathematica注册卡。

一些早期的Mathematica登记卡

作为Mathematica发展的一部分,我们最终与几乎所有可能的计算机公司进行了交流,收集了各种奇异的机器。有时候会派上用场,就像莫里斯蠕虫通过网络找到的,我们的入口机器很奇怪索尼工作站有一个日本的操作系统,而这个蠕虫不是为它而建的。

有各种各样的迁移冒险。可能我最喜欢的是Cray-2.经过努力,我们编译了Mathematica。这样就可以开始第一次计算了。有人输入了2+2。我不骗你,结果是5。我认为这是整数和浮点表示的问题。

你知道,这是1990年的价格表有点像在电脑记忆的小路上漫步:

Mathematica 2价目表

NeXT电脑推出时,我们得到了提振,电脑上捆绑了Mathematica软件。我认为史蒂夫·乔布斯在那里做了一笔好交易,因为各种各样的人都用NeXT来运行Mathematica。比如欧洲核子研究中心的理论小组,系统管理员就在那里蒂姆·伯纳斯-李他决定在这些机器上做一个小小的网络实验。

接下来是Mathematica

嗯,几年之后,公司发展得很好——我们大概有150名员工。我对自己说:我建这个是因为我想有一种方法来做我的科学,所以现在不是我开始做的时候吗?此外,公平地说,我注入新思想的速度太快了;我担心公司会土崩瓦解。但无论如何,我决定要部分休假——大概六个月或一年——去研究基础科学,并就此写一本书。

Wolfram公司照片从1993年

所以我从伊利诺伊州搬到了奥克兰山-就在那场大火之前,那场大火差点撞上了我们的房子。我开始成为一名远程首席执行官,用Mathematica做科学。好消息是,我开始发现了很多很多科学。这有点像是“第一次将望远镜转向天空”的时刻,但现在是第一次可能的程序的计算宇宙

真的很棒。但我就是停不下来——因为还有越来越多的东西等着我去发现。总而言之,我坚持了10年半。我真的是一个隐士,大部分时间住在芝加哥,大部分时间只与人接触,尽管我最大的三个孩子出生在那个时期,所以周围有人类!

我原以为公司会发生政变。但是没有。公司继续稳步增长。我们一直在做新的事情。

这是我们的第一次网站, 1994年10月7日起生效:

Wolfram Research的第一个网站

没过多久,我们就开始做了网上计算

Wolfram在线集成器,在它的第一个设计

我在1996年中断了我的科学研究,完成了新版的Mathematica。早在1988年,许多人通过命令行接口使用Mathematica。事实上,今天它仍然存在。1989^1989是我从1989年开始用的基本计算方法,用来测试新机器的速度。实际上是基本的覆盆子π今天给了我们一个很好的感觉,回到了一开始。

但是,好吧,在Mac和下一代上,我们在1988年发明了这些我们称之为笔记本电脑即混合了文本、图形、结构和计算的文档,这就是UI。它非常现代,有一个干净的前端/内核体系结构,可以很容易地在远程机器上运行内核,到1996年,笔记本的结构有了一个完整的、类似xml的符号表示。

也许我应该谈谈Mathematica的软件工程。核心代码是用C语言的扩展写的——实际上是一个我们必须自己开发的面向对象的C语言版本,因为c++在1988年还不够高效。甚至从一开始,就有一些代码是用Mathematica顶级语言编写的Wolfram语言-多年来,越来越多的代码是这样的。

好吧,回到最初,让前端在不同的机器上运行是非常具有挑战性的。我们最终在Mac, NeXT, Microsoft Windows和X Windows上使用了不同的代码库。在1996年,其中一个成就就是将所有这些融合在一起。在将近20年的时间里,代码被光荣地合并在一起,但现在我们又有了针对桌面、浏览器和移动设备的独立代码库,历史正在重演。

早在1996年,我们就有各种各样的方法来宣传新的Mathematica版本3。我原来的《数学》书现在已经很大了,可以容纳我们要添加的所有东西。

《数学家》一书的第三版

我们还有一些其他的“宣传工具”,我们称之为MathMobiles里面装着最新的装备,就像移动广告牌一样为我们的图像做广告。

mathematica随处可见,被广泛使用。当然,有时也会发生一些疯狂的事情。比如在1997年迈克Foale和平号空间站上有一台运行Mathematica软件的电脑。发生了一场意外,电脑卡在了空间站减压的地方。与此同时,空间站正在崩溃,迈克试图调试它,并想用Mathematica来完成它。因此,他在下一次补给任务中获得了一份新的拷贝,并将其安装在一台俄罗斯个人电脑上。

但有一个问题。因为我们的数字版权管理系统立刻说:“这是一台俄罗斯PC;你不能在那里运行美国授权的Mathematica软件!”这可能是我们有史以来最奇特的客户服务电话:“用户在一个翻滚的空间站。”但幸运的是,我们只需输入一个不同的密码——迈克解出了方程式,空间站就稳定了。

在2002年的十多年之后,我终于完成了我的科学项目,并且我的大的书

一种新的科学

在我的“科学十年”期间,公司一直在稳步发展,我们也组建了一支很棒的团队。但由于我从科学中学到的东西,我认为它可以做得更多。再次专注于这件事让人耳目一新。我很快意识到,我们所构建的结构可以应用于许多新事物。

数学是Mathematica的第一个大应用,但我构建的符号语言要比这通用得多。看到我们能用它做些什么是非常令人兴奋的。2006年的一件事是象征性地代表用户界面,并能够通过计算来创建它们。这导致了提供(我们的可计算文档格式),和我们的Wolfram示范项目

Wolfram演示项目

我们开始做各种各样的实验。许多项目进展顺利。有些人有点偏离轨道。我们想做一张海报,上面有我们所知道的所有关于数学函数的事实。一开始是一个小海报,但后来变成了36英尺长的海报,最后Wolfram函数站点,含300000多个配方:

我们的数学函数海报,扩展到Wolfram函数网站

那是手机铃声狂热的时期,我想要一个个人铃声。所以我们想出了一种方法,用细胞自动机来合成各种各样的铃声,我们把它放到网上. 这实际上是一个有趣的人工智能创意体验,音乐人喜欢它。但在与手机运营商混了六个月后,我们几乎没有卖出一个铃声。

WolframTones

但是,无论如何,多年来,我们一直是一个单一产品的公司,生产的是Mathematica,我们开始有了这样的想法,我们不仅可以给Mathematica添加新东西,还可以发明各种各样的其他东西。

嗯,我提到过,当我还是个孩子的时候,我对尝试做我现在所说的“使知识可计算”很感兴趣:利用我们文明的知识,建立一个可以自动计算出问题答案的东西。很长一段时间以来,我一直认为要做到这一点,就需要制造某种类似大脑的人工智能。比如,在1980年,我从事神经网络的研究——并没有让它们做任何有趣的事情。每隔几年,我就会思考一些关于可计算知识的问题。

但后来我做了科学研究一种新的科学-我发现了一个东西,我称之为计算等价原理.这说明了很多事情。但其中之一是,在“智能”和“仅仅计算”之间不能有一条清晰的界线。这让我开始思考也许我不需要建立一个大脑来解决可计算的知识问题。

与此同时,我的小儿子,我想他当时大约六岁,开始有点用数学了。他问我,“为什么我不能用简单的英语说出我想说的?”我开始解释这有多难。但他坚持说,“嗯,没有那么多不同的方式来表达任何特定的东西,”等等。这让我特别想到用我建立的科学来解决理解自然语言的问题。

与此同时,我开始了一个收集各种数据的项目。这是一件有趣的事情进入一个大的参考库,并找出如何使所有这些都可计算。艾伦·图灵做过一些类似的估计,这有点吓人。但不管怎样,我开始接触各种各样的专家,涉及各种科技公司通常不关心的话题。我开始建立技术和管理系统,让数据可以计算。

我完全不清楚这一切是否会奏效,甚至我的许多管理团队都持怀疑态度。“另一个WolframTones”是一个常见的描述。但好消息是,我们的主营业务很强劲。尽管我在20世纪90年代初就考虑过,但我从未让公司上市,我也没有任何投资者,除了我自己。所以我不需要对任何人负责。我可以这样做Wolfram | Alpha-因为在我们公司的历史上,我能够做各种各样的长期工作。

尽管有这些担忧,Wolfram|Alpha还是发挥了作用。我不得不说,当它最终准备好演示时,只开了一次会议,我的管理团队就完全同意了,并对此充满热情。

当然,Wolfram|Alpha的一个问题是,就像Mathematica和Wolfram语言一样,它确实是一个无限的项目。但后来我们发现,如果没有看到真实的用户,用真实的自然语言问真实的问题会发生什么,我们真的无法做更多的开发。

所以我们选择了2009年5月15日作为上线日期。但有一个问题:我们不知道流量会有多高。那时我们还不能使用Amazon或其他的东西:为了获得性能,我们必须在裸机上进行复杂的并行计算。

迈克尔•戴尔他很好心,给了我们一个很好的价格,让我们买了很多电脑。但当我和一些人交谈时,我很担心他们的服务在启动时就崩溃了。所以我决定用黑客的方式。我决定我们要在网络电视上直播——这样,如果有什么可怕的事情发生,至少人们会知道发生了什么,可能会从中得到一些乐趣。所以我联系了贾斯汀菅直人他当时正在做什么贾斯汀电视台他的第一家公司我一开始就没能投资Y Combinator——我们安排了“现场发射”。

建立我们的“任务控制中心”很有趣,我们还做了一些非常漂亮的仪表盘,其中许多我们现在仍然在使用。但在发布会当天,我担心这将是有史以来最无聊的电视节目:基本上在约定的时间,我只需点击鼠标,我们就会直播,然后节目就结束了。

来自Wolfram|Alpha发布的一些照片
来自Wolfram|Alpha发布的一些照片

好吧,那是不可能的。你知道,我从来没看过广播.我不知道它在多大程度上捕捉到了一些可怕的错误——特别是在最后一刻网络配置问题。

但也许最令人难忘的是天气。我们在伊利诺斯州中部。就在我们隆重发射的一个小时前,有一份天气预报说有一股龙卷风正向我们直冲过来!你可以在Wolfram|Alpha中看到风速峰值历史气象数据
Wolfram|Alpha发射风速龙卷风
幸运的是,龙卷风没有击中。果然,2009年5月15日中部时间晚上9:33:50,我按下了按钮,然后Wolfram | Alpha上线.很多人开始使用它。有些人甚至知道它不是一个搜索引擎:它是计算的东西。

然后,早期的bug报告开始源源不断地出现。这是Wolfram|Alpha在一开始做的事情,当一些事情失败时:

最初的Wolfram|Alpha失败消息:“对不起Dave,我恐怕我不能那样做……”

其中一个漏洞报告说,“你怎么知道我的名字是戴夫?!”第一个晚上出现了各种各样的bug报告——这里有一些:

Wolfram | Alpha早期反馈

人们不仅开始使用Wolfram|Alpha;公司也一样。通过比尔盖茨,微软将Wolfram|Alpha连接到必应.有个小公司叫Siri一段时间后,苹果购买了Siri,通过它史蒂夫•乔布斯Wolfram|Alpha最终为Siri的知识部分提供了动力。

Siri通过Wolfram|Alpha回答了很多问题

好了,现在我们到了现代。现在最重要的是Wolfram语言.事实上,这对我们来说并不是一件现代的事情。早在20世纪90年代初,我打算把数学的语言部分去掉,我们打算把它叫做M语言。我们甚至还派人来做谢尔盖•布林1993年他还是我们的实习生。但是我们还没有弄清楚如何分配它,或者说它应该叫什么。

最后,这个想法逐渐消失。直到我们有了Wolfram | Alpha,云存在,等等。我必须承认,我真的厌倦了人们认为Mathematica是一个“数学的东西”。它一直在成长:

Mathematica函数随时间变化

尽管我们一直在加强数学,其中90%根本不是数学.我们有一种“让我们实现一切”的方法。这一切都进行得很顺利。我们在发明这些东西的路上一路顺风元算法,自动化的东西. 结合Wolfram | Alpha,我意识到我们所拥有的是一种新的、非常普遍的东西:一种基于知识的语言,它尽可能地包含了关于计算和世界的知识。

还有另一件事:认识到我们的符号编程范式不仅可以用来表示计算,还可以用来表示部署,特别是在云中。

Mathematica已经被广泛应用于研发和教育领域,但除了一些明显的例外,比如在金融行业,它还没有被广泛应用于部署生产系统。Wolfram语言的一个想法是我们的云计算-就是要改变这一点,真正使基于知识的编程成为可以部署在任何地方的东西,从超级计算机到嵌入式设备。关于这一切有很多话要说…

我们也做了很多其他的事情。这显示了Mathematica的前10000天内函数的增长,以及这些年来函数中包含的内容。

10000天的Mathematica函数增长

我们已经用我们的技术做了各种各样的事情。我不知道为什么要画这张图,但我还是要展示一下;这是我们纪念t恤上的照片图像识别项目我们一年前做的。也许你能弄明白这上面的说明意味着什么关于调试图像标识:图像标识中是食蚁兽,因为我们失去了土豚,如图所示:

Wolfram语言图像识别项目的纪念T恤衫:“这是一只食蚁兽,因为我们丢失了土豚。”

就在最近几周,我们开设了乌云允许任何人在网络上使用Wolfram语言。这真的是30年,也许是40年工作的顶峰。

你知道,近三十年来我一直在努力确保Wolfram语言精心设计的-当它变得越来越大时,所有的部件都很好地结合在一起,所以你可以尽可能地在它们的基础上进行构建。我不得不说,很高兴看到这一切现在得到了很好的回报。

它很酷。我们有了一种非常不同的语言——一种不仅对计算有用,而且对世界有用的语言,用电脑和人.你可以写小程序。有Tweet-a-Program例如:

Wolfram Tweet-a-ProgramWolfram Tweet-a-Program画廊

或者您可以编写大型程序Wolfram | Alpha,这是1500万行Wolfram语言代码。

很高兴看到各行各业的公司开始将他们的技术建立在Wolfram语言的基础上。另一件让我非常兴奋的事是,有了Wolfram语言,我想我们终于有了一个很棒的方法来教孩子们计算思维。我甚至写了关于最近:

沃尔夫勒姆语言的基本指南书

我不禁想,如果12岁的我有了这个,如果我的第一种计算机语言是沃尔夫拉姆语言而不是埃利奥特903的机器代码,会发生什么呢?我当然可以用一句俏皮话来做出一些我最喜欢的科学发现。我的很多关于人工智能的问题都已经得到了解答。

但事实上,我很高兴能够生活在我所处的历史时期,能够成为这几十年来计算这一极其重要的概念发展的一部分,并且有幸能够发现和发明一些与之相关的东西。

4评论

  1. 你好,Stephen新利app怎么样 Wolfram先生。读你的文章很愉快。以一本传记开始,以Wolfram编程语言结束。这些年来,这真是一段漫长的旅程。我也是一名程序员,从那时起10岁,使用Amstand的Basic语言。我毕业时也是计算机工程师。有一件事是肯定的,强大的编程语言创造强大的程序,科学家们使用的程序是他们的实验室。它是发展和科学的关键因素。

  2. 你和科技建立了惊人的关系。谢谢鼓舞人心的总结!

    大卫
  3. 感谢分享你在科技世界的旅程。

  4. 你好,Stephen新利app怎么样 Wolfram先生。读你的文章很愉快。以一本传记开始,以Wolfram编程语言结束。这些年来,这真是一段漫长的旅程。我也是一名程序员,从那时起10岁,使用Amstand的Basic语言。我毕业时也是计算机工程师。有一件事是肯定的,强大的编程语言创造强大的程序,科学家们使用的程序是他们的实验室。它是发展和科学的关键因素。

Baidu