我们可以从老式计算中学到很多

煤油灯科技2023-02-16 16:15

Morgan Aldridge于 2005 年购买时,Apple Newton 已经很旧了。但是 Apple 于 1993 年首次销售并于 1998 年停产的前 iPhone 掌上电脑是满足他需求的最佳工具。

“我使用过 Palm Pilots,当时它仍然是首选的数字组织器,而且我知道它们存在同步问题,”他解释道。此外,当时市场上的大多数其他手持设备都使用廉价的 RAM 内存,如果断电,这些内存会丢失数据,需要从桌面备份中恢复。

Aldridge 的研究使他发明了 Newton,它使用固态存储,可以无限期地保留数据,就像现代智能手机一样。用户报告说,他们将 Newton 设备放在抽屉和壁橱里多年,但在他们最终打开电源时发现它们仍然拥有所有数据。此外,他发现 Newton 社区仍在积极为该平台开发驱动程序和软件。所以他买了一个 Newton Message Pad,直到智能手机时代,他一直在使用它。如今,Aldridge 使用 iPad 作为他的主要数字组织者,但他仍然作为NewtonScript 资源网站和United Network of Newton Archives的维护者参与社区。

多亏了开源,只要社区继续支持它,任何技术都不会过时。可以将 Newtons 和 Palm Pilots 与现代台式机同步,为长期停产的操作系统下载网络浏览器,或者通过 WiFi 将 Apple IIe 等老式计算机连接到现代互联网。每年,任天堂娱乐系统和 Game Boy 等老式视频游戏机都会推出新卡带。

人们也让旧软件和在线平台保持活力。Dreamwidth团队分叉了早期社交网络LiveJournal 源代码的旧版本,并围绕它构建了一个社区。拨号公告板系统软件WWIV仍在维护,并且仍然存在大量 BBS。团队正在努力恢复 AOL 和 Prodigy 等早期在线服务的各个方面。仍然可以使用 Gopher,这是一种超文本协议——在 1990 年代初期的一段短暂时期——比 Web 还大。

开发人员在这类项目上花费了无数的时间,通常几乎没有希望获得经济回报。那么,为什么在这些技术被创造它们的公司停产很久之后,还要付出如此多的努力来保持或复兴这些技术呢?怀旧和逃离当今经常令人精疲力尽的数字环境的冲动是显而易见的原因。但不仅如此。使用老式技术很有趣,可以帮助开发人员更多地了解计算机科学,并保存计算历史。在许多情况下,可以从“旧方法”中吸取教训。

没有什么比实际浏览服务的菜单结构并与其各种功能交互更能了解这些服务及其在计算历史中的位置了。

互动历史

历史保存是老式计算最明显的好处之一。一方面,软件和数字内容是最容易保存的文化制品之一,因为它们可以轻松复制和备份。但随着平台停产,实际运行该软件的能力可能会成为一个挑战。

长期以来,仿真器提供了一种在较新平台上运行旧软件的方法——这些旧软件是为停产的硬件和操作系统编写的,这些软件和操作系统如今可能很难或不可能找到。您可以使用MAME或RetroArch玩复古游戏,使用DOSBox中最受欢迎的Lotus Agenda个人信息管理器管理您的联系人,或者运行旧的 Palm 应用程序在您的浏览器中。这些项目背后的开源社区努力尽可能准确地模仿必要的硬件和软件层。然而,网络软件本质上更难保存,因为它不仅依赖于本地软件,还依赖于服务器端软件。就 LiveJournal 而言,后端代码在 2014 年之前都是开源的,因此不仅可以轻松保留该代码,还可以创建像 Dreamwidth 这样的分支。Gopher 不是集中式服务,而是一种协议,很像 HTTP,这使得创建现代 Gopher 客户端和服务器变得简单。但一些规模最大、历史上最重要的网络服务依赖于在早已报废的服务器上运行的丢失的专有软件。

早期的在线服务,如 AOL/Quantumlink、Compuserve 和 Prodigy,在鼎盛时期拥有数百万用户,并提供软件、游戏、艺术品,当然还有无数的在线讨论。在智能手机和无处不在的互联网时代之前,这些拨号服务提供了许多我们今天认为理所当然的数字体验,包括在线新闻、天气预报、体育比分、股市行情、多人游戏、电子邮件、聊天——甚至在线百科全书。

虽然屏幕截图可以帮助记录这些服务是什么样的,但没有什么比实际浏览服务的菜单结构并与其各种功能交互更能了解这些服务及其在计算历史中的位置了。

“当任何规模庞大的在线服务消失时,我们文明的一部分文化结构就会随之消失,”记者兼计算机历史学家本吉·爱德华兹 ( Benj Edwards ) 在 2014年大西洋月刊一篇关于恢复丢失的 Prodigy 内容的文章中写道。

