找回密码
 立即注册
搜索
查看: 11964|回复: 132

[软件] 【中出叛徒】王垠:漫谈 Linux,Windows 和 Mac

[复制链接]
发表于 2013-3-6 11:05 | 显示全部楼层 |阅读模式
好了,现在来一点技术性的。这段时间受到很多人的来信(大部分是菜鸟)。他们看了
我很早以前写的推崇 Linux 的文章,想知道如何“抛弃 Windows,学习 Linux”。天
知道他们在哪里找到那么老的文章,真是好事不出门。我觉得我有责任消除我以前的文
章对人的误导,洗清我这个“Linux 狂热分子”的恶名。我觉得我已经写过一些澄清的
文章了,可是怎么还是有人来信问 Linux 的问题。也许因为感觉到“舆论压力”,我
把文章都删了 。

  简言之,我想对那些觉得 Linux 永远也学不会的“菜鸟”们说:

  1. Linux 和 Unix 里面包含了一些非常糟糕的设计。学不会有些东西不是你的错
,是 Linux 的错,是“Unix 思想” 的错。不要浪费时间去学习它们的太多东西。那
些貌似难的,复杂的东西,特别要小心分析。

  2. Windows 避免了 Unix,Linux 和 Mac OS X 的很多问题。微软是值得尊敬的公
司,是真正在乎程序开发工具的公司。我收回曾经对微软的鄙视态度。请菜鸟们吸收
Windows 设计里面好的东西。

  3. 学习操作系统最好的办法是学会(真正的)程序设计,而不是去“学习”各种
稀奇古怪的工具。所有操作系统,数据库,Internet,以至于 WEB 的设计思想(和缺
陷),几乎都能用程序语言的设计思想简单的解释。

  先说说我现在对 Linux 和相关工具(比如 TeX)的看法吧。我每天上班都用
