原文

Computer Software – Alan Kay

译文

提出一个关于使计算机听命于人所需的概念和技术的单一主题问题(single-topic issue)。它是赋予可编程机器以形式和目的的软件,就像雕塑家塑造泥土一样。

计算机之于计算,如同乐器之于音乐。软件就是乐谱,它的演绎放大了我们的影响(reach),提升了我们的精神(spirit)。达芬奇称音乐为 “塑造不可见的东西”,他的这句话用来描述软件甚至更为恰当。就像音乐的情况一样,软件的不可见性并不比你站起来时, 你的大腿去哪里更神秘。本期《科学美国人》杂志要探讨的真正奥秘是,在正确的架构下,如何用最简单的材料完成这么多事情.

计算的材料是最简单的标记(marks),以亿为单位存储在计算机硬件中。在乐谱中,曲调在纸张和墨水的硬件中得到体现;在生物学中,通过 DNA 代代相传的信息被保存在称为核苷酸的化学基团的排列中。正如有许多材料(从粘土到纸莎草纸到牛皮纸再到纸和墨水)用于存储书写的痕迹,计算机硬件也依靠各种物理系统来存储其痕迹:旋转轴、卡片上的孔、磁通量、真空管、晶体管和刻在硅芯片上的集成电路。粘土或纸张上的标记、DNA 中的标记和计算机存储器中的标记在其表征(represent)能力方面同样强大,但一个标记的唯一内在意义是它的存在。Gregory Bateson 指出:”信息,是任何能产生差异的差异。”(Information is any difference that makes a difference) 第一个差异是标记;第二个差异暗指解释的需要.

规定(specify)电梯音乐(译者注: 用来描述电梯、餐厅、商店等公共场所中连续播放的背景音乐)的相同标记也规定了巴赫的风琴赋格曲。在计算机中,同样的标记可以规定精算表或带来一个新的世界。涂鸦的符号和十四行诗的符号可以是一样的,这并不新鲜。这也适用于计算机,消除了新技术的许多神秘感,使对它的思考有了更坚实的基础。

就像大多数建造事物的媒介一样,无论事物是大教堂、细菌、十四行诗、赋格曲还是文字处理器,架构(architecture)都主导着材料。理解粘土并不意味着理解壶。通过了解壶的创造者和使用者,以及他们赋予材料的意义和从形式中提取意义的需求,可以更好地理解壶的全部内容。

作为表达媒介的计算机与粘土或纸张之间存在着质的区别。就像生物细胞的遗传装置一样,计算机可以阅读、书写并遵循自己的标记,达到自我解释的水平,其智力极限仍未被理解。因此,想要理解软件的人的任务不是简单地看到“壶不是粘土”,而是要从初学者(因为在计算机科学这个刚刚起步的行业中,所有人都是初学者)所做的壶中看到中国瓷器和利摩日(欧洲瓷器之都)的可能性。

我不需要在计算的储存和阅读标记的方法上花费更多的时间,就像分子生物学不需要在原子的一般属性上花费更多的时间。足够大的标记存储容量和最简单的指令集, 就足以建立任何需要的进一步表征机制,甚至包括模拟整个新的计算机。Ada 是第一位计算机软件天才,她为查尔斯-巴贝奇设计的分析机编程,她很了解通用机器的模拟能力。在 20 世纪 30 年代,图灵通过展示一个非常简单的机制如何能够模拟所有的机制,更干脆地说明了这个问题。

任何计算机都可以模拟任何现有或未来的计算机的想法在哲学上很重要,但它不是所有计算问题的答案。一个简单的计算机假装成一个花哨的计算机往往会陷入 “图灵焦油坑”,如果在一百万年的时间里才出结果,它就没用处了。换句话说,数量上的改进也可能是有帮助的。速度的提高甚至可能代表着质的改进。想想看,把电影的速度从每秒两帧提高到 20 帧(仅仅是一个数量级)是如何产生显著差异的:它导致了对连续运动的主观感受。视觉和听觉互动的大部分 “生命” 取决于其速度。

