为什么 Linux 在桌面会失败? - 知乎

为什么 Linux 在桌面会失败? - 知乎.


赞同了 @Bill Cheng 先生的回答,不过感觉 @Bill Cheng 先生没有捅破一层窗户纸,就是:Linux 的社区群体、「圈子」与 OS X,Windows 的用户群体有很大差别,「文化」也有很大的不同。一切的原因的根源就是在于这些「文化」、理念上。

Linux 与 OS X, Windows 生态圈最大的差异,就是在于 Linux 的用户和开发者基本重合,即很多用户既是 Linux 的使用者又是 Linux 的开发者,因此,上文里用了「社区群体」,区分与 OS X 的「用户群体」。Linux 社区群体里的开发者开发的软件心态基本是这样的:「我开发了一个软件,自己感觉还不错,大家也用一下吧。虽然还是有一些小 bug,缺少一些 feature,界面也比较粗糙,大家在用的时候顺便也帮忙完善一下」、「嗯,这个软件看起来不错,我来帮忙修一下 bug 优化一下性能吧」,和「我觉得我做的菜不错,邻居们都过来尝尝吧,欢迎再给点意见」差不多。Linux 的开发者大多开发软件都不是出于 make a living 的目的,而只是想做一个自己喜欢社区也喜欢的一个东西出来,因此,Linux 的开发者会以自己与社区的需求为先,做的差不多就发,虽然可能还带着很多 bug 什么的。一些用户体验、界面上的不足就被排在较低的优先级了。这个也造成了几乎所有 Linux 发行版对大众用户不够友好的缘故,例如配置一些东西时不时就要进终端输入命令,Gnome/KDE 的界面虽然看着说的过去但总是感觉有些别扭,等等。注意在这里并没有提到「用户体验」这个词,因为绝大多数 Linux 发行版本身就不是为大众用户制作的。这也许就是在 Linux 里,X-Window 这样的视窗管理器不仅低效且不稳定的缘故吧,因为开发者 don't care.

Linux 社区文化的另一点就是,推崇自由软件、开源协议。这带来的另一面就是明里暗里地歧视私有软件、商业软件。比如,大部分的 Linux 发行版都不带有 MP3 文件的解码器,因为 MP3 的技术不属于公有领域。这样,给了大众使用者许许多多的门槛。如果不信,试试您不给指导,让您的女朋友或父母从一个刚刚全新安装的 Linux 发行版里听 MP3,看看花多长时间能解决。推崇自由软件、开源协议还带来一点就是 Linux 用户大多不愿为商业软件消费,而是更喜欢自己动手,自给自足。反过来商业软件开发商也就不愿意为 Linux 开发软件了,反正开发出来了也没多少人买。以前在 Unity 游戏引擎官方论坛的 Wish List 板块,很多人呼吁开发 Linux 版的 Unity 开发套装,但被 Unity 的高层拒绝了,原因就是说 Linux 用户消费意愿不足,不值得冒风险去投入。这样,像 Linux 版 Maya 这样的商业软件在 Linux 世界真的可谓凤毛麟角,而且 Maya 也应该不是为「散兵游勇」Linux 用户开发的,更可能是为大企业开发的,装在渲染农场里的那些 Linux 渲染服务器上。因此,大众用户「误打误撞」来到 Linux 世界后,往往会因为找不到适合自己的软件而发愁。特别特别是游戏。我们回顾一下各种操作系统的历史可以看到,所有成功的操作系统一个共同特点就是有大量优质的游戏,如 Apple II、DOS、Windows、iOS。然而 Linux 的大型游戏也就是 id Software 的那些,别的倒是也有,不过看看别的 Linux 游戏,如 Nexuiz,除了 Linux 用户以外还有谁玩?没有大量优质的游戏,Linux 注定无法在大众领域走进去太深。

还有,人会生病的,电脑也会出问题的。像 OS X、Windows 系统出问题了,还都是比较好解决的。如果是 OS X 的用户,可以用 Time Machine 恢复一下,或者进恢复系统重新下载 OS X,实在自己解决不了就预约 Genius Bar. Windows 系统出问题,找高手帮个忙、自己重装系统、拿去修电脑那里也能把问题解决掉。但是用 Linux 出问题找谁?周围别人都没人用过甚至听说过 Linux,拿到中关村那帮修电脑的小工也不会修(要是会的话还会去修电脑?),只能靠自己。Linux 的社区文化崇尚自己解决问题,如果贸然去问一些很常见的、Google 一下就知道答案的问题,很容易遭人白眼的。因此,大众用户即使忍受住系统本身恼人的体验以及找到了常用的软件后,如果系统出问题了,那么大多数也就此打住了。

说到这里,并不是想说明 Linux 有多么不堪。我自己也是从高一开始并行用 Linux 和 Windows 的,高三结束换到 OS X 至今,最近折腾虚拟主机又重新学习了点 Linux。聚集一些喜欢折腾的人,大家一起开发一个自己喜欢的操作系统,在这个系统上自己开发自己喜欢、社区也喜欢的软件有什么错呢?何况 Linux 有些地方做的还很不错,比如用户可以从软件仓库方便又安全地下载软件。并且,开源软件并不一定意味着不好用,比如同样是 3D 建模软件,开源的 Blender 就要比私有、商业的 Autodesk 3Ds Max, Maya 要好用的多。同样,用 OS X 的,Windows 的,给这两个平台开发商业软件的也没错,大家总要 make a living 哪,也要上个网、玩玩游戏什么的。错就错在贸然闯入另一边的社群说一些不好听的话。比如您要是发明了一个新的菜,自己吃了后不错,邀请邻居们尝尝,总不希望有人当面说:「这菜真是狗屎!跟大华酒店做的根本没法比」吧?同样,如果您正在大华酒店吃饭,吃得正来劲时突然有人凑过来说,大华酒店做的太烂了,而且还放地沟油,去我家尝尝我做的吧。虽然是好心,但您也不会太乐意吧。人活在世上,随时都要提醒别太把自己当回事儿了,不要总是试图给别人灌输观点,您说是吧。