Prodigy 具有特殊的历史意义。在其他在线服务通常基于文本且难以使用的时代,Prodigy 提供了图形界面,并帮助开拓了数字广告、电子商务和在线旅游预订。早在亚马逊出现之前,Prodigy 就可以让您在线购买衣服、家庭用品、电子产品,甚至杂货。爱德华兹在他的文章中解释说,神童爱好者吉姆卡彭特意识到所有这些都没有得到很好的记录。甚至Prodigy 的屏幕截图也很难获得。幸运的是,Carpenter 发现 Prodigy 在本地缓存文件中存储了相当多的内容,他已经能够从旧计算机中恢复许多图像。最近,一张 Prodigy 演示盘被上传到 Internet Archive。这个演示没有连接到服务器,但你可以从您的浏览器探索一些功能。

2019 年,程序员Phillip Heller看到了 Edwards 的文章,决定参与Prodigy Preservation Project。他想比离线演示更进一步,让今天实际使用 Prodigy 成为可能。“Benj 和 Jim 认为重新创建 Prodigy 服务器是一个遥远而困难的目标,”Heller 说。“我认为这听起来像是一个有趣的挑战。”

结果是一个名为Prodigy Reloaded的 Prodigy 兼容后端。在 ReadME 项目的演示中,Heller 使用在 DOSBox 中运行的 Prodigy 客户端的旧副本连接到 Prodigy Reloaded 服务器,并演示了新闻和天气服务等功能。海勒用从屏幕截图中挑选出来的新闻标题和预测来填充这些功能,但他希望将来能够添加实时新闻、天气和股票更新。

我认为我们很多人热衷于复古计算的最大原因是它让人联想到一个你可以理解计算机所做的一切的时代”

复古计算的乐趣

Heller 说,历史保护只是他制作 Prodigy Reloaded 的原因之一。“这也很有趣,”他说。“这就像拼一个非常难的拼图,我有一些边缘部分但没有中间部分。我必须使用我必须填充的形状来填充图片的其余部分。”

乐趣和学习是从事此类项目的常见理由。“我认为我们很多人热衷于复古计算的最大原因是它让人联想到一个你可以理解计算机所做的一切的时代,” Cameron Kaiser说,他是一位老式计算爱好者,他维护着Floodgap,一个服务器和网站,它拥有最著名的现代 Gopher 服务器之一,以及 PowerPC 网络浏览器TenFourFox和许多其他项目。

“今天的机器是如此复杂,以至于你可能会用你的余生来理解它们,”牛顿模拟器爱因斯坦的贡献者马蒂亚斯梅尔彻说。“Newton 或 Game Boy 是最后的系统之一,你可以在其中了解整个系统,从 CPU 到机器代码。”

“如果你真的想了解计算机,首先要从一台旧的经典机器开始,”游戏开发者Rebecca Heineman在播客 Corecursive的最近一集中说道。“当你真正了解指令集、堆栈如何工作、内存管理如何工作、硬件如何工作以及它们如何交互时,你就会真正了解计算机的局限性。”

事实上,许多计算机科学课程使用 Game Boy 文档来教授微处理器架构,因为它的架构小而简单,足以让学生彻底学习。“Game Boy 是学习使用真实硬件和实际输出进行汇编和低级编程的好方法,”负责开源 Game Boy 开发计划gbdev的Antonio Vivace说。“在做一些很酷的事情时,你会学习到难以掌握的计算机科学概念。它使本来可能不是很有趣的事情变得有趣。”

当今技术日益复杂,其范围已从计算架构扩展到软件和网络。现代浏览器支持加密协议、JavaScript 渲染、各种多媒体格式等等。“很难理解浏览器中发生的一切,”技术专家兼企业家 Jan Kammerath 说。这是吸引他进入现代 Gopher 场景的部分原因。

Gopher 于 1991 年首次出现,提供了类似于基于文本的 Web 版本的体验。Gopher 服务器上的文件可以链接在一起,或链接到其他服务器上的文件。甚至还有 Gopher 搜索引擎。很难表达这一切在当时是多么新颖。连接到别人的计算机是令人兴奋的,无论是像 BBS 这样的拨号服务器还是 Internet 上的 FTP 服务器。更令人兴奋的是从一个服务器跳到另一个服务器,跟随从一组文件到另一组文件的链接,在你意想不到的地方结束。Gopher 让世界第一次看到我们现在与网络相关的许多事物。至少在理论上,任何人都可以托管自己的 Gopher 服务器来托管他们想要的任何内容,而其他人可能会找到访问它的方法。

随着 HTTP 和 Web 浏览器变得更加强大和流行,该平台曾一度大放异彩,然后逐渐消失。但 Gopher 近年来已经成功卷土重来。Kaiser 的 Gopher 搜索引擎 Veronica-2 索引的活跃服务器数量在 2017 年至 2018 年间几乎翻了一番,从 133 台增加到 260 台。截至 2022 年 11 月 15 日,该引擎索引了 343 台 Gopher 服务器,略低于 2020 年的峰值 395 台,但依然强劲。

