系统与基础设施web.mit.edu编辑精选
《Unix 痛恨者手册》(1994)[PDF]
The Unix-Haters Handbook (1994) [pdf]
2014 — 2022,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
《Unix 讨厌者手册》是 1994 年出版的一本讽刺文集,收集了当年 Unix 用户对 Unix 及其工具链各种缺陷的吐槽,书前还附有 Dennis Ritchie 撰写的“反序言”。它源于一个 Unix 吐槽邮件列表,如今读来既好笑又发人深省。
为什么经久不衰:它提醒我们 Unix 和 C 的统治地位更多是历史与经济偶然的产物而非必然真理,这种视角在今天依然稀缺而珍贵。
HN 评论精选
讽刺的是当年逃离 Unix 的 Mac 如今自己也成了 Unix
20 年前读这本书时,我绝不会想到自己如今是在一台跑着又一种 Unix 变体的 Mac 笔记本上打字。书里这句现在看来太搞笑了……“至于我?我换用了 Mac。不再有 grep、管道和 sed 脚本,只有简单优雅的生活:‘你的应用程序因错误号 -1 意外退出。确定?’”
dsmithatx查看英文原文
When I read this 20 years ago I would never have believed I'd be typing this on a Mac laptop running yet another Unix variant. This line is now so funny... As for me? I switched to the Mac. No more grep, no more piping, no more SED scripts. Just a simple, elegant life: “Your application has unexpectedly quit due to error number –1. OK?”
年轻一代对操作系统研究的冷漠令人担忧,Unix 或许并非终点
我喜欢给自己出些疯狂的问题去思考,比如:什么样的东西会让人觉得“好到可以取代 Unix”?我是 Unix 的忠实粉丝,但希望能活着看到让 Unix 显得过时的新事物出现。让我心寒的是年轻开发者对操作系统普遍缺乏兴趣——如今做 OS 相关工作的人很少。为什么我们总把操作系统当作“已解决”的问题?是不是冯·诺依曼架构决定了我们只能抽象出 Unix 这样的东西,不改变对计算机本质的思考方式就造不出同样强大却不同的系统?
open-source-ux查看英文原文
It's interesting that no one blinks twice at the thought of using a decades-old operating system - it's "mature", "battle tested", "proven over time" or some other phrase. On the other hand, programming languages that are decades old are looked upon as antiquated and not fit for modern problems, so we create new languages and discard the old ones, including forgetting useful ideas those languages contained. Sometimes, we come back to some of those ideas. So a dynamic language decides that types are in fact quite useful, and a single exe file is so much simpler to distribute than endless tiny script files, and maybe speed does matter after all. Not passing judgement, just saying that's how it is. And it is rather odd isn't it?
open-source-ux查看英文原文
It's interesting that no one blinks twice at the thought of using a decades-old operating system - it's "mature", "battle tested", "proven over time" or some other phrase. On the other hand, programming languages that are decades old are looked upon as antiquated and not fit for modern problems, so we create new languages and discard the old ones, including forgetting useful ideas those languages contained. Sometimes, we come back to some of those ideas. So a dynamic language decides that types are in fact quite useful, and a single exe file is so much simpler to distribute than endless tiny script files, and maybe speed does matter after all. Not passing judgement, just saying that's how it is. And it is rather odd isn't it?
对老操作系统的宽容与对老编程语言的苛刻形成了奇怪的反差
有趣的是,人们对使用几十年历史的操作系统毫无异议——它“成熟”“久经考验”“经过时间验证”。可几十年历史的编程语言却被视为过时、不适合现代问题,于是我们不断造新语言、丢弃旧语言(连同其中有用的思想),有时又绕回这些想法:动态语言发现类型其实有用,单个可执行文件比一堆小脚本好分发,速度终究还是重要的。我不做评判,只是说事实如此——这难道不奇怪吗?
raverbashing查看英文原文
Unix is weird because it evolved organically and without a unified direction. But it remains because power and familiarity beat user experience. Yes, the "pure" Unix tools are awful, GNU improved on their usability a lot. But they're still a simple command that does something. Except Autotools. Those should burn in eternal damnation.
raverbashing查看英文原文
Unix is weird because it evolved organically and without a unified direction. But it remains because power and familiarity beat user experience. Yes, the "pure" Unix tools are awful, GNU improved on their usability a lot. But they're still a simple command that does something. Except Autotools. Those should burn in eternal damnation.
Unix 的胜利挤掉了更有野心的计算愿景,这才是真正的损失
我创办了这本书所依据的邮件列表。如今我会说:Unix 从最差的操作系统变成了最好的操作系统,而它本身并没有明显变好(未必完全准确,别喷我)。我仍然怀念我的 Lisp 机器。Unix 并非真的那么糟,而是它确立了一种计算机使用模式,挤掉了 70、80 年代还活着的那些更有野心的愿景——正如万维网(超文本领域的 Unix)挤掉了 Engelbart 和 Nelson 那些关于智力工作计算媒介的更大构想,后者在我看来才是更大的悲剧。
mtraven查看英文原文
I founded the mailing list the book was based on. These days I say, Unix went from being the worst operating system available, to being the best operating system available, without getting appreciably better. (which may not be entirely accurate, but don't flame me). And still miss my Lisp Machine. It's not that Unix is really that bad, it's that it has a certain model of computer use which has crowded out the more ambitious visions which were still alive in the 70s and 80s. Much as the web (the Unix of hypertext) crowded out the more ambitious visions of what computational media for intellectual work could be (see the work of Doug Engelbart and Ted Nelson). That's a bigger tragedy IMO. Unix, eh, it's good enough, but the shittiness of the web makes humanity stupider than we should be, at a time when we can ill afford it.
Unix 和 C 的统治地位是社会历史产物,不应被当作教条崇拜
书中大部分内容已经过时,抱怨的问题多年前早已修复。但它仍有一课对许多人(尤其是年轻 CS 学生)很有价值:Unix 并不是完美的计算基础模型,C 也不是福音。它们今天的流行既是客观优点的结果,也同样是历史和经济上的偶然。两者都是社会产物,而非基本真理的体现。贝尔实验室的崇拜者(如 cat-v 或 suckless 一派)不明白这一点,我还见过他们把不少缺乏经验的年轻人拉进那个兔子洞。
darkpuma查看英文原文
Much of the book is very dated, complaining about things that have been rectified many years ago. However I think it still has a valuable lesson that many, particularly young CS students, would benefit from: Unix is not the perfect fundamental model for computing. C is not the gospel. Their prevalence today is as much a historic and economic accident as a rational consequence of their objective merits. Both are social artifacts, not manifestations of fundamental truths. Worshipers of Bell Labs (such as the cat-v or suckless folks) don't get this, and I've seen them pull a lot of people down that rabbit hole with them, particularly young and inexperienced students.
Ritchie 的反序言用辛辣比喻承认了书中有价值但难以下咽
Dennis Ritchie 为这本手册写的“反序言”里有一个令人难忘的比喻:“你们这本书是一份布丁,塞满了贴切的观察,许多构思精巧。就像排泄物一样,它含有足够多未消化的营养碎块,足以让一些人维持生命。但它不是一块美味的派。”
charlesism查看英文原文
Dennis Ritchie's "anti-preface" to this handbook contains the hard-to-forget metaphor: your book is a pudding stuffed with apposite observations, many well-conceived. Like excrement, it contains enough undigested nuggets of nutrition to sustain life for some. But it is not a tasty pie
历次讨论
同类还值得读
TTY 揭秘(2008)
The TTY demystified (2008)
经典文章深入剖析了 Unix/Linux 中 TTY 子系统的工作原理,包括线路规程、终端驱动、信号与控制字符等机制。
系统与基础设施上首页 11 次 · 2009–2025linusakesson.net编辑精选为什么 GNU grep 这么快
Why GNU grep is Fast
FreeBSD 邮件列表上一篇广为流传的帖子,解释 GNU grep 为什么快:核心在于 Boyer-Moore 字符串搜索算法配合精心优化的内部循环和 I/O,让程序在搜索时“…
系统与基础设施上首页 9 次 · 2010–2022lists.freebsd.orgXplain:为普通人讲解 X11
Xplain – Explaining X11 for the rest of us
《Xplain》是作者(HN 用户 Jasper_)写的一系列 X11 长文,用他在浏览器中重建的 X11 绘图模型做交互演示,讲解 X11 的绘图模型与窗口系统设计。
系统与基础设施上首页 6 次 · 2013–2020magcius.github.io编辑精选旋风教程:为 Linux 创建极小 ELF 可执行文件(1999)
A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux (1999)
breadbox 写于 1999 年的经典教程,主题是如何为 Linux 手工构造并裁剪出体积极小的 ELF 可执行文件。
系统与基础设施上首页 6 次 · 2007–2025muppetlabs.comPostgreSQL 内部原理
The internals of PostgreSQL
《The Internals of PostgreSQL》是一本免费在线书籍,系统讲解 PostgreSQL 的内部实现,包括查询处理、并发控制、WAL、缓冲区管理等核心机制。
系统与基础设施上首页 5 次 · 2017–2025interdb.jp编辑精选