← 返回信息流
AI 资讯Hacker News·4 天前

1984年的家庭计算机编程

原标题:Cottage Computer Programming (1984)

速览

这是对1984年家庭计算机编程文化的历史回顾,当时个人电脑如Commodore 64等开始进入家庭。爱好者们在简陋环境中学习编程,为后来的软件生态奠定基础。该内容属于计算机历史,与当下AI技术无直接关联。

AI 深度解读

背景

1984年,Paul Lutus 在《Cottage Computer Programming》一文中讲述了自己从 NASA 项目辞职、隐居山林并写出畅销文字处理软件 Apple Writer 的传奇经历。Lutus 以“俄勒冈隐士”闻名,他放弃了硅谷的喧嚣,在荒野山顶上以每月40美元的成本生活,专注于编程创作。这篇文章最早出现在 Hacker News 上,后来成为科技文化中的经典文本,描绘了程序员与计算机之间独特的关系。

核心内容

1976年,Paul Lutus 正在为 NASA 航天飞机设计电子设备——他是一个大学辍学生,靠的只是“能做出能用的东西”这一技能(航天飞机舱内的照明系统正是由他的电子设备供电)。但他打算进一步逃离。那年春天,他搬到俄勒冈州更荒凉的角落,在400英尺高的山顶上建了一座12×16英尺的小木屋。他不想要路,就自己背着木料上山。他种了菜园,写诗,在笔记本上玩数学游戏,并且选择不用电。

一天晚上,在煤油灯昏黄的光线下读《科学美国人》时,他看到了 Apple II 的广告。“个人计算机!”他立刻骑着自行车到最近的电话旁下了订单。接下来的几周,他在笔记本里写满了要写的程序想法,甚至直接编码。他还把橡树和石栎之间拉了一千二百英尺的电缆来给机器供电。

当 Apple II 到货时,他已经成了一个抱着笔记本和铅笔的“废人”。接上机器后,他迫不及待地想玩通宵。他严格遵照说明书,却死活进不了 BASIC。说明书说“输入 CONTROL B 并按 RETURN”,他按了上百次 CONTROL B,什么都没发生。最后他放弃说明书,开始自己摸索。这时他才注意到一个标有 CTRL 的键——他之前从未用过真正的计算机,只能想象。说明书应该为那些只能想象的人写:应该写“按住标有 CTRL 的键,同时按 B 键,然后松开,再按 RETURN 键”。

无意中,他聚集了现在所谓的“电子 cottage”(电子村舍)所需的一切。远离硅谷的喧嚣,他为乐趣写程序——在屏幕上画漂亮图片、播放音乐、做优雅的数学运算。他把一些程序寄给 Apple Computer,Apple 很快提出购买并鼓励他写更多。当时和现在一样,计算机比程序多得多。

他把计算机当作玩具,但几周内收到的钱就超过了机器的成本。他开始考虑一个更大的项目:一个能让打字机“过时”的文字处理程序。由于他写得不少,他能很好地测试自己的程序,这一点后来证明至关重要。

接着,大自然母亲测试了 Apple Writer。那天他刚完成程序,正在用它写使用手册。天下着雨,他待在屋里工作。因为沉浸在数字世界的恍惚中,他完全没注意到自己正坐在400英尺高的山脊上经历雷雨。他正骄傲地解释程序如何在用户意外按下 RESET 键时保存内存中的数据——突然,一声巨响!闪电击中了窗外的一棵树。火花在小屋里飞溅,他的 Apple 电脑开始“发疯”。起初他以为机器彻底报废了,但看到一些生命迹象后,他重启了程序。嘿,程序居然重建了内存中的数据!屏幕立刻出现,光标停在他最后输入的单词旁边。而与此同时,桌上的一半磁盘都因静电放电被擦除了。

他把 Apple Writer 的第一个版本装在一个大牛皮纸信封里寄出。经过一番谈判(和几次修订),Apple 同意支付7500美元购买该程序。他当时没想到要利润分成,但有两件事后来改变了局面:1)第一版大获成功;2)Apple 内部没人能做出下一个版本所需的改进。所以大约两年后,他和 Apple 决定重新开始,这次基于版税模式:Apple 负责销售并支付版税,他保留所有其他权利。到本文写作时,新版本的 Apple Writer 每天产生的版税已经超过了原始售价。

