牛人就是拽:Linus Torvalds一直讨厌这11项技术

dy223 6年前

牛人就是拽:Linus Torvalds一直讨厌这11项技术

英文原文:11 technologies that tick off Linus Torvalds

Linus Torvalds 被认为是最伟大的程序员之一,因为他写出了使用最广泛的软件,如 Linux 内核和 Git 版本控制系统。但是他这个人经常因为讲话带有情绪,甚至是因为带有脏话的意见而饱受非议。有些时候,Linus Torvalds 认为那些工作没做好,或者持有不同观点或竞争关系的公司和组织,不管是正面的还是背面的,他的话里都是带着火药味的。

尽管大多数情况下,Torvalds 愤怒的主要原因都是技术惹的祸,跟技术有关。但是,我们还是不要期望已经 45 岁的 Torvalds 在情绪上能够缓和多少。好了,基于以上背景,我们来了解一下 Torvalds 多年来对这 11 项技术有哪些不满的意见。

1. GNU Emacs

历史:Emacs 早已经是 Unix 和类 Unix 系统,包括 Linux 最常用的文本编辑器之一。GNU Emacs 是使用最广泛的 Emacs 实现。它是由 Richard Stallman 创建,并在 1985 年发布了第一个版本,之后变为 Stallman 的 GNU 项目之一。尽管 GNU Emacs 很受欢迎,但并不是每个人都喜欢它,表现最明显的就是 Linus Torvalds。

有趣的是,尽管 Torvalds 多年来毫不间断的抱怨”真正的 Emacs“(即 GNU Emacs),但他的首选编辑器是 uEmacs,一个不同的 Emacs 实现,叫做 MicroEmacs 的定制版本。

“无数只猴子在 GNU Emacs 项目上打字,这也注定他们永远不会成为一个好项目。”1995 年

“真正的 Emacs 是魔鬼工具。”2012 年

2. GNOME

历史:GNOME 是一个可以在多数 Linux 发行版获取的开源桌面环境,它提供了一个图形化的用户界面和多种应用。

Linus Torvalds 与 GNOME 的关系在很长一段时间里都是很微妙的,使用之后再放弃,然后再使用。也经常在如 Xfce 和 KDE 这样的环境里相互切换。Torvalds 对 GNOME 的抱怨通常都与难以通过接口解决特定问题和难以定制环境有关。不过 Torvalds 现在再次使用 GNOME 对于 GNOME 基金会来说倒是一个好消息。

“我觉得 GNOME 有局限的主要原因就是它自身所拥有的局限性。”2007 年 2 月 16 日

“我还没遇到谁会喜欢邪恶混乱的 GNOME-3。”2011 年 8 月

“整个 GNOME-3 的用户体验几乎完全是失败的,’在默认配置下,我们连解决问题的最基本的工具都不给你,但你可以通过非官方的扩展解决它‘。”2012 年 6 月 1 日

3. HFS+

历史:HFS+ 是由苹果公司开发的一个文件系统,也被称为 Mac OS 扩展容量硬盘驱动器格式。它最早在 Mac OS 8.1 中实现,现在的 Mac OS X 还在使用 HFS+。

多年来,Linus Torvalds 一再表明他不屑于使用 HFS+,最大的一个大问题就是它不区分大小写,他觉得这是一个非常差的设计选择。

“在某些方面 OS X 实际上是不如 Windows 来进行编程。他们的文件系统就是垃圾。“2008 年 2 月

“HFS+ 真正恐怖的不是它不是一个好的文件系统,而是人们觉得他们有好的想法并积极设计一个差劲的文件系统。”2014 年 12 月 23 日

“坦率地说,HFS+ 可能是世界上最差的文件系统。“2014 年 12 月 22 日

4. Java

历史:Java 首次由 Sun Microsystems 公司于 1995 年作为专有软件发布,是目前使用最流行的编程语言之一。在早期,Linus Torvalds 曾对 Java 寄予厚望和它的“一次编写,随处运行”的功能,觉得这可能有力的推动 Linux 操作系统的发展。

然而,Torvalds 觉得 Sun 拙劣的语言设计和 Java 虚拟机只能应用于桌面环境,所以它注定要失败。多年后,Java 没有像他预言那样,Java 语言已经很繁荣,而且代码已经开源,但 Torvalds 似乎仍然没有对 Java 有很高的评价。

“本质上我看到的只是 Java 引擎在走下坡路,因为它别无去处。”1998 年 8 月

“我不关心 Java。多么可怕的语言。“2011 年 11 月

5. GNU Hurd

历史:Hurd 是基于 CMU Mach 内核的一个微内核,它作为 GNU 项目的一部分也取代了 Unix 内核。尽管 Hurd 从 1990 年起已经开发很长一段时间了,但它仍不适合用于生产环境。相反,很讽刺的是,GNU 的其他组件作为 Linux 内核而流行了起来。

Linus Torvalds 说,如果 Hurd 能早点准备好,他可能甚至不会麻烦的把创建 Linux 作为首要任务。此后,Torvalds 不喜欢微内核,所以经常发表对 Hurd 的负面看法。