小时候我们发现,只要把双手塞进泥土里,就能把泥土塑造成任何形状。我们中的大多数人都没有学到关于计算机的这种东西。计算机的材料似乎远离人类的经验,就像用按钮、钳子和电视显示器远程操纵的放射性金属锭一样。如果物理上的接触看起来如此遥远,那么人们能与这种新东西进行什么样的情感接触呢?

人们通过 “用户界面” 来感受计算的粘性:在人和程序之间起中介作用的软件,将计算机塑造成一个实现特定目标的工具,不管这个目标是设计一座桥梁还是写一篇文章。用户界面曾经是一个系统的最后一个设计部分。现在它是第一个。它被认为是最主要的,因为对于新手和专业人士来说,呈现在他们感官上的东西就是他们的计算机。我和 Xerox Palo Alto 研究中心的同事们称之为 “用户幻觉”,它是每个人建立的简化神话,用来解释(和猜测)系统的行动和接下来应该做什么。

许多为增强幻觉而开发的原则和设备现在已经成为软件设计中的普遍现象。也许最重要的原则是 WYSIWYG(”所见即所得”):屏幕上的图像始终是用户幻觉的忠实代表。以某种方式操纵图像会立即对机器的状态(如用户想象的状态)做出一些可预测的动作。现在流行的一种幻觉有窗口、菜单、图标和一个指向性设备。被称为 “窗口” 的显示框使得在屏幕上一次呈现若干活动成为可能。菜单显示出可能采取的下一步操作;图标代表事物的具体形象。推动指向设备(有时称为鼠标)可在屏幕上移动指针,从而选择特定的窗口、菜单项或图标。

所有这些共同产生了新一代的互动软件,它们利用了用户的幻觉。其目的是为了放大用户的模拟能力。当一个人的幻觉可以被操纵,而不需要求助于抽象的中介(比如一个简单的文字处理器所需的隐藏程序), 他就能发挥最大的杠杆作用。当幻觉作为一个 “工具包(kit)” 或工具(tool)来解决一个问题时,我称之为直接杠杆作用。当幻象作为一个 “代理”(agent) 时,间接的杠杆作用就会实现:一个目的(purpose)和目标(goals)的积极延伸。在这两种情况下,软件设计者对本质上是戏剧性的环境的控制, 是创造幻象和提高其感知的 “友好性” 的关键。

最早的计算机程序是由数学家和科学家设计的,他们认为这个任务应该是简单明了、符合逻辑的。事实证明,软件比他们想象的更难塑造。计算机很顽固。他们坚持按照程序员说的去做,而不是按程序员的意思去做。因此,一个新的工匠阶层接管了这项任务。这些二进制双翼飞机的试飞员往往既不懂数学,也不太懂科学,但他们却深深地沉浸在与材料的浪漫关系中–这种浪漫往往是新艺术和新科学的先驱。自然科学家被生活在一个宇宙里,并寻求发现其中的规律。计算机科学家以程序的形式制定法则,而计算机则将一个新的宇宙带入生活。

一些程序员在”创造一个私人宇宙”  这令人振奋的氛围中泥足深陷。他们成了著名设计师 Robert S. Barton 所说的 “低级邪教的高级祭司”。然而,大多数人发现,成为一个宇宙的神是一回事,能够控制它又是另一回事,他们在自己的领域之外寻找设计思路和灵感。

一个强大的流派可以作为翅膀,也可以作为锁链。最诡谲的隐喻是那些似乎在一段时间内有效的隐喻,因为它们可以阻止更强大的洞察力涌现出来。因此,进展是缓慢的,但也有进展。一个新的流派已经建立。几年后,一个重大的改进被提出来了。再过几年,这种改进被认为不仅仅是一个 “更好的旧事物”,而是一个直接导致下一个稳定流派的最重要的新事物。有趣的是,旧事物和它们的改进并没有消失。过去每个时代的有力代表今天都在茁壮成长,例如使用有 30 年历史的 FORTRAN 语言编程,甚至使用被称为直接机器码的古老文字编程。有些人可能会把这种遗迹看成是活化石;另一些人则会指出,即使是非常古老的物种也可能仍然在填补一个特定的生态位。