他至今仍住在偏僻林区,与计算机为伴。鹿比人更常来访。池塘里有一只乌龟似乎遇到了另一只,他打算仔细观察这个进展。

他解释了为什么计算机化的村舍和树木能如此和谐共存:第一,计算机的成品通常没有重量,邮局或电话线就能送达;第二,计算机接管了我们许多琐碎的思考,让我们得以创造。他一直认为创造性思维的最佳背景是完全的寂静。用机器语言编程需要同时思考二十件事而不漏掉任何一环。

当然,隐居计算机生活也有缺点:如果你不是彻底的隐士,可能会感到孤独,或渴望大多数人所习惯的夜生活。他认为这个问题最终会通过小镇文化吸引力的提升来解决,而这将紧随计算机革命的步伐。

另外,有人告诉他,优秀的程序员很少有伴侣。这通常被当作他们不善社交的证据。他们总是被描绘成蓬头垢面的“网络流浪汉”,整天泡在计算机中心,回避严肃关系,为编码而编码。他并不完全反对这种看法,但背后有有趣的东西——至少对他个人而言。随着他越来越深入计算机,他发现机器要求绝对的精确。任何微小的失误都会导致数小时的工作瞬间消失;机器会不带感情地拒绝一切,直到每个细节都正确。然后程序突然完美运行,永不再出错。

计算机这位追求完美一致性的“ mistress”(伴侣),只接受无瑕疵的作品,不提供任何解释。当可接受的终于被提交时,机器的接纳是彻底、坚定、永恒的。正如爱因斯坦在另一语境中所说:“在黑暗中焦虑搜寻的岁月,带着强烈的渴望、信心与疲惫的交替,以及最终走向光明——只有亲身经历过的人才能理解。”

这种奇特关系的结果是,有一段时间他变得太挑剔,无法忍受周围的真实女性。“如果我跟你说过一千次——答案是‘也许’!——这种话让人厌倦。”

关键要点

  • 自学与反复试错:Lutus 面对说明书无法进入 BASIC,通过探索发现 CTRL 键的用法,这是一种典型的自学编程经历。
  • 隐士式工作模式:他主动选择远离都市、没有电的隐居生活,用电缆引入电力和计算机,创造了“电子村舍”的原始模板。
  • 功能驱动开发:他为了“淘汰打字机”而开发 Apple Writer,并且自己作为重度用户参与测试,保证了程序质量。
  • 意外测试的可靠性:雷击导致磁盘擦除,但程序因内存数据重建功能而存活,验证了设计中容错机制的价值。
  • 版权与版税模式:最初以一次性价格出售,后改为版税制,使收入远超原始售价,这成为软件商业模式的早期范例。
  • 计算机的精确性对人性的影响:长期与要求绝对精确的机器打交道,让他对人际关系的模糊性变得不耐受,这种“完美主义后遗症”是许多资深程序员的共同体验。

意义与影响

Paul Lutus 的故事是“电子 cottage”(电子村舍)概念的经典案例。他证明了独立程序员可以完全脱离大型机构,仅用一台个人计算机和自身创造力完成高质量软件产品。Apple Writer 作为早期文字处理软件的畅销品,为后来的独立开发者(如 shareware 时代的作者)树立了榜样。

从更宏观的视角看,Lutus 描述的隐居编程生活后来成为硅谷“黑客”文化的一部分,并预演了今天的远程工作浪潮。他所追求的“创作需要完全安静”的理念,在当今网络连接无处不在的时代仍被许多人推崇。同时,他关于计算机对人际关系影响的自省——程序员容易变得对模糊性不耐受——在技术社群中引发了持续讨论。这篇文章不仅是一段个人回忆,更是对计算机革命初期那种自由、纯粹、与自然共生的编程精神的珍贵记录。

查看原文 →atariarchives.org