“我认为 Hurd 已经死了。它有一个'大版本',人们忘记了的细节,并且忘记承认他们出的问题。“2004 年 10 月

“Hurd 不是一个真正的微内核,它是如此的可憎,以至于所有其他的微内核看上去都很糟糕。”2006 年 5 月 15 日

“简而言之:向毒品说不,向 Hurd 说不。”2001 年 10 月 4 日

6. C++

历史:C ++ 是由 Bjarne Stroustrup 创造的,他想建立一个系统编程语言,有 C 的速度和效率,并有类似 Simula 语言一样的程序组织。Linus Torvalds 发现用 C++ 实现 Linux 内核代码并不是最优选择。

从那时起,他对 C++ 的不给力发表了非常强烈的意见,大致上是说 C++ 是差劲的设计选择,它只会被次品程序员使用。

“事实是,C++编译器不值得信任。整个 C++ 异常处理从根本上是错误的。“2004 年 1 月 19 日

“尽管 C++ 可以用于原型或简单的 GUI 编程,但它不能使事情更简单。C 语言虽然并不精益于系统编程语言,但它积极鼓励你使用简单和直接的结构。“2007 年 9 月 7 日

“C ++ 是一个可怕的语言。”2007 年 9 月 6 日

7. Mach

历史:Mach 是一个微内核,在 1980 年代后期在卡内基梅隆大学开发,用于替代 Unix 的 BSD 内核。它后来被用作其他内核的基础(并不都是微内核),如 GNU Hurd 和苹果的 Mac OS X。

鉴于 Linus Torvalds 不喜欢微内核,他多年来多次对 Mach 表示不满就不值得奇怪了。具有讽刺意味的是,Steve Jobs 曾试图聘请 Torvalds 在 OS X 工作,但是当 Torvalds 被告知这将意味着放弃 Linux 发展时拒绝了这份工作,更何况他要在 Mach 的基础上工作。

“我对 Mach 的个人评价不是很高。坦率地说,它是一堆垃圾。它包含了所有你能制造出来的设计错误,甚至有些错误是设法弥补自身错误而造成的。“2001 年

”我认为开发 Mach 的人是不称职的白痴。“2006 年 4 月 20 日

8. GCC

历史:GNU 编译器集(GCC),1987 年首先被用来作为 GNU 操作系统的 C 编译器。它后来被扩展到各种平台的一些其他语言的编译前端(C ++,Objective-C,Fortran,Java,Ada 和 GO)。它已经在许多类 Unix 操作系统中占主导地位(和默认值),如 Linux,这意味着 Linus Torvalds 非常熟悉它——不管它是好还是坏。

“老天爷,那个 GCC 4.9.0 编译器不应该被允许从幼儿园毕业。”2014 年 7 月 24 日

“GCC 是废话。”2006 年 11 月 28 日

9. XML

历史:XML 是 W3C 开发的一种用于编码文档的标记语言,它作为通用标记语言(SGML)的一个子集,在 1998 年首次发布。虽然本来是为了机器和人简单易读,但不是每个人都这样认为。

Linus Torvalds 就是其中之一,这有助于解释他不喜欢这种格式。

“XML 可能是设计的最糟糕的格式,作为一种文件格式,它真的没有扩展能力,它通常是一个完全的灾难。“2014 年 3 月 6 日

“XML 是胡扯。解析 XML 对人类来说是讨厌的,甚至对计算机来说也是一场灾难。没有理由让这个可怕垃圾存在。“2014 年 3 月 6 日

10. Solaris

历史:Solaris 是基于 Unix System V 创建专有操作系统,由 Sun Microsystems 于 1991 年首次发布。Sun 在 2005 年决定通过 OpenSolaris 项目开源 Solaris 代码,Linus Torvalds 对 Linux 的新竞争有几次公开言论。

对于 Torvalds 和 Linux 幸运的是,2010 年后甲骨文收购了 Sun,并终止了 OpenSolaris(虽然它的衍生品还活着),并决定把的 Solaris 再次转为专有操作系统。

“仍然有很多人喜欢 Solaris,但我与他们积极竞争,所以我希望他们死。”2005 年 2 月

“Solaris/x86 是个笑话” 2004 年 12 月

11. MINIX

历史:MINIX 是一个类 Unix 操作系统,由 Andrew Tanenbaum 创建并于 1987 年作为专有软件发布,后来开源了。Tanenbaum 是阿姆斯特丹 Vrije Universiteit 大学的教授。

Linus Torvalds 认为 Tanenbaum 有影响力的原因之一,是他对 Unix 感兴趣并摆在首位。实际上,Torvalds 在 MINIX 机器上创建的 Linux。

然而,这并没有阻止 Torvalds 和 Tanenbaum 很多年前就进入的交火战争,他们的主要分歧是在 Torvalds 决定创建 Linux 作为一个单一的内核,而不是像 MINIX 的微内核。出人意料的是,Torvalds 后来对他的意见道歉了。

“你的工作是教授和研究员:这是 Minix 脑残的很好的借口”1992 年 1 月 29 日

“Linux 在几乎所有领域打的 MINIX 掉裤子。”1992 年 1 月 29 日

来自: CSDN