如上图: 软件流派以零星的时间间隔相互继承,这里通过一些编程语言的例子来说明这一点。语言是按级别任意分类的,尽管这些级别(彩色带)是重叠的。有低级语言(LLL),高级语言(HLL),极高级语言(VHLL)和超高级语言(UHLL)。在编程语言的演变过程中,一个流派被建立起来(横向的白线),然后经过几年的改进(弯曲的白线),随着时间的推移,改进后的语言被认为不仅仅是一个 “更好的旧事物”,而是一个 “几乎新的事物”,并且它导致了下一个稳定的流派。Lisp 语言已经反复改变,每次都成为一个新的流派。

计算机领域还没有出现伽利略或牛顿、巴赫或贝多芬、莎士比亚或莫里哀。它首先需要的是奥卡姆的威廉,他说:”若无必要,勿增实体” 在消除复杂性和建立简单性方面付出巨大的努力是值得的,这种想法与现代科学和数学的兴起有很大关系,特别是从创造新的美学的角度来看,这是任何成长中的领域的重要组成部分。这是一种沿着奥卡姆剃刀思路的美学,是判断当前计算机软件和启发未来设计所需要的。究竟有多少个概念?隐喻是在不同的结构中寻找相似性甚至是同一性的神奇过程,如何将其用于降低复杂性?

如上图: 继承编程显示了差分(differential)描述的力量。一个通用的 “对象”(顶部)被显示为一个云。人们可以从无差别的对象中制作一个矩形,实际上就是说:”我想要一个像这样的东西,除了……“,然后指定原点(左上角)的位置、宽度、高度等属性。对这个想法的进一步阐述是 “窗口”,它是显示屏幕上的一个矩形区域,可以看到一个程序的输出。在创建窗口时,可以让它 “继承” 矩形的适用属性,并增加新的功能,如滚动条(在被查看的材料上移动窗口)、标题和改变窗口大小和位置的设施。通过添加新的显示方法来塑造窗体并在它们之间建立联系(彩色箭头),就可以制造出一个更复杂的带窗体的窗口。镶板窗口可以被用来制作 “浏览器”:使人们能够在不记住名称的情况下检索资源的系统。这里展示了四个浏览器的例子(见图中示例)。

法国数学家 Jacques S. Hadamard 在对 100 名主要数学家的研究中发现,他们中的大多数人声称在他们的思维中不使用符号,而是主要使用视觉方法。一些人,包括爱因斯坦,则进一步追溯到他们的童年,依靠 “运动或肌肉类型的感觉”。大脑中较老的部分知道该说什么;较新的部分则知道如何说。只有当具体实例的重复聚合变得足够无聊,从而促使人们用单一的抽象见解来交换时,才能有效地处理符号世界。

在代数中,变量的概念是一个惊人的进步,它允许将无穷的实例作为一个概念来表示和处理。语言中的隐喻通常强调完全不同的事物的相似性,仿佛它们是相似的(译者注: 柏拉图的共相问题与之有关,另,罗素在《哲学问题》中讨论了这个问题)。这是数学思维的一个胜利,它使人们认识到各种自我比较可以更加强大。牛顿和莱布尼茨的微分学通过找到说 “这个想法的这个部分和那个部分一样,除了…. ” 的方法来代表复杂的想法。计算系统的设计者已经学会了用微分模型做同样的事情,例如用具有称为继承性的编程方法。近年来,基于递归思想的模型被制定出来,其中一些部分实际上是整体:需要对整个模型的描述来生成一个部分的表示。一个例子是 Benoit B. Mandelbrot 的分形几何学。Mandelbrot 的分形几何,其中结构的每一个子部分都与其他部分相似。混沌被法则(law)捕捕获。