Linux,可是回家才不想用它呢。上班的时候,我只能说,我基本上只是“忍受”着它
。Unix 有许许多多的设计错误,却被当成了圣经,传给了一代又一代的程序员。Unix
的 shell,命令,配置方式,图形界面,都是非常糟糕的。每一个新版本的 Ubuntu 都
会在图形界面的设计上出现新的错误,让你感觉历史怎么会倒退。但是这只是表面现象
。Linux 的图形界面(X window)几乎是不可治愈的恶疾。我不想在这里细说 Unix 的
缺点,在它出现的早期,已经有人写了一本书(名叫 Unix Hater's Handbook) 来发泄
对 Unix 的厌恶。(声明一下,我不厌恶 Unix,我只是不再推崇它。我的视野已经高
于它,以至于我可以理性的分析它。)

  这本书里汇集了 Unix 出现的年代,很多人对它的咒骂。我曾经以为这是一些菜鸟
,他们肯定是不能理解 Unix 的高明设计才在那里骂街。现在理解了程序语言的设计原
理之后,我才发现,他们说的那些话里面居然大部分是实话!其实他们里面很多人在当
年就是世界顶尖的编程高手,功底不亚于 Unix 的创造者。在当年他们就已经使用过设
计更加合理的系统,比如 Multics,Lisp Machine 等。可惜的是,Multics 操作系统
书籍里面往往只是被用来衬托 Unix 的“简单”和伟大。Unix 的书籍喜欢在第一章讲
述这样的历史:“Multics 由于设计过于复杂,试图包罗万象,而且价格昂贵,最后失
败了。” 可是 Multics 失败了吗?不。Multics,Oberon,IBM System/38, Lisp
Machine,…… 在几十年前就拥有了 Linux 现在都还没有的好东西。Unix 里面的东西
,什么虚拟内存,文件系统,…… 基本上都是从 Multics 学来的(有很多没有学得像
)。Multics 的机器,一直到 2000 年都还在运行。Unix 不但“窜改”了历史教科书
,而且永远不吸取教训,到现在还没有实现那些早期系统早就有的好东西。最后 Unix
依靠自己的“宗教”和“哲学”,“战胜”了别的系统在设计上的先进,统治了程序员
的世界。胜者为王,可是 Unix 其实是一个暴君,它不允许你批评它的错误。它利用其
它程序员的舆论压力,让每一个系统设计上的错误,都被说成是用户自己的失误。其它
系统里面某些优秀的系统设计,也许就要被历史掩埋……

  我曾经强烈的推崇 FVWM,TeX 等工具,可是现在擦亮眼睛看来,它们给用户的界
面,其实是非常糟糕的设计。他们把程序设计的许许多多的细节,无情的暴露给用户。
让用户感觉有那么多东西要记,仿佛永远也没法完全操纵它。实话说吧,当年我把
TeXbook 看了两遍,做完了所有的习题(包括最难的“double bend”习题)。几个月
之后,几乎全部忘记干净。为什么呢?因为 TeX 的语言是非常糟糕的设计。它的设计
者几乎完全不明白程序语言设计的基本原则,不明白什么叫做“抽象”。

  一个好的工具,应该只有少数几条需要记忆的规则,就像象棋一样。而这些源于
Unix 的工具却像是“魔鬼棋”或者“三国杀”,有无数的,无聊的,人造的规则。有
些人鄙视图形界面,鄙视 IDE,鄙视含有垃圾回收的语言(比如 Java),鄙视一切“
容易”的东西。他们却不知道,把自己沉浸在别人设计的繁复的规则中,是始终无法成
为大师的。就像一个人,他有能力学会各种“魔鬼棋”的规则,却始终无法达到象棋大
师的高度。所以,容易的东西不一定是坏的,而困难的东西也不一定是好的。学习计算
机(或者任何其它领域)的东西,应该“只选对的,不选难的”。记忆一堆的命令,乌
七八糟的工具用法,最后脑子里什么也不会留下。学习“原理性”的东西,才是永远不
会过时的。

  我并不是说 Windows 好很多。技术设计上的很多细节,也许它在早期是同样糟糕
的。但是它却向着更加结构化,更加简单的方向发展。我认识一个 Adobe 的高级设计
师。他告诉我,当年他们把 Photoshop 移植到 Intel 构架的 Mac,花了两年时间。
Xcode 比起 Visual Studio 真是差太多了。而 Mac OS X 的很多设计,让他们的移植
实在太痛苦。只不过系统换了个处理器,移植个程序居然花了两年时间。不过他很自豪
的说,当年很多人等了两年也没有买 Intel 构架的 Mac,就是因为他们在等待
Photoshop 的移植。最后他直言不讳的说,微软才是真正在乎程序员工具的公司。相比
之下,Apple 虽然对用户比较友好,但是对程序员的界面要差很多。

  一再宣扬别的系统都是向自己学习的 Apple,受到这样的评价,我一点也不惊讶。
Mac OS X 毕竟是从 Unix 改造而来的。我在家里有一个 Macbook Air,一个 iPhone 5
,和一个退役的,装着 Windows 7 的 T60。我不得不承认,虽然我很喜欢 Macbook 和
iPhone 的硬件,但我想念 Windows 和 Android 在软件上的一些设计。一个公司的傲
气,真的可以阻碍它向别人学习,设计出更好的东西。微软也许在当年是傲慢轻狂的公
司,但是我觉得它现在已经度过青春期,长大成熟了。

  当然我不是在这里打击 Linux 和 Mac 而鼓吹 Windows。这些系统的纷争基本上已
经不关我什么事。我只是想告诉新人们,去除头脑里的宗教,偏激,仇恨和鄙视。每一
次仇恨一个东西,你就失去了向它学习的机会。
--
回复

使用道具 举报

     
发表于 2013-3-6 11:09 | 显示全部楼层
不少说得没问题啊。
如果是客户端程序开发,win的ide这些的确很强,不过linux做服务器端编程比win下强太多也是事实。
回复

使用道具 举报

发表于 2013-3-6 11:11 | 显示全部楼层
说的没错。
回复

使用道具 举报

发表于 2013-3-6 11:12 | 显示全部楼层
23333333333


最近真是个跳反的好时节啊!
回复

使用道具 举报

     
发表于 2013-3-6 11:12 | 显示全部楼层
巨硬不是搞了个烂摊子然后一直往上面贴狗皮膏药么...治标不治本
OSX算是亲民的UNIX?...之类的...普及度不够高是硬伤
回复

使用道具 举报

     
发表于 2013-3-6 11:14 | 显示全部楼层
笑尿,他终于意识到那些年轻而犯下的错误了吗
回复

使用道具 举报

     
发表于 2013-3-6 11:19 | 显示全部楼层
这不是在说程序开发么?win系统毫无疑问是个烂货,各种奇葩问题只能通过重装系统解决,没法维护

----发送自 ZTE ZTE V970,Android 4.1.1
回复

使用道具 举报

发表于 2013-3-6 11:20 | 显示全部楼层
M$对程序员友好是没错,但是M$对用户就没那么友好了,不是所有人都精通电脑软硬件,一个是否发送错误报告足够让所有的初级用户手无足措
回复

使用道具 举报

头像被屏蔽
发表于 2013-3-6 11:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2013-3-6 11:27 | 显示全部楼层
笑死了 orz
回复

使用道具 举报

     
发表于 2013-3-6 11:36 | 显示全部楼层
引用第7楼roadcross于2013-03-06 11:20发表的  :
M$对程序员友好是没错,但是M$对用户就没那么友好了,不是所有人都精通电脑软硬件,一个是否发送错误报......
光一个注册表和组策略就够吃屎了,win7每周日半夜1点自动运行系统评分也是非常儍逼的设定,不百度还不知道怎么解决

----发送自 ZTE ZTE V970,Android 4.1.1
回复

使用道具 举报

头像被屏蔽
发表于 2013-3-6 11:37 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2013-3-6 11:39 | 显示全部楼层
好文!赞!
回复

使用道具 举报

     
发表于 2013-3-6 11:41 | 显示全部楼层
这是爱的深沉
回复

使用道具 举报

头像被屏蔽
发表于 2013-3-6 11:41 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2013-3-6 11:41 | 显示全部楼层
引用第7楼roadcross于2013-03-06 11:20发表的  :
M$对程序员友好是没错,但是M$对用户就没那么友好了,不是所有人都精通电脑软硬件,一个是否发送错误报告足够让所有的初级用户手无足措

apple也发错误报告的
不过总的来说,因为有appstore的专权,从正规渠道得来的mac软件比各种渠道得来的win软件素质好很多(谁叫ms那么久都没自己的软件店),以至于大家认为mac比win强
对等来说,win也获得了更广泛的软件支持,不管是因为ide好用,还是发布随意,
mac则获得了更好/更统一的人机交互体验
引用第10楼qwased于2013-03-06 11:36发表的 :

光一个注册表和组策略就够吃屎了,win7每周日半夜1点自动运行系统评分也是非常儍逼的设定,不百度还不知道怎么解决

----发送自 ZTE ZTE V970,Android 4.1.1
注册表和组策略是对开发友好的东西没错,但是普通用户你管这些东西干嘛?想改xxxx?有没有想过如果在apple下面你连改都没得改,要不就手动去找plist或者解app包吧..
回复

使用道具 举报

     
发表于 2013-3-6 11:46 | 显示全部楼层
引用第7楼roadcross于2013-03-06 11:20发表的  :
M$对程序员友好是没错,但是M$对用户就没那么友好了,不是所有人都精通电脑软硬件,一个是否发送错误报告足够让所有的初级用户手无足措
单就初级用户而言的话,linux更让其手足无措吧?
回复

使用道具 举报

     
发表于 2013-3-6 11:49 | 显示全部楼层
我記得破鞋區的大大們明證,水果開發環境最好,對程序員最友好來著
回复

使用道具 举报

头像被屏蔽
     
发表于 2013-3-6 11:50 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2013-3-6 11:52 | 显示全部楼层
引用第7楼roadcross于2013-03-06 11:20发表的  :
M$对程序员友好是没错,但是M$对用户就没那么友好了,不是所有人都精通电脑软硬件,一个是否发送错误报告足够让所有的初级用户手无足措
对这种初级用户来说,不是根本没linux屁事吗
回复

使用道具 举报

发表于 2013-3-6 11:55 | 显示全部楼层
这哥们终于长大了。
回复

使用道具 举报

     
发表于 2013-3-6 11:55 | 显示全部楼层
引用第19楼njjwl2005于2013-03-06 11:52发表的  :

对这种初级用户来说,不是根本没linux屁事吗
比如别人给的程序是在linux下运行的,我则需要通过接口加上自己一小段程序。
回复

使用道具 举报

发表于 2013-3-6 11:56 | 显示全部楼层
Gnome 创始人 Miguel de Icaza 弃用 Linux 改用 Mac http://www.solidot.org/story?sid=33710
回复

使用道具 举报

     
发表于 2013-3-6 11:57 | 显示全部楼层
高玩曲高和寡不能向低玩证明linux的好,低玩则根本玩不了linux,至于说某低玩在windows上都要吃瘪然后被linux拯救了这种段子不论说跟信都需要很大的耻度。
回复

使用道具 举报

     
发表于 2013-3-6 12:03 | 显示全部楼层
初级用户用啥TeX,用proTeXt很简单
回复

使用道具 举报

发表于 2013-3-6 12:06 | 显示全部楼层
反正就是一群人包围着微软打:让你丫收费,让你丫收费,你看我们的都不要钱!
回复

使用道具 举报

     
发表于 2013-3-6 12:07 | 显示全部楼层
来点干货吧,这都说了什么玩意
回复

使用道具 举报

发表于 2013-3-6 12:08 | 显示全部楼层
Plan 9 比 UNIX 好100 倍,你们敢用吗?
回复

使用道具 举报

发表于 2013-3-6 12:09 | 显示全部楼层
引用第26楼Realplayer于2013-03-06 12:07发表的  :
来点干货吧,这都说了什么玩意



这个就是那个清华退学要用linux的牛人嘛,笑笑就好。
不懂背景的可以看http://kurttlin.diandian.com/post/2011-10-03/5502426
回复

使用道具 举报

     
发表于 2013-3-6 12:10 | 显示全部楼层
买一台mac 一台windows pc 一台linux pc。

有真爱的码农不都应该这样么

这篇文一定是这个意思
回复

使用道具 举报

 楼主| 发表于 2013-3-6 12:15 | 显示全部楼层

回 26楼(Realplayer) 的帖子

这篇问的喷点就在这里,没有干货,只有结论。这哥们儿真是闲的蛋碎了,不找点儿存在感就不舒服。
回复

使用道具 举报

     
发表于 2013-3-6 12:16 | 显示全部楼层
引用第7楼roadcross于2013-03-06 11:20发表的  :
M$对程序员友好是没错,但是M$对用户就没那么友好了,不是所有人都精通电脑软硬件,一个是否发送错误报告足够让所有的初级用户手无足措

我怎么觉得恰恰相反……我用OSX的原因还不是就是因为可以不用搞什么鸡巴cygwin mingw什么的安心coding么。但真让我玩电脑的时候我还是宁可用windows。
回复

使用道具 举报

 楼主| 发表于 2013-3-6 12:16 | 显示全部楼层

回 25楼(nonmoi) 的帖子

微软的东西还卖的出去么?Win8这么自贱身价依然无法挽留用户~
回复

使用道具 举报

     
发表于 2013-3-6 12:17 | 显示全部楼层
引用楼主mimighost于2013-03-06 11:05发表的 【中出叛徒】王垠:漫谈 Linux,Windows 和 Mac :
最后 Unix依靠自己的“宗教”和“哲学”,“战胜”了别的系统在设计上的先进,统治了程序员的世界。胜者为王,可是 Unix 其实是一个暴君,它不允许你批评它的错误。它利用其它程序员的舆论压力,让每一个系统设计上的错误,都被说成是用户自己的失误。其它系统里面某些优秀的系统设计,也许就要被历史掩埋……
敢情*nix的份额是靠宗教和暴力占领的,那些被忘掉的“优秀设计”真是冤啊。
回复

使用道具 举报

发表于 2013-3-6 12:17 | 显示全部楼层
引用第27楼الطائر于2013-03-06 12:08发表的  :
Plan 9 比 UNIX 好100 倍,你们敢用吗?
我还真用过
结论是Plan9是我见到过的最反人类的GUI
GNOME3暂时居第二位
回复

使用道具 举报

发表于 2013-3-6 12:17 | 显示全部楼层

回 32楼(mimighost) 的帖子

你说卖不出就卖不出咯~~~
回复

使用道具 举报

发表于 2013-3-6 12:19 | 显示全部楼层
在Windows上跑服务器程序和让普通用户用Unix办公一样,都是噩梦
回复

使用道具 举报

发表于 2013-3-6 12:24 | 显示全部楼层
引用第24楼endrollex于2013-03-06 12:03发表的  :
初级用户用啥TeX,用proTeXt很简单



这人自己博客上推的是TeXmacs


另外,我记得这人去google实习还是什么的,后来还喷了google……
回复

使用道具 举报

     
发表于 2013-3-6 12:27 | 显示全部楼层
低端钓鱼文,不如“PHP是最好的语言”
回复

使用道具 举报

发表于 2013-3-6 12:42 | 显示全部楼层
这个人我有印象,反正能只身一人跑去爸爸国的都是牛逼的人
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-9-12 02:26 , Processed in 0.279593 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表