Kaiser 指出数字生活的所有挑战——从混乱的界面到压倒性的信息——是一些人转向 Gopher 和其他旧互联网平台的原因。“很多人都在寻找现代网络的替代品,但我不认为 Gopher 服务器数量激增的原因是什么,”Kaiser 说。“我认为这更像是一种网络效应。” 也就是说,Gopher 服务器越多,使用 Gopher 的人就越多,使用 Gopher 的人越多,就会有越多的人创建自己的 Gopher 服务器。

Kaiser 的 Floodgap Gopher 服务器提供每日新闻提要、天气更新、其他 Gopher 站点的链接以及 Veronica-2 搜索引擎。使用 Floodgap 可以让我们稍微了解一下早期的互联网是什么样的。Kammerath 对此很感兴趣,但他说他发现以现代标准来看,浏览“Gopherspace”的体验有点麻烦。“所以我认为编写自己的 Gopher 客户端作为一个小练习会很有趣,”他说。结果是Gophie,一个简单的跨平台 Gopher 客户端。

“构建一个 Gopher 客户端,或者只是研究协议,对人们了解网络工作原理的基础知识很有帮助,”Kammerath 说。“它比 HTTP/3(HTTP 的当前版本)简单得多,因此更容易理解不同层的交互方式。”

Gopher 不支持 cookie 和标头等许多现代 Web 功能,与 Gopher 合作还可以帮助开发人员理解为什么首先要添加其中许多功能。“如果您花一些时间使用旧工具为旧平台开发,您会再次爱上现代工具,”Kammerath 说。

如果您花一些时间在旧平台上使用旧工具进行开发,您会再次爱上现代工具”

过去的教训

许多用户发现老式计算不仅仅是教育方面的好处。Alridge 在 2005 年购买 Apple Newton 并不是出于怀旧之情,也不是出于保护科技历史的冲动。他购买它是因为它比当时市场上的其他数字组织者更适合他的需求。有时,旧技术提供的价值是当代同行所不能提供的。

“我运行 Gopher 服务器不是为了了解历史,我喜欢 Gopher 是为了它本身,”Kaiser 说。“我每天都使用它。有些事情我不能在 Gopher 上做,比如登录我的银行账户。但对于很多用例来说,它更有效,比如查看天气和阅读新闻。因为它非常简单,我几乎可以在任何设备上运行 Gopher 客户端,甚至是旧的和低功率的计算机。”

老式技术爱好者经常讨论在这些旧设备的限制下工作如何迫使他们更多地考虑资源效率。“Prodigy 开发人员用很少的资源做了大量的事情,”Heller 说。“他们实施的不是一台而是两台可以在不到 640 KB 内存中运行的虚拟机。邮件程序只有大约 5 KB。就我们可以提高多少效率而言,这真的让人大开眼界。”

相比之下,今天的硬件功能如此强大,以至于对优化软件性能的关注要少得多。“有句话说:'硬件很便宜,程序员很贵,'”Kaiser 说。“我可以同情这种观点。今天我们中的大多数人不再手工编写汇编代码,尽管这可能是从我们的硬件中榨取更多能量的最佳方式。这是一个有效的权衡。” 但他指出,越来越强大的计算机不仅仅会导致处理能力和 RAM 的使用效率低下。

“有一种趋势是添加越来越多的功能,这使得软件界面变得更加繁忙和难以使用,”他说。“我认为用户的认知超载了。” 这是 Gopher 吸引力的重要组成部分:它基于文本的界面比当今的许多 Web 应用程序简单得多。

硬件性能并不是使旧应用程序相对简单的唯一因素。较旧的设备在可以显示的界面种类方面也受到限制。“Newton 和 Palm 应用程序只能使用小型黑白或灰度屏幕,”Melcher 说。“设计师必须深思熟虑要包括什么。”

点击式 Game Boy 游戏制造商 GB-Studio 的创始人 Chris Maltby 指出,最初的黑白 Game Boy 游戏同样必须在具有简单图形和声音的小屏幕上运行,同时仍然很有趣. 马尔特比在那里找到了教训。“在构建软件时,我的部分工作就是处理这些非常复杂的东西,并创建简单的方式与它们交互,”他说。“Game Boy 编程让我成为了更好的开发者。”


参考链接:https://github.com/readme/featured/vintage-computing

 

---煤油灯科技victorlamp.com翻译整理---

你可能也喜欢这些文章

科技互联网,科技,资讯,动态,洞察,量子,计算,AI,人工智能,机器人,区块链,Web3,分布式,操作系统,OS,芯片,视频,深度,论文