将部分设计成具有与整体相同的力量,是当代软件的基本技术。该技术最有效的应用之一是面向对象的设计。计算机被分成(从概念上讲,通过利用其模拟能力)一些较小的计算机/对象,其中每一个都可以被赋予像戏剧中的演员那样的角色。

转向面向对象的设计是观点(point of view)的真正改变–范式的改变–带来了表达能力的巨大增长。当分子链在前生物海洋中随机漂浮时,当它们第一次被封闭在细胞膜中时,它们的效率、鲁棒性和能量的可能性被提高了 10 亿倍,这也是一种类似的变化。

软件对象的早期应用是在顺序编程语言的古老比喻中尝试的,对象的功能就像合作的单细胞生物的殖民地。然而,如果细胞是一个好主意,当合作密切到足以使细胞聚集成超级细胞: 组织和器官时,它们才真正开始有所作为。计算机无尽的可塑性结构能否被设计成一个 “超级物体”?

动态电子表格就是这样一个类似组织的超级对象的好例子。它是一个模拟套件,它提供了一个显著程度的直接杠杆。电子表格在其最佳状态下将 20 世纪 70 年代建立的流派(对象、窗口、所见即所得的编辑和目标搜索检索)结合在一起,成为一个 “更好的旧事物”,可能成为未来几年主流设计的 “几乎新事物 “之一。

如上图:动态电子表格是一个模拟套件:一个被称为单元格的软件对象的集合体,它们可以从彼此之间获得 value。窗口选择工作表的一个矩形部分用于显示。每个单元格可以被想象为在工作表后面有几个层,计算单元格的 value 并决定显示的格式。单元格的名称可以输入到相邻的单元格中。每个单元格都有一个 value 规则,它可以是 value 本身,也可以是计算 value 的方法;value 也可以以工作表中其他部分的单元格的状态为条件。格式规则将 value 转换成适合显示的形式。图片是在工作表中显示的格式化 value。

电子表格是一个活动的对象的集合,通常被组织成一个矩形的单元格阵列,类似于会计使用的纸质表格。每个单元格都有一个 “value 规则” (译者注: value 暂不做翻译,因为读起来很奇怪),指定如何确定其 value。每次在电子表格的任何地方改变一个 value 时,所有依赖于它的 value 都会立即重新计算,并显示新的 value。电子表格是一个模拟的袖珍世界,它不断地维持着它的结构;这个工具包适用范围惊人。在这里,用户的幻觉是简单、直接和强大的。很少有意外的惊喜,因为一个单元格能得到一个 value 的唯一方法是由单元格自己的 value 规则把它放在那里。

动态电子表格是由 Daniel Bricklin 和 Robert Frankston 发明的,Bricklin 之所以创造它,是因为他在商学院中不得不使用旧的划线纸版本时感到了挫折。他们对这个想法的成功感到惊讶,也对大多数购买电子表格程序(VisiCalc)的人用它来预测未来而不是计算过去的做法感到惊讶。为了开发一个 “智能编辑器”,他们创造了一个模拟工具。

使用电子表格很简单。视觉隐喻放大了人们对情况和策略的认识。从视觉隐喻到符号 value 规则的轻松转换,几乎在不经意间就能发挥出抽象模型的全部威力。一个强大的特性是,通过在几十个单元中同时 “描绘” 一个规则,使解决方案成为通用的,而不需要用户从他们原来的具体思维水平上进行概括。

最简单的一种 value 规则使一个单元格成为一个静态的对象,如一个数字或一段文字。一个更复杂的规则可能是其他单元格 value 的算术组合,从它们的相对位置或绝对位置或(更好)从分配给它们的名称得出。一个 value 规则可以测试一个条件,并根据结果设置自己的 value。高级版本允许通过启发式目标搜索检索单元格的 value,因此,没有直接解决方法的问题仍然可以通过搜索过程来解决。

