这篇文章最初发表于2012年5月30日,当时HyperCard即将迎来25周年纪念。
1988年前后,我和房东达成了一笔交易。她会买一台麦金塔电脑,我则会买一个外置硬盘,我们会把这个系统放在客厅里共享。她最常使用这款设备,因为我使用IBM 286,我只是想跟上苹果的发展。但在我们安装了Mac之后,有天晚上我坐下来用它,发现应用程序菜单上有一个程序。“HyperCard?”我想知道。“那是什么?”
我打开应用程序,阅读说明。HyperCard允许你创建“卡(片)堆”(stacks)的卡片,它们是麦金塔屏幕上的可视页面。你可以将“域”(fields)插入这些显示文本、表格甚至图像的卡片中。你可以安装“按钮”(buttons),将卡(片)堆(stack)中的各个卡片相互链接,并在用户点击它们时播放各种声音。你也可以把自己的图片变成按钮。
不仅如此,HyperCard还包含了一种名为“Hyper Talk”的脚本语言,像我这样的非程序员很容易就能学会。它允许开发人员在HyperCard数组的组件中插入“go to”或“play sound”或“dissolve”等命令。
这个月,HyperCard很快就要25岁了[编者按:2019年,它就要32岁了!]。到底发生了什么事?我四处搜寻,找到了风险投资家、程序员蒂姆·奥伦(Tim Oren) 2004年对这个项目的悼词(A Eulogy for HyperCard),写于苹果公司从市场上撤下该软件的那一周。他认为,HyperCard的问题在于,苹果从未搞清楚该软件的用途。
“这是什么东西?” 奥伦(Oren)写道。“编程和用户界面设计工具?轻量级数据库和超文本文档管理系统?多媒体创作环境?苹果从未回答过这个问题。”
因此,苹果公司将这个项目转移到了它的子公司Claris,在那里,它在Filemaker和ClarisWorks办公套件等更著名的项目中迷失了方向。奥伦(Oren)的悼词继续写道:“在苹果重吸收Claris的时候,它的铁杆支持者,尤其是教育界的铁杆支持者,让它存活了下来,但只是在默许的情况下。”
甚至在它被取消之前,HyperCard的发明者就预见到了它的终结。在2002年一次采访中(HyperCard: What Could Have Been),比尔·阿特金森(Bill Atkinson)承认了他的错误。如果他发现“卡(片)堆”(stacks)可以通过网络连接,而不是仅仅安装在一个特定的桌面上,事情就会有所不同。
阿特金森(Atkinson)哀叹道:“我错过了HyperCard的目标,我在苹果公司以盒子为中心(box-centric)的文化中成长。如果我成长在一个像Sun公司一样以网络为中心的文化中,HyperCard可能是第一个网络浏览器。我在苹果公司的盲点使我无法将HyperCard打造为第一个网络浏览器。”
HyperCard可能不是第一个Web客户端,但随着它的周年纪念日临近,我认为它应该在互联网历史上占据更突出的位置。
《计算机解放》(Computer Lib)
在HyperCard推出的那一年,总部位于旧金山的电视节目《计算机编年史》(Computer Chronicles)制作了一个关于该软件的节目。这期节目的主持人很快就找到了节目的灵感。
“HyperCard是基于超文本(hypertext)的,”加里·基尔代尔(Gary Kildall)告诉斯图尔特·谢菲特(Stewart Cheifet)。“这个概念是由泰德·尼尔森(Ted Nelson)和道格·恩格尔巴特(Doug Engelbart)在60年代提出的。其基本思想是这样的:如果我们试图对任何一种主题进行研究,那么这个主题就存在于各种不同的地方。它可以是书籍、杂志、磁带录音、CompuServe,如果我们能以某种方式将所有这些东西电子化,那么如果我们点击贝多芬,我们就能突然从一个跳到下一个... 这就是超文本的意义所在。”
早在1960年,泰德·尼尔森(Ted Nelson)就提出了超文本(hypertext)的概念,并试图在他的未完成的“上都计划”(Xanadu project)中实现它。尼尔森(Nelson)毫不气馁,变成了这个想法的雄辩传播者。在他1974年出版的《计算机解放》(Computer Lib)/《梦想机器》(Dream Machines)一书中,他将超文本定义为“应要求分支或执行的书写形式;它们最适合在电脑显示屏上展示。”(forms of writing which branch or perform on request; they are best presented on computer display screens)通过简化信息的传播和获取过程,超文本和超媒体(hypermedia)可以将社会从尼尔森(Nelson)所认为的过度专业化的数字信息精英中解放出来。
尼尔森写道:“俗话说,战争太重要了,不能任由那些将军来操纵。对计算机的监护不能再留给神职人员。”(As the saying goes, war is too important to be left to the generals, guardianship of the computer can no longer be left to a priesthood.)
但是在20世纪70年代,“神职人员”(priesthood)实际上在削减技术方面做得相当不错。在《计算机解放》(Computer Lib)发布的三年前,美国国防部的互联网原型ARPANET的设计者们在华盛顿特区的一次公开活动中公布了他们的项目。与此同时,美国电话电报公司(AT&T)贝尔实验室(Bell Labs)的两名工程师正忙于UNIX操作系统的开发,该操作系统后来成为了“网络”的主干。由于担心一旦涉足软件营销业务,会遭到政府反垄断的报复,AT&T以极低的价格把UNIX租给了各大院校。在美国国家科学基金会(National Science Foundation)的资助下,这些学校在上世纪80年代建成了成百上千个ARPANET 的“节点”(nodes)。
这将互联网带到了1989年,当时一位在欧洲核子研究中心(CERN)工作的程序员提出了一种超文本网络。
蒂姆·伯纳斯·李(Tim Berners-Lee)解释说:“目前可用的大多数系统都使用单个数据库。许多用户通过使用分布式文件系统来访问它。几乎没有产品采用泰德·尼尔森(Ted Nelson)的‘文献宇宙’(docuverse)概念,即允许不同数据库中节点之间的链接。”(Information Management: A Proposal)
但是伯纳斯-李(Tim Berners-Lee)决心建造一个。
进入网络
大约两年后,伯纳斯-李(Tim Berners-Lee)创建了自己的万维网浏览器,然后发布项目的代码库,以便程序员开发自己的版本。不久,芬兰的一群学生开发了一种名为Erwise的浏览器。不幸的是,这个国家当时陷入了严重的衰退,严重限制了Erwise的前景。
“那时候,我们不可能在芬兰的其他地方创办企业,”一名团队成员解释道。但是其他开发人员也下载了伯纳斯-李(Tim Berners-Lee)的代码。其中包括魏培源(Pei-Yuan Wei),他在加州大学伯克利分校的实验计算设施中使用UNIX X终端。魏的“ViolaWWW”网络浏览器的灵感来自哪里?尽管他没有自己的苹果电脑,但他从一个他觉得很有趣的程序中获得了灵感。
“HyperCard在当时是非常引人注目的,图形化的,超链接的东西,”魏后来回忆道。“我拿到了一份HyperCard手册,看了一下,基本上就是把这些概念用X-windows实现了。” X-windows是UNIX的一个可视化组件。最终的浏览器Viola包含了类似HyperCard的组件:书签、历史功能、表格、图形。和HyperCard一样,它可以运行程序。
那是在1992年左右。那时,真正的基于Mac的Web客户端已经出现在工作中了——尼古拉·佩洛(Nicola Pellow)和罗伯特·卡里奥(Robert Cailliau)的Samba也受到了HyperCard的影响。
伊利诺斯大学国家超级计算应用中心的一位名叫马克·安德森(Marc Andreessen)的年轻开发人员非常欣赏所有这些活动。安德森的团队在1993年1月推出了Mosaic;这是第一个可以在PC、Mac和UNIX系统上使用的浏览器。一年后,Mosaic演变成Mosaic Netscape。
不久之后,我下载了一份Netscape的拷贝到一台戴尔电脑上。“哇,”我在浏览各种网站时想。"这看起来像HyperCard。"
HyperCard的遗产
在它20年的生命周期中,HyperCard取得了巨大的成功,并在全世界取得了成功。墨尔本维多利亚博物馆(Victoria Museum of Melbourne)一直在追踪澳大利亚的科学和文化历史,它发布了一份墨尔本教育工作者使用该项目的方式清单。
直到2002年8月,大约还有1万名HyperCard开发人员。电视节目《计算机编年史》(Computer Chronicles)在报道该软件的三年后,对HyperCard的发展做了一个后续节目。他们发现了HyperCard软件可以用来运行电视演播室(television studio)。麻省理工学院通过这个项目制作了一个互动视频杂志。一名七年级学生在HyperCard上写俄罗斯历史年表,连幼儿园的孩子都在玩这个应用程序。
因此,毫不奇怪,Cyan软件公司的程序员最初把他们非常受欢迎的益智/冒险游戏Myst写成了HyperCard卡堆(stack)。但即使在1987年,当苹果电脑以黑白显示时,HyperCard的开发者和图形艺术家也创造出微妙而迷人的场景,这些场景至今仍经常在网上流传。
开发者比尔·阿特金森(Bill Atkinson)是如何定义HyperCard的?“简单地说,HyperCard是一个软件安装程序集,它允许非程序员将交互式信息放在一起,”(HyperCard is a software erector set that lets non-programmers put together interactive information)他在1987年告诉《计算机编年史》。
上世纪90年代中期,当蒂姆·伯纳斯-李(Tim Berners-Lee)的创新终于流行起来时,HyperCard已经为了解Netscape目标的一代开发人员做好了准备。这就是为什么HyperCard最贴切的历史类比不是一些失败和被遗忘的创新,而是类似于关于猫王(Elvis Presley)的一个评价(Before Anyone Did Anything, Elvis Did Everything)。在万维网兴起之前,HyperCard做了所有的事情。(Before anyone on the World Wide Web did anything, HyperCard did everything.)
HyperCard的五个超酷的应用
1.Myst可能是HyperCard历史上最著名的项目。Cyan公司在1993年发布了这款游戏,但Cyan的创始人兰德(Rand)和瑞安·米勒(Ryan Miller)花了大约两年时间,才建成了令一代人着迷的精致景观。这张CD包括40分钟的音乐、2500张图像和一小时的QuickTime电影。
2. 在Myst之前,米勒兄弟(Miller brothers)的The Manhole(1987)引起了轰动,这是一款专为儿童设计的漫游游戏。在以CD形式发布之前,最初的软件需要一小堆软盘(a small pile of floppy disks)来容纳600个相连的屏幕。通过这个视频观看Manhole的杰作版。
3.《全球概览》的工作人员甚至在HyperCard在1987年上市之前就听说过它。“目录的范围,以及它天然卡片大小的厚实感,使得它在苹果看来,这是一次理想的尝试,”后来凯文·凯利(Kevin Kelly)回忆说,所以苹果公司“资助我们告诉他们,把《全球概览》放进HyperCard,我们可以学到什么。”
4.基于HyperCard的Time Table of History: Science & Innovation。它主要是关于科学和技术的叙述,于1991年以CD的形式在Macintosh上发布。Time Table包含6000多个HyperCards。
5.最后但同样重要的是航海者公司(Voyager Company)的交互式图书目录。在20世纪80年代末和90年代初,航海者公司(Voyager Company)发行了一系列开创性的互动CDs,包括电子版的阿特·斯比格曼(Art Spiegelman)漫画系列《鼠族》、贝多芬的第九交响曲和热门的披头士电影《一夜狂欢》。选择HyperCard是“合乎逻辑的”。Hypercard“以一叠卡片的概念为模型,模拟一本书的行为。”
编译自:2019年5月Ars Technica上的文章30-plus years of HyperCard, the missing link to the Web
相关文章:
超级卡片软件系统HyperCard
《计算机解放》(Computer Lib)/《梦想机器》(Dream Machines)
上都的诅咒(The Curse of Xanadu)
道格·恩格尔巴特是如何成就“所有演示之母”(the Mother of All Demos)
Wiki:《全球概览》(Whole Earth Catalog)