Lotus Notes 与 PLATO：协同软件的历史回眸一、文章概述1. 来源标题：LotusNotes作者：J. B. Crawford发布时间：2026 年 3 月 14 日来源：Computers Are Bad2. 文章摘要本文追溯了协同软件 Groupware 的历史源头，从 20 世纪 60 年代的 PLATO 系统开始，讲述其 =notes= 功能如何影响了后来的 Lotus Notes，以及 Lotus Notes 如何从巅峰走向衰落的过程。二、PLATO：协同计算的先驱1. 军事与学术的交汇第二次世界大战对美国高等教育产生了深远影响。GI Bill 使得大量退伍军人能够负担大学教育，而军方规划者认为盟军的胜利源于技术和工业卓越。雷达、无线电导航、科学管理、运筹学、核武器等许多决定性创新都起源于顶尖大学的学术研究实验室。MIT、斯坦福、加州大学等许多高校创建了子公司和衍生机构，至今仍是主要国防承包商。2. PLATO 系统的诞生在这种军事学术合作精神下，伊利诺伊大学的一组研究人员（主要是物理学家）获得了军事资金，开发了名为 Programmed Logic for Automatic Teaching Operations，即 PLATO 的系统。PLATO 起源于 20 世纪 50 年代末，鼎盛于 20 世纪 70 年代，通常被认为是计算机辅助教学的首次尝试。PLATO 与当时的其他大型计算机系统（如空中交通管制系统 9020）有许多相似之处：它 struggling 在大范围内连接终端和计算机，在互联网甚至只是一个想法之前；它必须显示图形，这在当时是非常原始的计算机能力，但被认为对课堂演示至关重要；系统支持许多同时用户，并且必须实时处理数据以同步他们的各种工作空间。但 PLATO 也有重要的差异。与 SAGE 和 9020 不同，与商业会计和制表系统不同，与几乎所有已发明的计算机应用程序不同，PLATO 是为用户主导的内容而设计的。3. 协作与 =notes= 的诞生PLATO 强调协作，反映了其起源于学术物理学。20 世纪 60 年代早期的许多 PLATO 开发侧重于简化学习模块的开发，使教师能够用较少的专业计算机培训创建交互式 PLATO 课程。到 20 世纪 70 年代，随着 PLATO 终端越来越多地安装在伊利诺伊州的学校和其他机构，对协作的重点转向了通信。如果学习模块对教师来说容易开发，学生也应该能够使用系统创建自己的课程和学习材料。研究人员和其他学术用户也有类似的愿望，希望有一个计算机系统，可以在其中保存笔记、撰写报告并与同事保持联系。伊利诺伊大学计算机辅助教育研究实验室的 PLATO 开发人员长期以来有一种简单的沟通方式，通过编辑一系列名为 notes1 到 notes19 的课程。虽然功能尚可，但并不完美：完全缺乏访问控制、格式或任何组织方式，随着系统用户的增加，notes 课程变得令人头疼。1972 年，随着 PLATO IV 终端、新资金和新的后端计算机，PLATO 快速增长。显然需要一个更好的 notes 版本。通过学术界的运作，构建更好的 notes 文件的任务落在了两名高中生身上，他们正在伊利诺伊大学附属实验室高中过暑假。使用 PLATO 原生的 TUTOR 编程语言和用于考试和课程讨论的设施，Dave Woolley 和 Kim Mast 编写了一个名为 =notes= 的课程。=notes= 课程最初用于系统公告、故障报告和 PLATO 操作员之间的通信。但很快，它做的事情远不止这些。4. PLATO 的历史地位PLATO 并没有证明是一个持久的成功，尽管进行了数十年的商业化努力，但它很昂贵，计算机辅助教学的实际益处仍未得到证实。很少有 PLATO 系统逃出伊利诺伊大学及其卫星交付点网络。后续项目逐渐消失，尽管 PLATO 从 1960 年的概念发展到 1970 年代复杂的多用户交互系统，但 PLATO 在 1980 年代走向衰落。如今很少有人想到 PLATO，这是不幸的，因为它是那些非凡的、孤立的历史时刻之一，一种概念上的奇点，在这个项目中，现实成功有限的项目孕育了如此多的概念，以至于它决定了后来的历史进程。当我们看看现代计算机、智能手机和社交媒体时，很难找到任何不是以某种方式从 PLATO 衍生而来的东西。通过 PLATO 在 20 世纪 70 年代的 NSF 资金以及与其他 NSF 努力的互动，我认为 PLATO 可能是比 ARPANET 和 NSFNET 更重要的现代互联网先驱。不是在技术方面，PLATO 紧密耦合到主帧终端架构，不太可能产生我们灵活的分组路由互联网架构。而是在氛围方面。PLATO 是一个大型、联网的计算机系统，强调发布事物和查看其他人发布的事物。它提供数学课程，但也提供游戏。最重要的是，它有 notes。graph TD A[PLATO 系统 1960s-1970s] --> B[=notes= 功能 1973] A --> C[在线游戏] A --> D[计算机辅助教学] B --> E[公共优先通信文化] E --> F[PLATO notes 1976] F --> G[Ray Ozzie 伊利诺伊大学学生] G --> H[Iris Associates 1984] H --> I[Lotus Notes 1989]三、Lotus Notes 的诞生1. Ray Ozzie 与伊利诺伊大学渊源20 世纪 70 年代末，伊利诺伊大学正在发生其他事情：未来微软首席技术官 Ray Ozzie 正在那里攻读计算机科学本科学位，其中很大一部分涉及 PLATO。1979 年毕业后，他为 Data General 工作，Data General 是流行的小型计算机制造商，他向 Jonathan Sachs 汇报。离开 Data General 后，他在 Software Arts 工作，Software Arts 是 VisiCalc 背后的开发公司。他一定与 Jonathan Sachs 保持联系，后者于 1982 年离开 Data General 成立了自己的公司：Lotus Development。Lotus 因 Lotus 1-2-3 而闻名，这是取代 VisiCalc 成为个人计算中可能最重要软件包的热门电子表格应用程序。Lotus 的两位创始人是 Sachs 和 Mitchell Kapor，他们都有 Data General 和 Software Arts 的背景。Lotus 1-2-3 是有史以来最成功的软件产品之一，但办公计算的前沿正在迅速扩展到文字处理和演示。与 Google Docs 和 Microsoft Office 仍然勉强维持的现代单一文化不同，生产力软件市场在 20 世纪 80 年代极其竞争，几乎每个独立软件供应商都在开发某种生产力或办公套件。其中绝大多数都是商业失败，Lotus SmartSuite 也不例外。2. Iris Associates 与 Lotus Notes 的开发1984 年，Ray Ozzie 离开 Lotus 成立了一家名为 Iris Associates 的新公司。Iris Associates 是一家独立公司，但有合同义务将其产品的独家出版权提供给 Lotus Development。作为交换，Iris 运营的前几年由 Lotus 的大量投资资助。Ozzie 现在控制着自己的王国，迅速聘请了另外三名伊利诺伊大学校友——他在 PLATO 工作时认识的人。不清楚这是 Iris Associates 的最初目标，还是由于他们对 PLATO 的经验而成为目标。无论如何，Iris Associates 花了大约五年时间构建了一个可以在 Windows PC 网络上运行的 PLATO =notes= 课程版本。通过他们与 Lotus 的出版安排，这将被称为 Lotus Notes。sequenceDiagram participant P as PLATO =notes= 1973 participant R as Ray Ozzie 伊利诺伊大学 participant I as Iris Associates 1984 participant L as Lotus Development participant N as Lotus Notes 1989 P->>R: 影响学生 R->>I: 创立公司 L->>I: 投资并要求独家版权 I->>N: 开发五年 L->>N: 发布产品四、Lotus Notes 的技术架构1. Groupware 的定义Lotus Notes 是最著名或最臭名昭著的 Groupware 示例之一。Groupware 是一个难以确切定义的概念，很大程度上是因为其历史。整个类别可以追溯到 Douglas Engelbart 在 SRI 的人类增强工作——这项工作像 PLATO 一样未能获得市场采用，但对整个艺术产生了巨大影响。人类增强是 Groupware 的核心思想，也称为计算机支持的协作工作。这些是高层次的学术思想，关于计算机如何增强大多数生产力工作背后的社会过程。在 Iris Associates 的时代，Groupware 意味着类似这样的东西：协助人类进行通信、协作以及跟踪和执行流程的软件。实际上，这意味着核心 PIM 应用程序，如电子邮件和日历，但也包括协作编辑、工作流自动化、文档和策略管理，以及涉及多人的所有其他核心业务需求。2. 复制数据库架构Lotus Notes 的许多怪异之处反映了其在 PLATO 的起源。20 世纪 80 年代的大多数微机网络产品都是围绕对等网络构建的，这是多个小计算机可以直接相互通信的想法。那是 20 世纪 80 年代的热门新事物，但 PLATO 不属于 20 世纪 80 年代，它属于 20 世纪 60 年代。PLATO 甚至不是真正的客户机服务器架构：它是一种终端计算机架构，其中单个 PLATO 终端与运行实际逻辑的多个（主要是 DEC）大型机或中型计算机之一交互。PLATO 不仅是多用户的，它是多计算机的。为了从多组独立的计算机和终端形成一个集成系统，PLATO 在计算机之间复制所有用户数据。Lotus Notes 继承了相同的方法：数据存储在数据库中，通过在机器之间复制该数据库在用户之间通信。Lotus Notes 中的一切都是一个 note，数据库是由唯一 ID 标识的 notes 集合。当 note 更新时，该 note 被复制到数据库的其他副本。随着时间的推移，这种架构明显的性能和可靠性问题变得显而易见，复制过程变得更加复杂，但它始终在这个简单的逻辑模型上工作：更新本地数据库，然后将其复制到其他。graph LR subgraph 办公室 A UA[用户 A] --> |编辑| NA[本地 Notes 数据库] end subgraph 办公室 B UB[用户 B] --> |读取| NB[本地 Notes 数据库] end subgraph 办公室 C UC[用户 C] --> |读取| NC[本地 Notes 数据库] end NA <--> |复制同步| NB NB <--> |复制同步| NC NA <--> |复制同步| NC3. 客户机服务器模型由于 PLATO 的例子，Notes 围绕客户机服务器模型进行架构设计。客户端通常称为 Lotus Notes，部分复制数据库以允许用户查看和编辑 notes。服务器后来称为 Domino，保留数据库的完整副本并执行足够的逻辑来处理访问控制。像 PLATO 的复制模型一样，并不期望有一个单一的中心服务器。许多 Domino 服务器可以共享同一个数据库，并在自己之间复制更改。这种架构对于那个时代的企业部署非常方便，每个办公室位置都有局域网，但站点之间的网络连接昂贵且相对较慢。Domino 服务器具有将用户活动整合到减少的复制流量中的效果，当办公室间网络链接丢失时，办公室仍然正常运行，尽管作为一个孤岛。graph TB subgraph 总部 Domino1[Domino 服务器] end subgraph 分公司 A ClientA1[Notes 客户端] ClientA2[Notes 客户端] DominoA[Domino 服务器] ClientA1 --> DominoA ClientA2 --> DominoA end subgraph 分公司 B ClientB1[Notes 客户端] ClientB2[Notes 客户端] DominoB[Domino 服务器] ClientB1 --> DominoB ClientB2 --> DominoB end Domino1 <--> |复制同步| DominoA DominoA <--> |复制同步| DominoB DominoB <--> |复制同步| Domino1五、Lotus Notes 的兴衰1. 巅峰时期在 20 世纪 90 年代中期，Lotus Notes 是占主导地位的 Groupware 平台。Forbes 报道 Lotus Notes 的市场份额在 1995 年为 64%。在那个巅峰时期，IBM 花费超过 30 亿美元收购了 Lotus。1995 年，Lotus 与 IBM 合并。IBM 对客户机服务器微机应用程序投入巨大，因为它们是与 IBM 在大型机系统传统优势最接近的匹配。收购 Lotus 无疑是为了推进这一重点：Lotus Notes 必须是 Windows 95 时代最突出的客户机服务器产品之一。2. 技术演进A. Java 化Lotus Notes 1 到 3 是迭代改进，从 1989 年到 1993 年，添加功能和修复缺陷。随着 Lotus Notes 4，从 1996 年到 1999 年，IBM Lotus Development 开始全面移植到 Java。Java 被添加为原生脚本语言，与 Formula 和 LotusScript 一起，许多更新的 Lotus Notes 功能是 Java 优先的。Lotus Notes 的 Java 化可以说在 2008 年完成，当时 Lotus Notes 客户端被完全替换为基于 Eclipse 的完整 Java 实现。B. Web 适配除了新的面向对象用户界面世界，IBM 还使 Lotus Notes 适应了 Web。版本 4 引入了一个非常简单的 Web 界面，用户可以通过 Web 浏览器查看静态 notes，IBM 添加了 SMTP 桥以与其他电子邮件系统互操作。2002 年左右，IBM 逐步淘汰了 Lotus 品牌，果断地将 IBM Notes 和 IBM Domino 折叠进 Big Blue。Domino Web Access 到 2002 年提供了 Web 界面，尽管它有限并且与我们现在认为的仅仅是 Webmail 没有多大区别。2008 年，IBM 推出了 XPages。XPages 基本上是在 Domino 服务器上运行的 Java Server Faces 组件。它们直接与 Notes 数据库交互，在某些方面只是 Notes 表单的基于 Web 的版本。你甚至使用 Domino Designer 编辑它们，这是严肃 Notes 开发的 IDE。3. 衰落的原因A. 市场份额流失Lotus Notes 最迷人的部分是它的衰落。1995 年，Lotus Notes 市场份额为 64%。1997 年，下降到 47%。2008 年的一项调查将 Lotus Notes 定为 10%。考虑到企业软件的长周期和持久性，这是一个惊人的衰落。B. 竞争对手 MicrosoftIBM 以巨资收购热门软件产品然后将其推入地下是一个老故事。但这里还有另一个主要参与者：Microsoft 处于最佳状态。绝大多数 Lotus Notes 用户直接转向 Microsoft Exchange。Microsoft 除了与 Windows 的更高级别集成（在技术和销售层面）之外，还被公认性能更高且更易于维护。我认为 Microsoft 在 21 世纪初处于其工程能力的顶峰，并且他们在软件方面比所有带有开放标准 TCP/IP 网络之前包袱的软件具有相当大的后发优势。C. 标准化问题标准本身是故事的另一个重要部分。早期的电子邮件系统都是专有的，不一定是网络系统——第一个电子邮件实现只是将邮件存储在所有用户通过终端访问的单台机器上。Lotus Notes 拥有完全专有的电子邮件实现，在那个世界中并不突出。当 Microsoft 首次推出 Exchange 时，它有相同的限制。这种情况很快改变，尽管更多是意外而非有意。ITU X.400 预期为公共互联网上的电子邮件提供标准，取代专有和网络特定的开放标准的大杂烩。相反，X.400 未能做太多事情——但在 Exchange 甚至可以推出之前，它成为了 Microsoft Exchange 的基础。Exchange 最终处于某种标准炼狱中，一种开放标准的实现，该标准在 Exchange 可以推出之前就已经消亡。Exchange 的 X.400 功能成为一种不同寻常起源的专有标准，而工业和学术界的大部分选择遵循 NSF 示例并采用更简单更古老的 SMTP。D. 身份模糊最后，房间里的大象是 Lotus Notes 的身份问题。今天很难准确解释 Lotus Notes 是什么。这并不是一个新问题。1998 年，Forbes 写道：甚至在 IBM 到达之前，Notes 的身份就已经模糊；现在也不清楚。首先，软件被营销为一个系统，使广泛分散的员工群体能够轻松地协作编辑文档或管理项目。然后 Notes 被重新定义为构建定制协作应用程序的工具。现在 Lotus 似乎正在强调 Notes 中的电子邮件功能，并将其定位为 cc:Mail 的替代品。Lotus Notes 在某种程度上定义了一个产品类别这一事实成为了其他供应商用更有针对性、更狭隘、更明显有用的竞争产品挤入的负担。Lotus Notes 开始听起来像 Zombocom：你可以做任何事情。Microsoft 只是销售电子邮件和日历。Notes 的大范围对用户体验也是一个问题；除了 Notes 客户端在 21 世纪看起来和感觉过时之外，其功能的通用性和深度意味着它也很难使用。graph LR A[1995 市场份额 64%] --> B[1997 市场份额 47%] B --> C[2008 市场份额 10%] C --> D[2018 出售给 HCL] A --> E[IBM 收购 $30 亿] E --> F[Java 化 1996-2008] F --> G[XPages 2008] G --> C六、结语2018 年，IBM 将 Lotus Development 的剩余部分出售给一家名为 HCL 的印度软件公司。HCL 是一家经典的 IT 咨询公司，其投资组合涵盖工业 4.0 到 SAP 咨询。他们作为 IBM 摆脱品的一部分收购了 Lotus。Lotus Notes 现在是 HCL Notes，据我所知，HCL 打算只要遗留客户愿意支付他们继续运行 Notes 的费用，就享受收入。那是 Lotus Notes 魅力的另一部分：它可能是最传统的传统软件。我从未在一家使用 Lotus Notes 的组织工作过，但我工作过的每一家非初创公司都有强大的制度记忆，回想起在 Lotus Notes 时代的过去。有些人愉快地记住它，大多数人讨厌地记住它，但他们都记得它。Gmail 会激发这样的情感吗？参考资料LotusNotes - Computers Are Bad