对任何系统最有力的测试不是它的功能如何符合预期的需要,而是当人们想做一些设计者没有预见到的事情时,它的表现如何。这与其说是一个可能性的问题,不如说是一个敏锐性的问题: 用户能否看到要做的事情并能简单地去做?

假设我们想把数据显示为一组垂直的条形图,其高度被归一化为最大的值,并且假设这样的条形图功能没有被编程到系统中,这需要一个混乱的程序,即使是在一个高级编程语言中。而在电子表格中,这很容易。单元格作为显示的 “像素”(图片元素):一叠单元格构成一个条。在一个显示最大 value 三分之一的条形图中,堆栈中最低三分之一的单元格是黑色的,上面三分之二的单元格是白色的。每个单元格都要根据它在条形图中的位置来决定它应该是黑色还是白色。”如果我在条形图中的位置小于我试图显示的数据,我就显示黑色;否则我就显示白色”

如上图:条形图可以用电子表格的标准材料来构建。条形图是一列单元格,每一个单元格都是一个像素(图片元素)。与每一列相关的一个单元格持有基准,或 value,由相应的条形图的高度代表。在一个条形图中,所有的单元格都受相同的规则支配。一个像素的高度所代表的数量是最大基准值除以最长的条形图中的像素数;在图表 a 中,每个条形图有 10 个像素,每个像素代表 25 个单位。如果每个单元格在条形图中的垂直位置乘以每个像素的单位数,小于该条形图的基准线,则显示为黑色;否则显示为白色。当在某一列(b)中输入一个新的基准点时,在该列©中出现一个新的条形图。如果新的基准点大于以前的最大值(d),则根据新的每像素单位数重新绘制条形图(e),本例中为 36.7。

另一个电子表格的例子是一个复杂的交互式 “浏览器”,这个系统最初由当时在 Xerox Palo Alto 研究中心的 Tesler 设计。浏览是一种愉快的方式,通过指向连续列表来访问一个分层组织的数据库,数据库的名称被输入到显示的第一个窗格中,使构成其直接分支的主题领域被检索出来,并显示在名称下面的单元格中。用鼠标指向其中一个主题领域,就可以选择该主题领域;所选择的领域被输入到下一列的头部,使其分支依次被检索出来。就这样,直到找到所需的信息为止。值得注意的是,整个浏览器只需三条规则就可以在电子表格中编程。

如上图: 数据库浏览器允许人们通过简单地指向连续列表中的项目来获得对一个分层组织的数据库的访问。为了了解银狐的情况,人们在第一个窗格(a)中输入 “动物”。”动物”数据库的主题区域出现在窗格(b)中。选择 “哺乳动物”会使该子类别出现在下一个窗格中(c);选择 “狐狸 “会出现一个狐狸的列表(d),并最终检索到银狐的描述(e)

这些例子的目的并不是要让大家放弃所有的编程而选择电子表格。目前的电子表格还达不到这个要求;也许,电子表格的隐喻本身也达不到。然而,如果编程意味着像过去 40 年所做的那样写出一步步的食谱,那么对大多数人来说,它从来就没有意义,而且肯定已经过时了。电子表格,尤其是我所建议的对其进行的扩展,给人以强烈的暗示,对于新手和专家来说,更强大的风格即将出现。这是否意味着大多数人只需要学习如何 “驾驶” 应用程序,而不需要学习编程?当然不是。用户必须能够根据自己的需要来定制一个系统。不这样做就像要求文章由已经写好的段落组成一样荒唐。

在讨论这个最为多变的媒介时,我试图说明设计是如何有效地赋予杠杆作用的,特别是当这个媒介被塑造为直接杠杆的工具时。很明显,在塑造软件套件时,对设计的限制是对创造者和使用者的限制,而不是对媒介的限制。然而,软件的局限性问题被我带到了前面和中心,因为我认为在未来,一种更强大的间接杠杆作用将由个人代理(agent)提供:用户意志和目的的延伸,由计算机的主体塑造和嵌入。材料能产生心智吗?当然,在一个标记中似乎没有任何类似心智的东西。任何标记的组合,甚至是动态和反射性的标记,怎么可能显示出任何心智的属性?

原子似乎也很简单。然而,生物学表明,简单的材料可以形成极其复杂的组织,可以解释自己并动态地改变自己。它们中的一些甚至似乎会思考! 因此,很难否认计算机材料的某些精神可能性,因为软件的强项也同样是简单组件的动态结构化。计算机 “只能做它们被编程的事情”,但一个试图成为婴儿的受精卵也是如此。尽管如此,发现一个产生心智的架构的难度怎么强调都不为过。在 DNA 的特性及其表达机制被阐明之前,生物学的研究已经进行了大约几百年,揭示了活细胞是一个正在进行的架构。此外,分子生物学的优势在于研究一个已经组合在一起并在工作的系统;对于软件作曲家来说,计算机就像一瓶原子,等待着被他必须发明的架构所塑造,然后从外部给人留下深刻印象。

继续与生物作类比,进化可以告诉基因关于这个世界的信息非常少,而基因可以告诉正在发育的大脑的信息更少。在现存的 150 多万个物种中,可以发现各种水平的心智能力。其范围从完全硬接线的行为,以至于既不需要也不可能学习,到由经验丰富的模板,再到一系列能力,以至于需要一个稳定的社会组织–文化–如果要充分实现成人的潜力的话。(换句话说,基因让猫抓老鼠的方法是给猫编程,让它去玩,然后让老鼠来教猫其他的东西)。人工智能工作者通常只满足于尝试模仿第一种硬接线的行为。其结果通常被称为专家系统,但从某种意义上说,它们是计算机科学的设计师牛仔裤。这并不是说它们的发明者不诚实;他们中很少有人声称一个系统比它能做的更多。然而,”专家” 这个标签唤起了一种愿景,当发现这些系统在很大程度上忽略了专家(甚至是有能力的)行为是什么以及它是如何变成这样的时候,就会导致幻想破灭。

在不远的将来,这三种发展方向的可能性非常低。第一个是可以构建人类成年人的心智。第二种是可以构建人类婴儿的心智,然后在一个能够将其转化为成人心智的环境中 “长大”。第三,目前的人工智能技术包含了一个架构的种子,人们可以从中构建某种真正能够学习技能的心智。概率很低的事实并不意味着这项任务是不可能的。第三种发展方向可能会首先实现。在此之前,也会有看起来和表现出一些智能的系统,而且其中一些将真正有用。

未来几年的代理人会是什么样子?代理的概念起源于 20 世纪 50 年代中期的 John McCarthy,几年后由 Oliver G. Selfridge 创造了这个术语,当时他们都在麻省理工学院。他们考虑的是一个系统,当给定一个目标时,它可以执行适当的计算机操作的细节,并且在它被卡住时,可以要求和接受以人类术语提供的建议。一个代理将是一个 “软机器人”,在计算机世界中生活和工作。

这样一个代理可能会做什么?现在,数以百计的数据检索系统通过计算机网络提供出来。了解每个系统的神秘访问程序几乎是不可能的。一旦获得访问权,浏览(browsing)所能够处理的条目可能不超过 5000 个。需要一个作为图书馆员的代理人来处理大量的选择。它可以作为一个领航员,在数据库之间穿行。更好的是一个能够将所有系统作为一个单一的大系统呈现给用户的代理,但这是一个非常困难的问题。一个持续的 “跑腿者”,每天 24 小时寻找它知道的用户感兴趣的东西,并将它们作为个人杂志来展示,将是最受欢迎的。

代理人几乎不可避免地是拟人化的,但他们不会是人类,在一段时间内也不会非常能干。他们违反了定义一个好的用户界面的许多原则,最明显的是维持用户幻觉的想法。如果预测的幻觉是智能的,但现实却远非如此,用户肯定会感到失望。这是迄今为止用普通英语进行的对话失败的主要原因,除非对话的上下文被严格限制以减少歧义的发生。

当然,情境(context)是关键。用户的幻觉是剧场,是最终的镜子。观众(用户)才是智能的,可以被引导到一个特定的情境中。给予观众适当的提示是用户界面设计的本质。窗口、菜单、电子表格等提供了一个情境,让用户的智能不断选择合适的下一步。

一个基于代理的系统,必须做同样的事情,但创建一个具有某种人类思维模式的界面将需要相当巧妙的方法。

任何足以扩大人类影响的媒介都足以颠覆他的世界。 要想让媒介的魔力为自己的目标服务,而不是与之对抗,就必须具备读写素养(literacy)。在最简单的情况下,素养意味着流畅性(fluency)。熟悉(知道 “语法”)是不够的。能够识别一本书和它的文字、打字机和它的键盘或计算机和它的输入输出设备的人,除非他们能把大部分时间用于处理内容而不是处理机械性的形式,否则就不是素养者(literate)。

计算机是一辆要驾驶的汽车还是一篇要写的文章?大部分的困惑来自于试图在这个层面上解决这个问题。计算机的多变性是这样的,它可以像一台机器,也可以像一种语言,被塑造和利用。它是一种媒介,可以动态地模拟任何其他媒介的细节,包括并不实际存在的媒介。它不是一种工具,尽管它可以像许多工具一样行动。它是第一个元媒介(metamedium),因此,它在表表现(representation)和表达(expression)方面具有前所未有的自由度,而且还几乎没有被研究。更重要的是,它很有趣,因此值得去做。

如果计算机可以成为汽车,那么像驾驶教育(driver-education)课程那样的计算机教育当然是可取的。事实上,现在正在尝试设计用户界面,通过比驾驶汽车更容易学习的互动方式来获取计算机的力量。用于文字处理、图形、模拟、信息检索和人与人之间交流的综合程序将在不久的将来成为纸和笔。然而,在幼儿园和一年级就开始教授纸和铅笔的驾驶教育水平,这意味着在计算机中可称为做记号的知识应该尽早到来;不应该像教育委员会最近的报告所建议的那样,让儿童等到他们在高中毕业前才可以进入半年的学习。孩子们从开始探索知识世界的那一刻起就需要信息的 informational)鞋、自行车、汽车和飞机。

当孩子们知道如何操作铅笔在纸上做一些特定的标记时,纸笔素养并未停止。教人阅读和写作的一个原因是 20 世纪的日常生活需要这些技能,但还有更宏大、更关键的目标。通过阅读,我们不仅希望吸收我们的文明和我们之前的文明的事实(facts),而且希望接触到思想和想象力的结构和风格。写作让我们走出看台,进入赛场;当我们直接塑造新旧知识时,这些知识才真正属于我们。

简而言之,我们表现得好像学习阅读和写作会帮助人们更好地、不同地思考。我们假定,从几个世纪来其他人的知识开始,比从头开始更有效率,并将为新思想提供一个发射台。我们认为,通过隐喻和其他形式的修辞来表达和塑造思想,可以使思想更充分地属于我们自己,并扩大我们转而向他人学习的能力。(Oliver Wendell Holmes说:“思想一旦扩展到更大的层面,就不会再回到它原来的大小。”) 我们认为所有这些都很重要,尽管阅读和写作似乎相当困难,需要多年才能掌握。我们的社会宣布,这种素养不是一种特权而是一种权利,不是一种选择而是一种责任。

那么什么是计算机素养(literacy)呢?它不是学习操作文字处理器、电子表格或现代用户界面;这些都是纸和笔的技能。计算机素养甚至不是学习编程。编程总是可以学会的,这类似学习语法,但学习写作才是更令人振奋的。

计算机素养是一种与计算活动的接触,其深度足以使计算相当于阅读和写作的流畅性和愉悦性。如同在所有的艺术中,与材料的浪漫关系必须很好地进行。如果我们重视艺术和文学的终身学习,将其作为个人和社会成长的跳板,那么,为了使计算成为我们生活的一部分,也得多花力气。