Linux不是Windows/zh:修订间差异

来自Ubuntu中文
跳到导航跳到搜索
Crump留言 | 贡献
无编辑摘要
 
(未显示66个用户的153个中间版本)
第1行: 第1行:
{{Translation}}
{{From|http://linux.oneandoneis2.org/LNW.htm http://www.yeeyan.com/articles/view/sctronlinux/1410}}  
{{From|http://linux.oneandoneis2.org/LNW.htm}}
{{Translator|laborer ekeng Chronmancer Sterec Luofei 袁超 fantasy2 sctronlinux}}
{{Translator|laborer ekeng Chronmancer Sterec Luofei}}
{{Verifier|Sirxenofex}}
{{Verifier|Leal}}
{{Languages|Linux不是Windows}}
{{Languages|Linux不是Windows}}
 
<center>
<center class="">
<p>
<p><i>在这篇文章中,我将用"Linux"表示GNU/Linux操作系统和各种FOSS(译注:自由、开源的软件,Free / Open Source Software)项目,这样读起来会顺畅些。
在以下的文章中,我要讲的是GNU/Linux OS 和各种免费的和开源的软件(FOSS)项目,总称为"Linux"。这样看起来更好些。
</i>
</p>
</p>
<h1>[[image:tux.png]] != [[image:windows.png]]
<h1>[[image:tux.png]] != [[image:windows.png]]
<br>
<br>
(Linux不是Windows)</h1>
(Linux不是Windows)</h1>
<p style="text-align: center;"><small>[http://geekblog.oneandoneis2.org/index.php/2005/12/31/derived_works_aamp_translations Derived works]</small></p>
<small>[http://geekblog.oneandoneis2.org/index.php/2005/12/31/derived_works_aamp_translations Derived works]</small></center>
<div style="text-align: justify;">
 
<p class="MsoNormal"><span style="">
如果你访问了这个页面,那么十有八九你是一个 [http://zh.wikipedia.org/wiki/Linux Linux] 的新用户,你正遇到许多关于如何由 Windows 转向 Linux 的困惑,这篇文章的目的正是向新手解释这个问题。由于这个大问题衍生出许多枝节,下面我将对此逐一进行讨论。
 
=== '''问题一:Linux 和 Windows 不太一样'''  ===
 
你一定会惊讶于有这么多人对 Linux 发出相似的抱怨,他们奔向 Linux,希望找到一个免费的、开源版的 Windows。通常,这正是那些狂热的 Linux 使用者所告诉他们的那种状况。然而这却是个荒谬的期待。 人们尝试 Linux 的原因不尽相同,但所有的原因都可以归结为一点:他们希望 Linux 会比 Windows 更优秀。成本、选择范围、性能和安全性是通常衡量操作系统好坏的标准。当然,还有许多其它的方面,但当 Windows 用户转向 Linux 时,他们在这四方面将两者做比较,因为他们希望在这些方面Linux做的更好。
 
这正是问题之所在。
 
从逻辑上讲,在保持某样东西与参考物体完全相同的前提下,将其做得更好是绝无可能的。正如一个完美的复制品将与它的母版毫无差异,但是它不可能会超越母版。所以当你带着 Linux 更好的希望来尝试它的时候,你便会不可避免地发现它的不同。太多的人都忽略了这样一个事实,并且'''把这些不同之处看作是 Linux 的缺陷'''。
 
举一个简单的例子,升级驱动程序:在 Windows 下升级某个硬件驱动,通常的情况下,我们需要去硬件制造商的网站上找到并下载最新的驱动,如今Windows 7已经可以自动更新最新的驱动程序,而不需要用户过多的参与;然而在 Linux 下,我们要做的是升级内核。


如果你跳转到了这个页面,那么十有八九你是一个Linux 的新用户,你正遇到许许多多的麻烦关于如何由Windows 转向Linux,这篇文章的目的正是向新手解释这个问题。由于这个大问题衍生出许多枝节,下面我将对此逐一进行讨论。</span></p>
这意味着在 Linux 下,仅仅一次下载和升级便能提供所有适用的最新驱动,然而在旧版本的Windows 下我们却不得不浏览多个网站并分别下载升级程序。只是过程有所不同,但是绝对不是说更糟糕。然而却有很多人对此抱怨不停,只因为这不是他们习惯的方式。


或者从另一个更经常接触到的例子来看,想一想 [http://www.mozilla.com/en-US/firefox/ Firefox] ——开源软件最成功的案例之一。这是一个席卷全球的浏览器,难道它是通过模仿 IE ——那个“最流行的浏览器”而取得成功的吗?


不,它的成功是因为它比 IE 更好,它之所以更好正是因为'''它的不同'''。它有标签页浏览方式,实时动态的书签,内建搜索工具栏,PNG图像格式支持,广告过滤扩展,以及其它的好东西。“查找”工具条显示在底部的工具栏中,它能够在你键入的时候就查找内容并且以红色表示没有相匹配的内容。而 IE 却没有标签页浏览,没有 RSS 订阅功能,搜索条只能通过第三方扩展实现,它的查找对话框还得通过点击“确认”按钮开始查找,而且还要再点击一次“确认”才能清除“未发现”的错误提示。(译者注:现在IE也有类似的功能了)这个鲜活的案例,证明了一个开源的应用程序通过“不同”而做到了“更好”,依靠“更好”进而取得了成功。如果 Firefox 只是一个 IE 的克隆,它必然早已销声匿迹于 IE 的阴影之下了。如果 Linux 是 Windows 的一个克隆,同样的事情也会发生在 Linux 身上。


<h3><b><span style="">问题一:Linux 和 Windows 根本不一样</span></b></h3>
因此问题一的答案就是:记住 Linux 其实与你熟悉的东西很相似,很有亲和力,它并不是全新和改进过的。积极地面对那些不同之处,因为只有不同,Linux 才有机会真正闪耀出其光彩


<p class="MsoNormal"><span style="">
=== 问题二:Linux 和 Windows 太不一样了  ===
你一定会惊讶于有这么多人对Linux 发出相似的抱怨,他们奔向Linux,盘算着找到一个免费的,开源版的Windows。通常,这正是那些狂热的Linux 使用者所告诉他们去期待的状况。然而这却是个似是而非的期待。
</span></p>


<p class="MsoNormal"><span style="">
当人们期待着 Linux 有所不同时,又一个问题接踵而至。Linux 和 Windows 实在是太不一样了,一些差异简直难以让人适应。也许最典型的例子就是可供 Linux 用户选择的东西实在是太多了。对于一个刚上手的 Windows 用户,他已拥有一个经典的或 Windows XP 风格的桌面主题、一个写字板程序、一个IE 浏览器、一个Outlook Express来收发邮件;然而对于一个初学 Linux 的家伙,他面前有上百种发行版供其挑选,然後,是 Gnome、KDE 或者 Fluxbox(桌面环境),vi、emacs 或者 kate(文本编辑器),Konqueror、Opera、Firefox 或者 Mozilla(网页浏览器),或者其他一系列可供选择的工具。 Windows 用户不曾为了安装和使用(操作系统)而面对过如此丰富的选择。“有必要提供那么多种选择吗?”这样的抱怨帖子很常见。
人们尝试Linux 的原因不尽相同,但所有的原因都可以归结为一:他们希望linux 会比windows 更优秀。正是出于这一点,linux的小成本、更广泛的选择权、高性能和高安全性——当然,还有许多其它的方面——被作为与windows 比较时的衡量标准。往往每一个开始尝试Linux 的Windows 用户都是如此。</span></p>


<p class="MsoNormal"><span style="">
Linux 真的和 Windows 有那么大的区别吗?不管怎么说,它们都是操作系统。它们都做同样的工作:操作你的计算机,让你有个运行应用程序的东西,自然它们多少都有些共通的地方吧?
这正是问题之所在。</span></p>


<p class="MsoNormal"><span style="">太多的人都忽略了这样一个事实:从逻辑上讲,在保持某样东西与被比较体完全相同的前提下,将其做得更好是绝无可能的。正如一个完美的复制品将与它的母版毫无差异,但是它不可能会超越原版。所以当你怀抱着linux 的使用该和windows 差不多的观念而尝试linux ,并希望它能够做的更好,你便会无可避免的发现他们之间的不同,并且把这些不同之处看作是Linux 的缺陷。</span></p>
让我们从这个角度看问题:出门看看路上行驶的各种不同车辆。所有的车辆不管是什么样的设计,都有同样的目的:从路上把你由 A 处运到 B 处。注意它们有不同的设计。


<p class="MsoNormal"><span style="">
但是你会想,汽车之间的差异非常小:它们都有方向盘、脚踏板、变速杆、手刹车、车窗、车门、油箱……如果你能够开这部车,你就能开任何一部车。
举一个简单的例子,让我们来想一想驱动程序的升级吧:通常的情况下,倘若我们要在windows 下升级某个硬件的驱动,我们需要去硬件制造商的网站上,找到并下载新的驱动;然而在Linux 下,我们只是简单的升级内核即可。</span></p>


<p class="MsoNormal"><span style="">
确实如此。但你有没看见过有些人不开汽车──他们骑摩托车?
这意味着在Linux 下,仅仅一次下载和升级便能提供所有适用的最新驱动,然而在Windows 下我们却不得不浏览多个网站并分别下载升级程序。这是一个不同的过程。并且显然,这决不会是一种糟糕的体验。然而却有很多人对此抱怨不停,只因为这不是他们习惯的方式。</span></p>


<p class="MsoNormal">
从一个版本的 Windows 切换到另一个版本就像从一辆汽车换到另外一辆汽车。Win95 到 Win98 ,老实说我说不出有什么区别。Win98 到 WinXp,差别大一些但是也没有什么真正的重大区别。
或者从另一个更经常接触到的例子来看,想一想Firefox ——开源软件伟大成功故事中的一个、一个席卷全球的浏览器。它是通过模仿IE ,那个“最流行的浏览器”而取得成功的吗?
 
</p>
但是从 Windows 切换到 Linux 就象从骑摩托车切换到开汽车。他们都是操作系统(在道路上行驶的车辆)。他们可能都使用同样的硬件(道路)。他们可能都提供一个运行应用程序的环境(把你从甲地运到乙地)。但他们使用本质不同的两种方法来达到目的。
 
* Windows(摩托车)对于病毒(小偷)并不安全,除非你安装反病毒软件(车锁)。Linux(汽车)对于病毒(小偷)是比较安全的,所以即使你没有安装反病毒软件(不锁车门)也非常安全。
 
或者从另一个角度看:
 
*Linux(汽车)从根本上用于多用户(多名乘客)。Windows(摩托车)用于单用户(乘客)。Windows 用户(摩托车驾驶员)习惯于任何时候完全地控制他的计算机(摩托车)。而一个Linux 用户(汽车乘客)只有在以 root 根用户身份登录(坐在驾驶座上)时才要去控制计算机(车辆)。
 
通过两种不同的方法来达成同样的目标,他们各有优缺点:当载上一家子的成员和大包小包的货物从甲地至乙地时,一辆车显然是明智的选择:因为它有充裕的座位以及足够的储存空间。而对于一个人从甲地到乙地的情况,摩托车则是更好的选择:因为它不怎么会遇上堵车,消耗的燃油也更少。
 
无论选择摩托车或是汽车,仍有很多事情不会改变:你总归要给油箱里加油,而车还是开在同一条道上,而且必须遵守红绿灯,在转弯前要打转向灯,你同样也要注意限速。
 
但是也终究有很多情况不同了:开汽车的人不必带着安全头盔开车,摩托骑手不用系安全带;开汽车的人转动方向盘来转弯,摩托车骑手则要倾斜身子改变重心;开车需要踩油门踏板来加速,而骑摩托车通过手旋转手把来控制加速
 
一位汽车司机如果试图通过转移重心来拐弯,肯定是行不通的。同样的,一个 Windows 用户如果认为自己的经验可以直接派上用场,结果也会因为相同的原因而徒劳无获。事实上,'''较之电脑新手,一个 Windows “高级用户”在 Linux 的使用过程中常会遇上更多麻烦'''。那些经验丰富的 Windows 用户在面对问题时,如果无法解决,常会觉得“如果我这么有知识的用户都搞不定,那新手就更别想了”,因而得出“Linux离桌面应用还有十万八千里呢”的想法,其实事实恰好相反。
 
解决方法在于:'''Windows 用户必须意识到他只是一个有经验的 Windows 用户,而不是有经验的 Linux 用户。对于刚开始使用 Linux 的 Windows 高级用户,他应该意识到,他是个新手。'''
 
=== '''问题三: 文化冲突''' ===
 
==== 子问题 A : Linux 有自己的文化====
 
Windows 用户或多或少地处于一种消费者和供应商之间的关系:他们花钱买软件,获得授权,得到支持,等等。他们希望软件能够有确切的可用性。因此他们习惯于去得到使用软件的权利:他们花钱去得到技术上的支持以及他们得到他们想要的权利。他们也经常要与一些除了个人之外的实体打交道:例如他们与一家公司签一份合同。
 
Linux 用户则更多的是处于一个社团当中。他们不需要花钱去买软件,不需要为得到技术上的支持而耗费财力。他们免费下载软件,并且使用即时通信工具和论坛寻求帮助。'''他们和个人打交道,而不是公司'''。
 
一位 Windows 的用户如果只是把他的观点带到 Linux 中,那么是不会喜欢上 Linux 的,这需要慢慢地适应。
 
引起矛盾的最大原因就在在线交流当中:一名初学 Linux 的菜鸟在遇到问题时寻求帮助,当他没有得到他可以接受的答案的时候,他便开始抱怨并且想要得到更多的帮助。因为这正是他以前用付费来获得帮助的方式。问题就是'''这不是付费提供帮助的系统,而是很多热心人出于善意帮助其他人解决问题的系统'''。一位新的用户没有任何权利去向这些热心人索要帮助,这就如同一个想要得到施舍的人,还要求从捐赠者那里获得更多的捐赠品一样。
 
同样,一名 Windows 用户习惯了使用商业软件。这些软件在没有做到足够的可靠性、功能性以及对用户友好的界面之前,公司是不会发布该软件的。因此这正是 Windows 用户希望软件是从 1.0 版本开始的。而 Linux 软件几乎一旦写出就会立即发布,因此是从 0.1 版本开始的。这样的,真正需要这些功能的人就会马上得到它;感兴趣的开发者会来帮助改进代码,而整个社区都会关注接下来的发展情况。
 
如果菜鸟在使用 Linux 时遇到了困难,他会抱怨:这个软件没能满足我的需求,并且他认为他有权得到这样的满足。如果他得到这样带有讽刺性的回答:“如果我是你,我要求退款!”,他的情绪恐怕会更糟。
 
因此,为了避免这些问题,应做到:要记住,'''你并没有付给那些软件开发者或者在线帮你提供技术指导的人任何钱。他们并不欠你任何东西'''。
 
==== 子问题 B : 新用户 vs. 老用户  ====
Linux 几乎是因黑客的业余爱好而诞生的。它的成长源于它吸引了更多志同道合的黑客们。Linux 在变得不只是一些极客(Geek),而是让任何人都能使用之前经历了相当长的时间。可以说 Linux“始于极客,馈于极客”。直至今日,大多数 Linux 的老用户仍自认为是极客。 这是件非常好的事情:如果你在硬件或软件方面有问题,存在一大群极客们不断寻找解决方案这个状况,这难道不好吗?


<p class="MsoNormal">
但 Linux 自它诞生以来,已经成长变化了很多。已经有了一些几乎任何人都能安装使用的发行版,甚至一些发行版可以运行于 CD 上并且可以完全自动检测并配置好各种硬件。当 Linux 开始因其无病毒和廉价的升级而吸引一些非发烧友用户时,两大用户阵营间就会出现矛盾,这很正常。但有一点应当明确:双方都没有恶意,仅仅是缺乏相互理解而已。
不,它的成功是因为它比IE <span style="font-style: italic;">更好</span> , 它之所以 <span style="font-style: italic;">更好</span> 正是因为它 <span style="font-style: italic;">不同</span>. 它有标签式浏览,实时书签,内建搜索条,PNG支持,adblock扩展,以及其他美妙的东西。<span style="font-style: italic;">"查找"</span>工具条显示在底部的工具栏中,它能够查找你键入的内容并且以红色标识表示没有相匹配的内容。而IE没有标签页浏览,没有RSS功能,搜索条只能通过第三方扩展实现,它的查找对话框还得通过点击 <span style="font-style: italic;">"确认"</span>按钮开始查找,而且还要再点击一次<span style="font-style: italic;">"确认"</span>才能清除<span style="font-style: italic;">"未发现" </span>的错误提示。它明白无疑地证明了一个开源应用程序通过“不同”而做到了“更好”,依靠“更好”进而取得了成功。如果FF是一个IE的克隆,它必然早已微不足道地消逝在了IE的阴影之下。如果Linux 是一个Windows的克隆,同样的事情也会发生在Linux身上。<span style="">
</span></p>


<p><span style="">
首先,你面临的是'''核心极客们仍然假设所有使用 Linux 的用户们都是极客或在向这方面发展'''。这即是说他们认为所有 Linux 用户都应当很了解计算机和 Linux,这导致了他人指责他们的一些行为是傲慢、自大和无礼的。其实,虽然有时确实如此,但大多时候却并非这样,只是“每个人都应该知道”这样的善意表达变成了“地球人都知道!”——大相径庭。
因此,解决这个问题的方案在于:记住Linux 中那些对于你的使用习惯来说熟悉或相同的部分,Linux <span style="font-weight: bold;">不是</span> 新版的 或 改进版的Windows。 积极地迎接那些不同之处,因为只有不同,Linux才真正拥有闪耀出其光彩的机会。</span></p>


<h3><span style=""></span><span style=""><b>问题二 : Linux 和Windows <span style="font-style: italic;">太</span>不一样了</b></span></h3>
其次,你面临着从使用的商用操作系统转投而来的新用户,这些用户已习惯使用那些任何人拆箱就能用的软件。


<p class="MsoNormal"><span style="">
这类问题起因于不同使用习惯的碰撞:第一类人沉醉于不断地按自己喜好改造自己的操作系统,而第二类人对操作系统怎么运行并不关心,只要它能运行就行了。
当人们期待着linux 有所特色的时候,又一个问题接踵而至。Linux 和Windows 实在是太不一样了,一些差异简直难以让人适应。也许最典型的例子就是可供linux 用户选择的东西实在是太多了。对于一个刚上手的windows 用户,他拥有一个经典 或 XP风格的桌面主题、写字板程序、IE浏览器,Outlook Express;然而对于一个初用linux 的家伙,他面前有上百种发行版供以挑选,此后,是Gnome 或者KDE 或者Fluxbox,Vi 或者emacs 或者kate,Konqueror 或者Opera 或者Firefox 或者Mozilla 或者其他随便什么带来的一系列选择,如此等等不一而足。</span></p>


<p class="MsoNormal"><span style="">
在乐高(Lego)玩具发生的类似的情况正好阐述这种问题。试想下面的情景:
windows用户不曾为了安装和使用(一个OS)而面对过如此丰富的选择, <i>“有必要来那么多种选择吗?”</i>这样的抱怨帖子很常见。</span></p>
<p class="MsoNormal">Linux <i><span style="">真的</span></i><span style=""> 和Windows 有那么大的区别吗?不管怎么说,它们都是操作系统。它们都做同样的工作:操作你的计算机,让你有个东西运行你的应用程序,自然它们多少都有些共通的地方吧? </span></p>
<p class="MsoNormal"><span style="">让我们从这个角度看问题:出门看看路上行驶的各种不同的车辆。所有的车辆不管是什么样的设计多少都有同样的目的:从路上把你由A处运到B处。注意它们有不同的设计。</span></p>
<p class="MsoNormal"><span style="">但是你会想,汽车之间的差异非常小:它们都有方向盘,脚踏板,变速杆,手闸,车窗和车门,油箱……如果你能够开这部车,你就能开任何一部车。</span></p>
<p class="MsoNormal"><span style="">确实如此。但你有没看见过有些人不开汽车,取而代之他们骑摩托车?</span></p>
<p class="MsoNormal"><span style="">从一个版本的windows切换到另一个版本就像从一辆汽车换到另外一辆汽车。Win95到Win98,老实说我说不出什么区别。Win98到WinXp,区别比较大但是也没有什么真正的重大区别。</span></p>
<p class="MsoNormal"><span style="">但是从windows 切换到Linux 就象从开汽车切换到骑摩托车。他们都是 操作系统/道路车辆。他们可能都使用同样的 硬件/道路。他们可能都提供一个运行应用程序的 环境/把你从甲地运到乙地 。但他们使用本质不同的两种方法达到目的。</span></p>
<p class="MsoNormal"><span style="">Windows/汽车对于病毒/小偷并不安全,除非你安装反病毒软件/锁上车门。Linux/摩托车却没有病毒/车门,所以即使你没有安装反病毒软件/锁车门也非常安全。</span></p>


<p class="MsoNormal"><span style="">让我们反过来看一看:</span></p>
*新用户(以下简称“新”):我想要一部新玩具汽车,每个人都因乐高汽车的好玩而着了迷。所以我也买了它,但当我到家后我才发现,我的盒子里只有积木和齿轮!我的车子在哪里?
*老用户(以下简称“老”):你应该用积木组装一辆车,这才是乐高的真谛。
*新:什么??我不知道应怎样拼装这台车子。我不是个机械师。我该怎么知道如何组装它?
*老:盒子里有使用手册。它上面写着拼装车子的步骤。你不用知道原理,只要按照按部就班就好。
*新:好吧,我找到了说明。这得花多久啊!为什么他们不能装好了再卖给我,还得让我自己动手??
*老:并不是所有人都满足于将乐高做成玩具车。这些积木可以被我们组成万物。这才是游戏的真谛。
*新:我仍旧不明白为什么厂商不能给我们这种想要车子的人一个成品,如果那些喜欢动手的人高兴可以自己拆了它阿。不管怎样,我还是将它组装起来了,尽管某些部件时不时地掉下来。我有什么方法可以解决吗?我能将它们粘起来吗?
*老:这就是乐高。他就是用来拆装的。这才是游戏的真谛。
*新:但我不希望总是拆拆装装,我仅仅希望一辆玩具车而已!
*老:''呃,你到底是为什么要买乐高?''


<p class="MsoNormal"><span style="">Linux/汽车 从根本上用于多用户/乘客。Windows/摩托车 用于单用户/乘客。每个 Windows 用户/摩托车驾驶员每时每刻都要习惯集中精力控制他的 计算机/车辆。而一个 Linux 用户/汽车乘客 只要在以根用户登录/坐在驾驶座上时才要习惯去控制他的 计算机/车辆。
很明显,对那些只想要一辆玩具车的人来说,乐高并不是为他们准备的。上面的情景应该不会发生在你的生活中。乐高的价值在于你可以建造过程中体会乐趣而且你也可以将它组装成任何你想要的东西。如果你不想动手拼装,只能说乐高不适合你。这很容易理解。
</span></p>
<p class="MsoNormal"><span style="">通过两种不同的方法来达成同样的目标,他们各有长处和缺陷: 当载上一整个家庭的成员和大包小包的货物从甲地至乙地时,一辆车显然是明智的选择: 它有充裕座位以及足够的储存空间。而在单人从甲地到乙地的旅程中,摩托车则是更好的伴侣:它不怎么会遇上堵车,消耗的燃油也更少。</span></p>
<p class="MsoNormal"><span style="">无论选择了摩托或是汽车,仍有很多事情不会改变:你要把油加进油箱,把车开在同一条道上,必须遵守红绿灯和禁令,在转弯之前打转向灯,你也仍要遵守速度限制。</span></p>


<p class="MsoNormal"><span style="">但是也终究有很多情形不同了:汽车驾驶者不必带着安全盔开车,摩托骑手不用系安全带,开车的人转动方向盘来转弯,摩托车驾驶者则要匐下身子改变重心,开车的人裁油门踏板来加速,而摩托车通过手旋转握把来控制加速。</span></p>
由于长久以来一直关注 Linux 的老用户,同样的问题在 Linux 上越发明显:它是开源的、完全可定制的软件集。这才是真谛。如果你不想自己动手,为什么自找麻烦来用它呢?
<p class="MsoNormal"><span style="">一位汽车司机如果试图通过转移重心来拐弯,很快就会陷入一堆麻烦中。同样的,一个Windows 用户如果认为自己的经验可以直接派上用场,结果也会因为相同的原因而徒劳无获。事实上,较之电脑新手,一个Windows 高级用户在Linux 的使用过程中常遇上更多麻烦。那些根深蒂固的Windows 经验用户在面对问题时如果无法解决,常会觉得“如果我这么有知识的都搞不定,那新手就更不别想了”,因而得出的“Linux离桌面应用还有十万八千里呢”想法也便大错特错。</span></p>
<p class="MsoNormal"><span style="">解决方法在于,
Windows用户必须意识到他只是一个有经验的Windows用户,而不是有经验的电脑用户,Windows用户必须意识到当自己在尝试Linux时,他又成了一个新手。</span></p>
<p class="MsoNormal"><span style=""></span></p>


<h3><b><span style="">问题三: 文化冲击</span></b><span style="font-weight: bold;"></span></h3>
与乐高出售成品玩具的做法略有相似,通过最近的一系列的成果提升了非黑客用户使用 Linux 的舒适性,这使得更广大的用户可以使用 Linux。也正因如此,你仍可以听到与上面相似的对话,程度也仅是略有不同。新用户抱怨那些老用户所谓的“基本特性”干吗要让我们看到,他们讨厌阅读手册后才能实现一些功能。对太多发行版本的抱怨,对软件过多配置选项的抱怨和对刚拿到的软件用起来不顺手的抱怨,不正如对乐高有太多模块的抱怨一样,忽略了它可以被用来按你想法拆装成事实吗?


<h3><span style="font-weight: bold;">Subproblem #3a: There <span style="font-style: italic;">is</span> a culture</span><b><span style=""></span></b><span style=""></span></h3>
因此,为了避免这个问题:请记住现在 Linux 的外表并不代表它的过去。Linux 社区最大的也是最关键的组成部分——黑客和开发者们,他们因 Linux 的可以按需定制而欢喜;他们也会为可定制能力的丧失因而神伤。


<p class="MsoNormal"><span style="">Windows
''注: 极客:geek,词典中解释为因穿着不时尚和不懂得如何在社会中行事而作出一些怪事的人。现在指那些可以在电子和虚拟世界中非常有才华和想象力的发烧友。Geek宗教一般信仰科技或者颠覆科技。--chronmancer''
users are
more or less in a customer-supplier relationship: They pay for
software, for
warranties, for support, and so on. They expect software to have a
certain
level of usability. They are therefore used to having rights with their
software: They have paid for technical support and have every right to
demand
that they receive it. They are also used to dealing with entities
rather than
people: Their contracts are with a company, not with a person.</span></p>
<p class="MsoNormal"><span style="">Linux
users are in
more of a community. They don't have to buy the software, they don't
have to
pay for technical support. They download software for free &amp;
use Instant
Messaging and web-based forums to get help. They deal with people, not
corporations.</span></p>


<p class="MsoNormal"><span style="">A Windows
=== '''问题四:为设计者而设计''' ===
user will
not endear himself by bringing his habitual&nbsp;attitudes over to
Linux, to
put it mildly.</span></p>
<p class="MsoNormal"><span style="">The
biggest cause of
friction tends to be in the online interactions: A "3a" user new to
Linux asks
for help with a problem he's having. When he doesn't get that help at
what he
considers an acceptable rate, he starts complaining and demanding more
help.
Because that's what he's used to doing with paid-for tech support.
The
problem&nbsp;is
that this <i>isn't</i> paid-for support. This is a bunch
of volunteers who are
willing to help people with problems out of the goodness of their
hearts. The
new user has no right to demand anything from them, any more than
somebody
collecting for charity can demand larger donations from contributors.</span></p>
<p class="MsoNormal"><span style="">In much
the same way, a
Windows user is used to using commercial software. Companies don't
release
software until it's reliable, functional, and user-friendly enough. So
this is
what a Windows user tends to expect from software: It starts at version
1.0.&nbsp;Linux
software,
however, tends to get released almost as soon as it's written: It
starts at
version 0.1. This way, people who really need the functionality can get
it
ASAP; interested developers can get involved in helping improve the
code; and
the community as a whole stays aware of what's going on.</span></p>
<p class="MsoNormal"><span style="">If a "3a"
user runs
into trouble with Linux, he'll complain: The software hasn't met his
standards,
and he thinks he has a right to expect that standard. His mood won't be
improved when he gets sarcastic replies like <i>"I'd demand a
refund if I
were you"</i></span></p>
<p class="MsoNormal"><span style="">So, to
avoid problem
#3a: Simply remember that you haven't paid the developer who wrote the
software
or the people online who provide the tech support. They don't owe you
anything.</span></p>


<p class="MsoNormal"><span style=""></span><b><span style=""></span></b></p>
在汽车工业中,你很难发现一个人既设计车辆引擎也设计车辆内饰:这需要完全不同的技能。没有人想要只是看起来可以跑得很快的引擎,同样也没有人想要做工出众但狭小且难看的车厢。基于同样的道理,在软件产业,用户界面(UI)往往不是由软件编程人员设计的。 但在 Linux 的世界却大不相同:一个项目往往是因个人的兴趣而产生。个人也包办了所有的工作,因此这些项目的界面往往缺乏了“用户友好” 的特性:用户对这个软件了如指掌,所以他也就不需要帮助文件等。vi 就是一个很好的例子,最初它的目标用户就是为那些了解它工作方式的人。因而设计者从来都没有想过如何用其他方式退出 vi ,所以新用户不得不靠重启计算机退出的事情时有发生。


3.其他问题:这是一种文化
但是,自由开源软件([http://baike.baidu.com/view/969011.htm FOSS],Free and Open Source Software)程序员与商用软件程序员的一个最重大区别在于, FOSS 程序员的作品都是'''他们自己想要使用的东西'''。这些作品新手用起来也许不舒服,但试想一下如果开发人员了解最终用户的需求,那这作品用起来一定很舒服。而实际情况确实如此,因为作者自己就是最终用户,他了解他自己(最终用户),因此该软件应该用起来很舒服。商用软件的程序员却大不相同,'''他们总是为其他人编写软件''',而且这些用户都不是专家。


  <p class="MsoNormal"><span style="">WINDOWS用户或多或少的处在一种消费者和提供者的关系,他们花钱买软件,获得授权,得到支持等等.他们希望软件能够有明确的可用性.因此他们习惯得到使用软件的权利,他们花钱去得到技术上的支持以及他们需要的权利,他们也得到了.他们也经常要与一些实体打交道:例如他们与一家公司签一份合同,而不是个人.</span></p>
所以尽管 vi 拥有一个令新手望而生畏的界面,但它仍然在当今流行,这又归功于他的界面:当你熟悉后就会发现它原来无比强大。Firefox 也是被经常浏览网页的人编写出来的。GIMP 同样是出自经常处理图形文件的人之手。不胜枚举。


   
Linux 的界面对于新手而言同样的有些“难度”。尽管 vi 名声在外,但他仍然不在那些需要快速修改一些文件的新手的考虑之列。如果你在一个软件生命周期的早期使用它,打磨过的友好用户界面只会高挂在“计划”列表之上:主要功能肯定是先被实现的。没人先做个超级界面,再慢慢添加功能,程序员们都是先实现功能再不断改进界面。
<p class="MsoNormal"><span style="">LINUX用户有着更多的一致性.他们不需要花钱去买软件,不需要为得到技术上的支持而耗费财力.他们免费下载软件,并且利用快速通信和到论坛去寻求帮助.他们和个人打交道,而不是公司.</span></p>


所以,为了避免这个问题:你要么寻找那些以便于上手为目的而设计的软件,要么接受确实需要一个较长的磨合期来适应的软件。抱怨 vi 对新手不够友好只是舍本求末罢了。


  <p class="MsoNormal"><span style="">一个Windows的用户如果只是把他的观点带到Linux中,那么他是不会喜欢上Linux的.要慢慢的改变观点. </span></p>
=== '''问题五: “用户界面友好”的神话''' ===


在电脑世界里,“用户友好“指代非常广泛,甚至有一个不错的网络漫画就叫这个名字。但这个词却名不副实。


  <p class="MsoNormal"><span style="">引起矛盾的最大原因是在在线交流方面:一个刚刚用Linux的3a用户在遇到问题时寻求帮助,当他没有得到他可以接受的答案的时候,他便开始抱怨并且想要得到更多的帮助.因为这正是他以前用付费的来获得帮助的方式.问题就是这不是付费提供帮助的系统.而是很多热心人发自内心的帮助其他人解决问题的系统.一个新的用户没有任何权利去向这些热心人索要帮助,这就如同一个想要得到施舍的人,还要求从捐赠者那里获得更多的捐赠品一样.</span></p>
基本实现方法听起来似乎不错:软件的设计要从用户的想法和需要出发。实现的时候人们总是期望达到一个“最好”的界面,但事实并非想像的简单。


如果你一辈子都在做编辑文本文件的工作,理想的软件对你来说应当快速、强大,能让你以最少的操作来做最多的工作。简单的键盘快捷键和无需鼠标的操作将是最关键的需求。


  <p class="MsoNormal"><span style="">相同的,一个Windows用户习惯了使用商业软件. 这些软件在没有做到足够的可靠性,功能性和对用户友好的截面前,公司是不会开放代码的.这正是Windows用户期待Linux下的软件的原因,从Linux1.0版本的软件开始,用户就希望尽快得到开放的代码.这样,真正需要这些的人就会很快的得到它,并且这也使开发者会在提高代码这方面感兴趣,因此整个团体就会知道接下来要做什么了.</span></p>
但如果你很少编辑文本文件,只是要偶尔写一封信,那么你不会想着去学会那些键盘快捷键操作方法。排列有序的菜单和一目了然的工具栏图标就是你的理想环境。


很明显,你为第一个用户的需求所设计的软件并不适合与第二个用户,反之亦然。如此说来,'''若我们每个人都对软件有不一样的需求,那这些软件怎么能自称“用户友好”呢'''?


  <p class="MsoNormal"><span style="">如果一个3a用户在使用Linux时遇到了困难,他会抱怨:这个软件没能满足我的需求.并且他认为他有权利得到这样的满足.他的情绪将会有所改进,如果他等到这样的带有讽刺性的回答:如果我是你,我要求退款!</span></p>
简单来说:“用户友好”这个叫法并不妥当,只能让复杂的情况看上去变得简单一点而已。


那么“用户友好”到底是什么意思呢?好吧,从那些使用这个词的文章中来看,“用户友好”的软件实际上意味着“该软件对那些以前从未使用这个软件的用户们来说也不是那么难上手”。这样一来,只要跟自己用过的软件长的像,不管它是不是真的好用,都可以叫做“用户友好”。


<p class="MsoNormal"><span style="">所以,对于3a用户,为了避免这些问题,应做到:只要记住,你并没有付给那些软件开发者或者在线帮你提供技术指导的人任何钱.他们并不欠你任何东西.</span></p>
==== 子问题 A: 熟悉的就是友好的 ====


<h3><b><span style="">Subproblem #3b: New vs. Old</span></b><span style=""></span></h3>
所以在大多数被认为“用户友好”的文字编辑 和文字处理的系统中,你的剪切和复制使用{{Keypress|Ctrl}}+{{Keypress|X|background=#FF0}} 和 {{Keypress|Ctrl}}+{{Keypress|C|background=#FF0}} 来完成,这完全不直观, 但是每个人都习惯这些快捷键,所以这就被当作“友好的”快捷方式。


<p class="MsoNormal">&nbsp;Linux pretty
如果有人来到 vi 并且发现里面 {{Keypress|D}} 是剪切,{{Keypress|P}} 是粘贴,这将被当成是不友好的:因为这不是大多数人习惯的方式。
much started out life as a
hacker's hobby. It grew as it attracted more hobbyist hackers. It was
quite some time before anybody but a geek stood a chance of getting a
useable Linux installation working easily. Linux started out&nbsp;<span style="font-style: italic;">"By geeks, for geeks."</span>
And even today, the majority of established Linux users are
self-confessed geeks.</p>
<p class="MsoNormal">And that's a pretty good
thing: If you've got
a problem with hardware or software, having a large number of geeks
available to work on the solution is a definite plus.&nbsp;</p>
<p class="MsoNormal">But Linux has grown up
quite a bit since its
early days. There are distros that almost anybody can install, even
distros that live on CDs and detect all your hardware for you without <span style="font-style: italic;">any</span>
intervention. It's become attractive to non-hobbyist users who are just
interested in it because it's virus-free and cheap to upgrade. It's not
uncommon for
there to be friction
between the two camps. It's important to bear in mind, however, that
there's no real malice on either side: It's lack of understanding that
causes the problems.</p>
<p class="MsoNormal">Firstly, you get the
hard-core geeks who
still assume that everybody using Linux is a fellow geek. This means
they expect a high level of knowledge, and often leads to accusations
of arrogance,
elitism, and rudeness. And in truth, sometimes that's what it is. But
quite often, it's not:&nbsp;It's elitist to say&nbsp;<span style="font-style: italic;">"Everybody ought to know this"</span>.
It's not elitist to say&nbsp;<span style="font-style: italic;">"Everybody
knows this"</span> - quite the opposite.&nbsp;</p>


<p class="MsoNormal">Secondly,&nbsp;you get
但这是更好的方式吗? 明显是的。
the new users who're trying to make the switch after a lifetime of
using commercial OSes. These users are used to software that anybody
can sit down &amp; use, out-of-the-box.</p>
<p class="MsoNormal">The issues arise
because&nbsp;group 1 is made up of people who enjoy being able to
tear their OS apart and rebuild it the way they like it, while group 2
tends to be indifferent to the way the OS works, so long as it <span style="font-style: italic;">does</span> work.</p>
<p class="MsoNormal">A parallel situation that
can emphasize the problems is Lego. Picture the following:</p>
<p class="MsoNormal">New: <span style="font-style: italic;">I wanted a new toy car, and
everybody's raving about how great Lego cars can be. So I bought some
Lego, but when I got home, I just had a load of bricks and cogs and
stuff in the box. Where's my car??</span></p>
<p class="MsoNormal">Old: <span style="font-style: italic;">You have to build the car out of
the bricks. That's the whole point of Lego.</span></p>


<p class="MsoNormal">New: <span style="font-style: italic;">What?? I don't know how to build
如果使用{{Keypress|Ctrl}}+{{Keypress|X|background=#FF0}}的方法,你怎样从你当前正在编辑的文件中剪切一个单词?(没有鼠标的前提下!)
a car. I'm not a mechanic. How am I supposed to know how to put it all
together??</span></p>
<p class="MsoNormal">Old: <span style="font-style: italic;">There's a leaflet that came in
the box. It tells you exactly how to put the bricks together to get a
toy car. You don't need to know how, you just need to follow the
instructions.</span></p>
<p class="MsoNormal">New: <span style="font-style: italic;">Okay, I found the instructions.
It's going to take me hours! Why can't they just sell it as a toy car,
instead of making you have to build it??</span></p>
<p class="MsoNormal">Old: <span style="font-style: italic;">Because not everybody wants to
make a toy car with Lego. It can be made into anything we like. That's
the whole point.</span></p>
<p class="MsoNormal">New: <span style="font-style: italic;">I still don't see why they can't
supply it as a car so people who want a car have got one, and other
people can take it apart if they want to. Anyway, I finally got it put
together, but some bits come off occasionally. What do I do about this?
Can I glue it?</span></p>
Old: <span style="font-style: italic;">It's Lego. It's
designed to come apart. That's the whole point.</span>


<p class="MsoNormal">New: <span style="font-style: italic;">But I don't <span style="font-weight: bold;">want</span> it to come
你必须从开头的字符开始,用{{Keypress|Ctrl}}+{{Keypress|Shift}}+{{Keypress|→|background=#FF0}}来选择单词.
apart. I just want a toy car!</span></p>
Old: <span style="font-weight: bold;"><span style="font-style: italic;">Then why on Earth did you buy a
box of Lego??</span></span>
<p class="MsoNormal">It's clear to just about anybody that
Lego is not really aimed at
people who just want a toy car. You don't get conversations like the
above in real life. The whole point of Lego
is that you have fun building it and you can make anything you like
with it. If
you've no interest in building anything, Lego's not for you. This is
quite obvious.</p>
<p class="MsoNormal">As far as the long-time Linux user is
concerned, the same holds true for Linux: It's an open-source,
fully-customizeable set of software. That's the whole point. If you
don't want to hack the components a bit, why bother to use it?</p>
<p class="MsoNormal">But there's been a lot of effort
lately to make Linux more suitable for the non-hackers, a situation
that's not a million miles away from selling pre-assembled Lego kits,
in order to make it appeal to a wider audience. Hence you get
conversations that aren't far away from the ones above:
Newcomers&nbsp;complain about the existence of what the established
users consider to be fundamental features, and resent having the read a
manual to get something working. &nbsp;But complaining that there
are too many distros; or that software has too
many configuration options; or that it doesn't work perfectly
out-of-the-box; is like complaining that Lego can be made into too many
models, and not liking the fact that it can be broken down into bricks
and built into&nbsp;many other things.</p>


<p class="MsoNormal">So, to avoid problem #3b: Just
然後{{Keypress|Ctrl}}+{{Keypress|X|background=#FF0}}把它剪切下来。
remember that what Linux seems to be now is <span style="font-weight: bold;">not</span>
what Linux was in the past. The largest and most necessary part of the
Linux community, the hackers and the developers, like Linux <span style="font-weight: bold;">because</span> they can fit
it together the way they like; they don't like it in <span style="font-weight: bold;">spite</span> of having to
do all the assembly before they can use it.</p>
<p class="MsoNormal"></p>


子问题 #3b:新用户 vs. 老用户
vi中的方式呢?用“dw”删除该单词即可。


Linux几乎是因黑客的业余爱好而诞生的。它的成长也使得易于它吸引了更多志同道合的黑客们。Linux在获得一个易于使用的可用安装程序前一直默默无闻。在相当长的时间里,它在大众眼中只是一个奇客而已。可以说Linux“始于奇客,馈于奇客”。直至今日,大多数Linux的老用户仍自认为是奇客。
如果要剪切 5个单词使用 {{Keypress|Ctrl}}+{{Keypress|X|background=#FF0}} 方式会出现什么情况呢?


这是件非常好的事情:如果你在硬件或软件方面有问题,存在一大群奇客们不断探寻解决方案这个状况显然一种明显的优势。
从开头的单词开始:


但长久以来Linux的成长仍旧十分有限。尽管存在一些可以被绝大多数安装的发行版本,甚至一些版本基于CD并且与用户使用的硬件并无冲突。当Linux开始因其无病毒和省级廉价而吸引一些非发烧友用户时,两大用户阵营间并不是罕有摩擦,但双方都明了一点:对方都没有恶意,仅仅是缺乏相互理解而已。
{{Keypress|Ctrl}}+{{Keypress|Shift}}+{{Keypress|→|background=#FF0}}


首先,你面临的是核心奇客们仍然假设所有使用Linux的用户们都是奇客同志。这意味着他们认为所有人都对此有很深入的理解,这导致了他人控诉他们的一些行为是傲慢、自大和无礼的。事实上,有些时候如此。但大多时候却并非这样:“每个人都应知道”这样的善意表达被说成了“地球人都知道!”——大相径庭。
{{Keypress|Ctrl}}+{{Keypress|Shift}}+{{Keypress|→|background=#FF0}}


其次,你面临着从使用的商用操作系统转投而来的新用户。这些用户已习惯使用人机界面友善的软件,他们也是不确定因素。
{{Keypress|Ctrl}}+{{Keypress|Shift}}+{{Keypress|→|background=#FF0}}


这类问题起因于不同使用习惯的碰撞:第一类人沉醉于不断地按自己喜好重构系统,而第二类人对操作系统如何工作漠不关心,只要它能工作就好。
{{Keypress|Ctrl}}+{{Keypress|Shift}}+{{Keypress|→|background=#FF0}}


在乐高(Lego)发生的类似的情况正好阐述这种问题。试想下面的情景:
{{Keypress|Ctrl}}+{{Keypress|Shift}}+{{Keypress|→|background=#FF0}}


新用户(以下简称“新”):我想要一个新玩具汽车,每个人都因乐高汽车的优秀而着了迷。所以我也买了它,但当我到家后我才发现,我的盒子里只有积木和齿轮!我的车子在哪里?
{{Keypress|Ctrl}}+{{Keypress|X|background=#FF0}}


老用户(以下简称“老”):我要用造车而且要超脱于积木之外,这才是乐高的真谛。
要使用5个动作


新:什么??我不知道应怎样拼装这个车子。我不是个机械师。为什么我应该知道如何组装它?
在 vi 中的情况呢?


老:盒子里有使用手册。它上面写着拼装车子的步骤。你不用知道原理,只要按照按部就班就好。
d5w


新:好吧,我找到了步骤。这将占用我很多时间!为什么厂家不能装好了再卖给我,还得让我自己动手??
vi 方式实际上更通用和也更直观 。“X” 和 “V” 并不是能够直观记忆“Cut”和 “Paste” 命令的,反之 “dw” 对于 “delete”(删除) 和 {{Keypress|P}} 对于 “Put it back”(贴回来) 更加直观,明显vi 是更好的。可是由于它不是大家所熟悉的,因此它被认为是不友好的。没有其他任何因素,纯粹的由于习惯使得 Windows 成为了更加友好的系统。根据问题一中我们得到的:Linux 有必要与 Windows 不同,因此不可避免,Linux 经常显得没有 Windows“友好”。


老:并不是所有人都满足于将乐高做成玩具车。这些积木可以被我们组成万物。这才是游戏的真谛。
为了避免这个问题,你们要记住'''“友好”并不意味着习惯'''。试着用你的方式来做事,如果没有用的话,试着想想一个初学者会怎么做,然后你就知道了更简单的方法。


新:我仍旧不明白为什么厂商不能给我们这种想要车子的人一个成品,如果那些喜欢动手的人高兴可以自己拆了它阿。无论如何,我还是将它组装起来了,尽管某些部件时不时地掉下来。我有什么方法可以解决吗?我能将它们粘起来吗?
==== 子问题 B:低效的就是友好的 ====


老:这就是乐高。他就是用来拆装的。这才使游戏的真谛。
这是一个可悲的但无法逃避的事实。似乎你把一个软件的功能埋的越深,它就看起来越友好。


新:但我不希望总是拆拆装装,我仅仅希望一个玩具车而已!
这是因为友好性是通过在用户界面中使用简单、可视化的“线索”实现的——越多越好。毕竟,如果一个完全的计算机新手被放到一个所见即所得的字处理软件前并被要求把一些文本变成粗体,接下来很有可能:


老:呃,欢迎您到地球来。你买的是乐高吗?
* 他会认为 "Ctrl+B" 是通常的方法。
* 他会寻找线索,并尝试点击 "编辑" 菜单。如果不成功,他就会从接下来的一系列菜单中尝试比较像的那个:“格式”。新的菜单有一个看起来很有希望的“字体”选项。嗨!这里有我们想要的“粗体”选项。成功了!


很明显,对那些只想要一个玩具车的人来说,乐高并不是为他们准备的。上面的情景应该不会发生在你的生活中。乐高的价值在于你可以建造过程中体会乐趣而且你也可以将它组装成任何你想要的东西。如果你不想动手拼装,只能说乐高不适合你。这显而易见。
下次你再做任何文字处理,都想试着通过菜单来完成每一件工作:不用快捷键,也不用工具栏图标。菜单就是一切。你会发现你比爬还慢,因为所有任务突然都需要大量击键/点击来完成。


由于长久以来一直关注Linux的老用户,同样的问题在Linux上体现越发明显:它是开源的、完全可定制的软件集。这才是真谛。如果你不想修改一些组件,为什么自找麻烦来使用它呢?
这样使软件变得“用户友好”就像在自行车上装辅助轮一样:它让你能马上骑起来,不需要任何技巧和经验。这对一个初学者来说非常好。但是没有人会觉得所有的自行车都应该加上辅助轮销售。如果你今天得到这样的一辆自行车,我敢打赌你要做的第一件事就是除去这不必要的阻碍:一旦你知道怎样骑车了,辅助轮就没用了。


与乐高出售成品玩具的做法略有相似,通过最近的一系列的成果提升了非黑客用户使用Linux的舒适性,这使得更广大的用户可以使用Linux。也正因如此,你仍可以听到与上面相似的对话,程度也仅是略有不同。新用户抱怨老用户只考虑基本特性,他们不得不通过阅读手册才能实现一些功能。对太多发行版本的抱怨,对软件过多配置选项的抱怨和对运行时时常报错的抱怨不正如对乐高有太多模块的抱怨一样忽略了它可以被用来按你想发拆装成事实吗?
同样的道理,大量的 Linux 软件是设计成不带“辅助轮”(辅助工具)的——它是为已经有一些使用的基本技能的用户设计的。'''毕竟,没有人是永远的新手''':无知是暂时的,知识是永远的。因此 Linux 软件其实是考虑到了用户中的多数的。


因此,为了避免问题#3b:请铭记现在的Linux已今非昔比。Linux社区最大的也是最关键的组成部分——黑客和开发者们,他们因Linux的可以按需定制而欢喜;他们也会可制定能力的丧失因而神伤。
这听起来也许像是借口:毕竟,微软的 Word 有全部的友好菜单,并且有各种工具栏按钮, 而且有快捷键……它是世界上最棒的,对吗?既友好,又高效。


注:
然而,我们必须透过表象看问题。首先,这个想法的可行性:让一个软件拥有菜单、工具栏、快捷方式等一切意味着大量的源代码编写,而没人为 Linux 开发者花费的时间付账;其次, 这样做依然没有真正考虑到那些高端用户:极少有专业的文字录入者使用微软的 Word。你见过哪个编程的人用 Word 吗?与此相比,想想有多少人用 emacs 和 vi。
奇客:geek,词典中解释为因穿着不时尚和不懂得如何在社会中行事而作出一些怪事的人。现在指那些可以在电子和虚拟世界中非常有才华和想象力的发烧友。Geek宗教一般信仰科技或者颠覆科技。--chronmancer


<h3><span style="font-weight: bold;">Problem #4: Designed for the designer</span></h3>
为什么会这样?首先,这是因为正是某些“用户友好”的行为导致了低效:参看上面的“剪切和粘贴”的例子。其次,这还因为 Word 大部分的功能被放在了菜单里,因此你不得不使用菜单。只有某些最常见的功能可以作为按纽被放在屏幕上方的工具栏上。高级用户不得不花大量的时间来找到那些普通用户较少用到,但对高级用户来说依然很常用的的功能。


<p class="MsoNormal">In the car industry, you'll very
请记住,其实那些“辅助轮”在 Linux 软件中也同样有,通常作为可选的附加组件,尽管他们不是那么容易被发现,但实际通常都会有。
rarely find that
the person who designed the engine also designed the car interior: It
calls for totally different skills. Nobody wants an engine that only <span style="font-style: italic;">looks</span> like it can
go fast, and nobody wants an interior that works superbly but is
cramped and ugly. And
in the same way, in the software industry, the user interface (UI) is
not usually created by the people who wrote the software.</p>


<p class="MsoNormal">In the Linux world, however, this is
以 mplayer 播放器为例。你可以在终端输入 '''mplayer 视频文件名'''命令来播放视频文件。你可以使用方向键,PageUp、PageDown 键进行快进、后退等操作。这些可能还不能称之为完全的“用户友好”,但如果你在终端输入 gmplayer 视频文件名,你就会看到图形版的播放器,它同样拥有漂亮、友好的界面,熟悉的按钮。
not so much
the case: Projects frequently start out as one man's toy. He does
everything himself, and therefore the interface has no need of any kind
of <span style="font-style: italic;">"user friendly"</span>
features:
The user knows everything there is to know about the software, he
doesn't need help. Vi is a good example of software deliberately
created for a user who already knows how it works: It's not unheard of
for new users to reboot their computers because they couldn't figure
out
how else to get out of vi.</p>
<p class="MsoNormal">However, there is an important
difference between
a FOSS programmer and most commercial software writers: The software a
FOSS programmer creates is software that he intends to use. So whilst
the end result might not be as 'comfortable' for the novice user, they
can draw some comfort in knowing that the software is designed by
somebody who knows what the end-users needs are: He too is an end-user.
This is very different from commercial software writers, who are making
software for <span style="font-style: italic;">other
people</span> to use: They are <span style="font-style: italic;">not</span> knowledgeable
end-users.</p>
<p class="MsoNormal">So whilst vi has an interface that is
hideously
unfriendly to new users, it is still in use today because it is such a
superb interface once you know how it works. Firefox was created by
people who regularly browse the Web. The Gimp was built by people who
use it to manipulate graphics files. And so on.</p>
<p class="MsoNormal">So Linux interfaces are frequently a
bit of a
minefield for the novice: Despite its popularity, vi should never be
considered by a new user who just wants to quickly make a few changes
to a file. And if you're using software early in its lifecycle,
a&nbsp;polished, user-friendly interface is something you're likely
to
find only in the <span style="font-style: italic;">"ToDo"</span>


list: Functionality comes first. Nobody designs
再用从 CD 转换到 MP3(或 Ogg)为例:如果使用命令行, 你需要先使用 cdparanoia 命令把 CD 的内容录制为磁盘文件,然后你再需要一个编码器……这会是一个恶梦,就算你完完全全清楚如何使用 imho 包。所以,下载和安装 Grip 吧。这是一个容易使用的图形软件,自动的在背后使用 cdparanoia 命令和编码器,令你的转换过程变得简单,甚至支持 CDDB,能自动为你的档案命名。
a killer interface and then tries to add functionality bit by bit. They
create functionality, and then improve the interface bit by bit.</p>
<p class="MsoNormal">So to avoid #4 issues: Look for
software that's
specifically aimed at being easy for new users to use, or accept that
some software that has a steeper learning curve than you're used to. To
complain that vi isn't friendly enough for new users is to be laughed
at for missing the point.</p>
<p class="MsoNormal"></p>


==问题 #4 为设计者而设计==
同样发生在抓取 DVD 上:选择正确的编码是一场噩梦。但是使用 dvd::rip 软件,可以在一个任何人都能操作自如的图形界面中来完成整个编码过程。


在汽车工业中,你很难发现一个人即设计车辆引擎也设计车辆内饰:这些是完全不同的技能。没有人想要只是看起来可以跑得很快的引擎,同样也没有人想要一个做工出众但狭小且肮脏的内饰。基于同样的道理,在软件产业,用户界面(UI)往往不是由软件编程人员设计的。
因此避免这个问题:要记住“辅助轮”(辅助工具)仅作为 Linux 的扩展,而不是自动跟着主程序安装的。而且有时,“辅助轮”还不成为设计的一部分。


但在Linux的世界却大不相同:一个项目往往是因个人的兴趣而产生。个人也包办了所有的工作,因此这些项目的界面往往缺乏了“用户友好”的特性:用户对这个软件了如指掌,所以他也就不需要了帮助文件等。vi就是一个很好的例子,最初它的目标用户就是为那些了解它工作方式的人。因而设计者从来都没有想过如何用其他方式退出vi,所以新用户不得不靠重起计算机推出的事情时有发生。
=== 问题六:模仿 vs. 趋同 ===


但是,FOSS程序员与商用软件程序员的一个最重大区别在于,FOSS程序员的作品都是他们自己想要使用的东西。因此当作品不能被新用户“舒适”的使用的同时,它又成为了最终用户最需要的东西:因为作者也是最终用的一员。商用软件的程序员却大不相同,他们总是为其他人编写软件,而且这些用户都不是专家。
当人们发现 Linux 不是他们想要的 Windows 复制品时,经常争论一件事,就是坚持认为 Linux 一诞生,这(不成为Windows复制品)就是(或应该是)其努力的方向,而且那些不明白这一点的人错误地努力使 Linux 更像 Windows。由于这一点,他们展开激烈的争论:


所尽管vi拥有拥有一个令新手望而生畏的界面,但它仍然在当今流行,这又归功于他的界面:当你熟悉后就会发现它原来无比强大。Firefox也是被经常浏览网页的人编写出来的。Gimp同样是出自经常处理图形文件的人之手。不胜枚举。
''Linux 已经从命令行时代进入了图形界面时代,这明显是在学 Windows。''


Linux的界面队新手而言同样的有些“危险”。尽管vi名声在外,但他仍然不在那些需要快速修改一些文件的新手的考虑之列。如果你在一个软件生命周期的早期使用它,光鲜亮丽且友善的用户界面永远只高挂在“计划”列表之上:功能优先。没有人先雇好装修队再去找楼盘,程序员们都是实现功能再不断改进界面。
不错的理论,但却是错误的:最初的 <u>'''X 窗囗化系统'''</u>(见附录)是于1984年发布,继承自1983年移植到 Unix 上的 W 窗口化系统。而 Windows 1.0 是在1985年才发布的。Windows 在1990年发布第三版之前并没有做大——那时,X 窗口化系统已经演化成我们今天使用的 X11 版本好几年了。Linux 在1991年才开始,所以 Linux 没有开发一个 GUI(图形用户界面)来模仿 Windows:它只是使用了一个在 Windows 出现之前就已经存在的 GUI。


所以为了避免问题#4:寻找那些已便于上手为目的设计的软件,或者接受那些与你使用习惯急剧不同的软件。抱怨vi对新手不够友好只是舍本求末罢了。
''Windows 3 的续作 Windows 95,带来了图形界面的革命性变化。在这以後很多年,微软都没能作出与此类似的创举。Windows 95 带来了多项创新的特性:拖放功能、任务栏等等。因而 Linux 借鉴了这些东西。''


<h3>Problem #5: The myth of "user-friendly"</h3>
事实上……不是这样的。上述所有的特性在微软使用前就已经出现了。例如,<u>'''NeXTSTeP'''</u>(见附录介绍)是一个非常先进的图形用户界面(就当时而言),它明显早于 Win95 ──1989年发布了第一版,1995年发布了最后一版。


<p>This is a big one. It's a very big term in the computing
''好吧,好吧,这样看来我们熟悉的“Windows 界面”,其实其中的元素并不是微软自己创造的。但它还是创造了一种整体界面,Linux 从那时起尝试模仿它。''
world,
"user-friendly". It's even the name of a particularly good webcomic.
But it's a bad term.</p>
<p>The basic concept is good: That software be designed with the
needs
of the user in mind. But it's always addressed as a single concept,
which it isn't.&nbsp;</p>
If you spend your entire life processing text files, your ideal
software will be fast and powerful, enabling you to do the maximum
amount of work for the minimum amount of effort. Simple keyboard
shortcuts and mouseless operation will be of vital importance.<br>
<p>But if you very rarely edit text files, and you just want to
write
an occasional letter, the last thing you want is to struggle with
learning keyboard shortcuts. Well-organized menus and clear icons in
toolbars will be your ideal.&nbsp;</p>
<p>Clearly, software designed around the needs of the first user
will
not be suitable for the second, and vice versa. So how can any software
be called "user-friendly", if we all have different needs?</p>


<p>The simple answer: User-friendly is a misnomer, and one that
为了反驳这一条,我们来讨论一下“趋同进化”的概念。它说的是:两个不同的、各自独立的系统随着时间的推移会逐渐变得类似。这种现象经常发生在生物学领域。举例来说:鲨鱼和海豚,他们都有着类似的背鳍、胸鳍和尾鳍,以及同样的流线型外形。
makes a complex situation seem simple.</p>
<p>What does "user-friendly" really mean? Well, in the context in
which it is used, "user friendly" software means <span style="font-style: italic;">"Software that can be used to a
reasonable level of competence by a user with no previous experience of
the&nbsp;software."</span> This has the unfortunate effect of
making lousy-but-familiar interfaces&nbsp;fall into the category of
"user-friendly".&nbsp;</p>
<p></p>


<h3>"用户友好"的神话</h3>
但是,鲨鱼是由鱼进化而来的,而海豚则是由陆地上某种四条腿的哺乳动物进化而来的。他们拥有类似外形,是由于他们都生活在同样的海洋环境中,他们必须朝最大效率适应海洋环境的方向进化。实际上不会有一幕这样的场景:未进化的海豚(相对的后来者)看到鲨鱼以后就开始想“哇,看看鲨鱼的鳍,它们非常有用。我也要这样进化一套自己的鳍!”


在电脑世界里,“用户友好“是一个十分广泛的专有名词。甚至有一个网络笑话就叫这个名字。但这个词却名不其实。
同样,如果先看早期的 Linux 桌面、FVWM 和 TWM 以及许多简陋的 GUI(图形用户界面),然後再看看今天的 Linux 桌面、Gnome 和 KDE,以及它们带有的任务栏、菜单、视觉效果。是的,不得不说现在的 Linux 比早期的更像 Windows 了。


基本实现方法听起来似乎不错:软件的设计要从用户的想法和需要出发。这个方法一直都被认为是单一的实现办法,但事实并非如此。
另一方面,Windows也同样如此;我印象中 Windows 3.0 没有任务栏。那么开始菜单呢?什么是开始菜单?


如果你一辈子都在进行文书处理的工作,理想的软件对你来说就是个快捷强大、能让你投入最小的精力来实现最大的工作效率的字处理软件。简单的键盘快捷键和无须鼠标的操作将是最基本的需求。
Linux 过去没有任何桌面像今天的 Windows,微软过去也没有(一个像今天的 Windows 的桌面)。现在他们都有了,这说明什么问题呢?
但如果你很少做字处理的工作,你只是要写一封普通的信,那么你不会想着去学会那些键盘快捷键操作方法。排列有序的菜单和一目了然的工具栏图标就是你的理想环境。


很明显,你为某个用户的需求所设计的软件可能对其他的用户来说并不合适。如此说来,若我们每个人都对软件有不一样的需求,那这些软件怎么能自称“用户友好”呢?
这说明来自两个阵营的开发人员都在寻找提升GUI(图形用户界面)性能的方法,但是解决相同的问题可供选择的方法并不多,他们难免会使用类似的方法。类似并不能说明或暗指一方在模仿另一方。记住这一点,你就不会受到这个问题的困扰了。


简单来说:“用户友好”并非事实,只是为了让复杂的情况看上去变得简单一点而已。
=== 问题七:FOSS──自由和开源 ===


那么“用户友好”到底是什么意思呢?好吧,从那些使用这个词的文章中来看,“用户友好”的软件实际上意味着“该软件对那些以前从未使用这个软件的用户们来说也不是那么难上手“。这就使得那些看上去用户界面都差不多的软件都被归类为“用户友好“。
那么问题来了。[http://zh.wikipedia.org/zh-cn/%E8%87%AA%E7%94%B1%E8%BD%AF%E4%BB%B6 自由]和[http://zh.wikipedia.org/zh-cn/%E5%BC%80%E6%94%BE%E6%BA%90%E4%BB%A3%E7%A0%81 开源]是整个事情中一个很有意思并且相当重要,但却不是根本的部分。但是对于一些人看来,不过对于开源软件和专有软件之间的区别这个问题,对一些人来说实在是有些太宽泛而难以理解的。


<h3>Subproblem #5a: Familiar is friendly</h3>
我已经举了一些例子,人们认为他们有权要求技术支持和他们的东西。但是事实并不是这样。
<p>So it is that in most "user-friendly" text editors &amp;
word
processors, you Cut and Paste by using Ctrl-X and Ctrl-V. Totally
unintuitive, but everybody's used to these combinations, so they count
as a "friendly" combination.</p>
<p>So when somebody comes to vi and finds that it's "d<span style="font-style: italic;"></span>" to cut, and "p"
to paste, it's not considered
friendly: It's
not what anybody is used to.</p>


<p>Is it superior? Well, actually, yes.&nbsp;</p>
微软的使命是“A computer on every desktop(让每个桌面上都有电脑)”——他们没有说出口的是每台电脑都运行着 Windows 。微软和苹果公司都销售操作系统,都尽他们最大的努力来保证尽可能多的人使用他们的产品:他们是来做生意,要赚钱的。
<p>With the Ctrl-X approach, how do you cut a word from the
document you're currently in? <span style="font-style: italic;">(No
using the mouse!)</span></p>
From the start of the word, <span style="font-style: italic;">Ctrl-Shift-Right</span>
to select the word.&nbsp;<br>
Then <span style="font-style: italic;">Ctrl-X</span>
to cut it.
<p>The vi approach? <span style="font-style: italic;">dw</span>


deletes the word.</p>
然而看看FOSS,直至今天,几乎完全是非商业性质的。
<p>How about cutting <span style="font-weight: bold;">five</span>
words with a Ctrl-X application?</p>
From the start of the words, <span style="font-style: italic;">Ctrl-Shift-Right</span><br>
<span style="font-style: italic;">Ctrl-Shift-</span><span style="font-style: italic;">Right</span><br>
<span style="font-style: italic;">Ctrl-Shift-</span><span style="font-style: italic;">Right</span><br>
<span style="font-style: italic;">Ctrl-Shift-</span><span style="font-style: italic;">Right</span><br>


<span style="font-style: italic;">Ctrl-Shift-</span><span style="font-style: italic;">Right</span><br>
当你发电子邮件告诉我,Red Hat、Suse、Linspire ……是的,我知道他们在“销售” Linux。我知道他们都希望 Linux 被广泛的采用,特别是他们自己的版本。但是不要混淆提供商和制造商。Linux 内核不是被某个公司制造,不是由靠它获利的人来维护它。GNU 软件不是被某个公司制造,同样也不是由靠它们获利的人来维护。X11 视窗系统……好,当前最流行的实现方案是 xorg,“.org”的名字应该能告诉你想知道的(注:.org为非盈利组织)。桌面软件:好的。你提出一个例子,比如 KDE ,由于其基于的 Qt 是商业化的。(译者注:现在 Qt 已经不是商业化的了,是双重授权)。但是 Gnome、Fluxbox、Enlightenment 等等,都是非盈利的。确实有人销售 Linux,但是那只是极少数。
<span style="font-style: italic;">Ctrl-X</span>
<p>And with vi?</p>
<p><span style="font-style: italic;">d5w</span></p>
<p>The vi approach is far more versatile and actually
more&nbsp;intuitive: "X" and "V" are not obvious or memorable "Cut"
and "Paste" commands, whereas "dw" to <span style="font-style: italic; font-weight: bold;">d</span>elete
a <span style="font-style: italic; font-weight: bold;">w</span>ord,
and "p" to <span style="font-style: italic; font-weight: bold;">p</span>ut
it back is perfectly straightforward. But "X" and "V" are what we all
know, so whilst vi is clearly superior, it's unfamiliar.
Ergo, it
is considered unfriendly. On no other basis, pure familiarity makes a
Windows-like interface seem friendly. And as we learned in problem #1,
Linux
is necessarily different to Windows. Inescapably, Linux always appears
less
"user-friendly" than Windows.&nbsp;</p>


<p>To avoid #5a problems, all you can really do is try and
私有软件最终用户数量的增加可以直接变为制作公司的直接经济效益。对于 FOSS来说,并不是这样,使用人数的增加并不会产生直接的收益。非直接收益当然是有的:个人的自豪,更多发现 Bug(错误)的机会,更多可能得吸引新的开发者,可能有机会得到个好的工作,等等。
remember
that <span style="font-style: italic;">"user-friendly"</span>
doesn't mean <span style="font-style: italic;">"What I'm
used to"</span>: Try doing things
your usual way, and if it doesn't work, try and work out what a total
novice would do.&nbsp;</p>
<p></p>
<h3>Subproblem #5b: Inefficient is friendly</h3>
<p>This is a sad but inescapable fact. Paradoxically, the harder
you
make it to access an application's functionality, the friendlier it can
seem to be.&nbsp;</p>
<p>This is because friendliness is added to an interface by using
simple, visible 'clues' - the more, the better. After all, if a
complete novice to computers is put in front of a WYSIWYG word
processor and asked to make a bit of text bold, which is more likely:</p>
<ul>
  <li>He'll guess that <span style="font-style: italic;">"Ctrl-B"</span>


is the usual standard&nbsp;</li>
但是 Linus Torvalds( Linux 的创始人)并没有因 Linux 用户的增加而赚钱。Richard Stallman( GNU 创始人)也没有从 GNU 用户的增长中获利。所有运行 OpenBSD 和 OpenSSH 的服务器也没有放一分钱到 OpenBSD 项目的口袋中去。因此我们来到了在 Linux 和新用户之间最大的问题:
</ul>
<ul>
  <li>He'll look for clues, and try clicking on the <span style="font-style: italic;">"Edit"</span> menu.
Unsuccessful, he'll try the next likely one along the row of menus: <span style="font-style: italic;">"Format"</span>. The new
menu has a <span style="font-style: italic;">"Font"</span>
option, which seems promising. And Hey! There's our <span style="font-style: italic;">"Bold"</span> option.
Success!</li>


</ul>
他们发现,他们不是 Linux 制造商请来的。
<p>Next time you do any processing, try doing every job via the
menus:
No shortcut keys, and no toolbar icons. Menus all the way. You'll find
you slow to a crawl, as every task suddenly demands a multitude of
keystrokes/mouseclicks.</p>
Making software "user-friendly" in this fashion is like putting
training wheels on a bicycle: It lets you get up &amp; running
immediately, without any skill or experience needed. It's <span style="font-style: italic;">perfect</span> for a
beginner. But nobody out there thinks that <span style="font-style: italic;">all</span> bicycles should
be sold
with
training wheels: If you were given such a bicycle today, I'll wager the
first
thing you'd do is remove them for being unnecessary encumbrances:
Once you know how to ride a bike, training wheels are unnecessary.
<p>And in the same way, a great deal of Linux software is
designed
without "training wheels" - it's designed for users who already have
some basic skills in place. After all, nobody's a permanent novice:
Ignorance is short-lived, and knowledge is forever. So the software is
designed with the majority in mind.&nbsp;</p>
<p>This might seem an excuse: After
all, MS Word has all the friendly menus, <span style="font-style: italic;">and</span> it has toolbar
buttons,


<span style="font-style: italic;">and</span> it has
来到 Linux 之前,这些新用户使用的操作系统当中,最终用户的需求至高无上的,并且“用户友好性”和“以用户为中心” 被认为是第一位的。他们突然发现他们自己将要使用的操作系统仍然依赖于“man”文档、命令行、手动编辑的配置文件和 Google。而且当他们抱怨时,还没得到全方位的服务,也没得到什么承诺:被直接拒之门外。
shortcut keys. . . Best of all worlds, surely?
Friendly&nbsp;<span style="font-weight: bold;">and</span>
efficient.</p>
<p>However, this has to be put into perspective: Firstly, the
practicalities: having menus and toolbars and shortcuts and all would
mean a lot of coding, and it's not like Linux developers all get paid
for their time.&nbsp;Secondly, it still doesn't really take into
account
serious&nbsp;power-users: Very few professional wordsmiths use MS
Word. Ever meet a coder who used MS Word? Compare that to how
many use emacs &amp; vi.&nbsp;</p>
<p>Why is this? Firstly, because some "friendly"
behaviour rules out efficient behaviour: See the "Cut&amp;Copy"
example
above. And secondly, because most of Word's functionality is buried in
menus that you <span style="font-style: italic;">have</span>


to use:
当然是有些夸张了。但是确实,很多人像这样,以自己熟悉的方式来试着尝试 Linux,却遭到了失败。
Only the most common functionality has those handy little buttons in
toolbars at the top. The less-used functions that are still vital for
serious users just take too long to access.</p>
<p>Something to bear in mind, however, is that "training wheels"
are
often available as "optional extras" for Linux software: They might not
be obvious, but frequently they're available.</p>
<p>Take mplayer. You use it to play a video file by typing <span style="font-style: italic;">mplayer filename</span>
in a terminal. You fastforward &amp; rewind using the arrow keys
and
the PageUp &amp; PageDown keys. This is not overly "user-friendly".
However, if you instead type <span style="font-style: italic;">gmplayer
filename</span>, you'll get the graphical frontend, with all its
nice, friendly , familiar buttons.</p>
<p>Take ripping a CD to MP3 (or Ogg): Using the command-line, you
need
to use cdparanoia to rip the files to disc. Then you need
an&nbsp;encoder. . . It's a hassle, even if you know exactly how to
use the
packages <span style="font-style: italic;">(imho)</span>.
So download


&amp; install something like Grip. This is an easy-to-use graphical
从另一方面来说,FOSS 事实上是一种非常自私的发展方法:人们想工作的时候才工作,并且只做他们想做的工作。大部分人都不认为让 Linux 增加一些对没有经验的用户的吸引力有任何的必要:Linux 已经能做他们(设计者)想要它做的事情了,别人如果用不来,他们为何要在意呢?
frontend that uses cdparanoia and encoders behind-the-scenes to make it
really easy to rip CDs, and even has CDDB support to name the files
automatically for you.&nbsp;</p>
<p>The same goes for ripping DVDs: The number of options to pass
to
transcode is a bit of a nightmare. But using dvd::rip to talk to
transcode for you makes the whole thing a simple, GUI-based process
which anybody can do.</p>
<p>So to avoid #5b issues: Remember that "training wheels" tend
to
be&nbsp;bolt-on extras in Linux, rather than being automatically
supplied with the main product. And sometimes, "training wheels" just
can't be part of the design.</p>
<p></p>
<h3>Problem #6: Imitation vs. Convergence</h3>
<p>An argument people often make when they find that Linux isn't
the Windows clone they wanted is to insist that this is what Linux has
been (or <span style="font-style: italic;">should</span>
have been) attempting to be since it was created, and that people who
don't
recognise this and help to make Linux more Windows-like are in the
wrong. They draw on many arguments for this:</p>
<p style="font-style: italic;">Linux has gone from
Command-Line- to Graphics-based interfaces, a clear attempt to copy
Windows</p>


<p>Nice theory, but false: The original X windowing system was
FOSS 和 Internet 自身有很多相似的地方:你不需要付钱给一个'''网页(软件)'''的作者,就可以去下载和'''阅读(安装)'''它。对于'''已经有了宽带网(知道如何使用软件)'''的人们来说,'''全民安宽带(用户友好的界面)'''没什么吸引力。'''博客主人(软件开发者)'''不需要很多的'''读者(用户)'''来作为动力以继续'''写博客(编写软件)'''。 确实有许多人从中赚到许多钱,但不是靠通常的大多数生意的规矩:“这是我的,如果你想要,请付钱”;它是靠提供'''技术支持(电子商务)'''的服务来赚钱。
released in 1984, as the successor to the W windowing system ported to
Unix in 1983. Windows 1.0 was released in 1985. Windows didn't really
make it
big until version 3, released in 1990 - by which time, X windows had
for years been at the X11 stage we use today. Linux itself was only
started in 1991. So Linux didn't create a GUI to copy Windows: It
simply made use of a GUI that existed long before Windows.</p>
<p style="font-style: italic;">Windows 3 gave way to
Windows 95 - making a huge level of
changes to the UI that Microsoft has never equalled since. It had many
new &amp; innovative features: Drag &amp; drop functionality;
taskbars,
and so on. All of which have since been copied by Linux, of course.</p>
<p>Actually. . . no. All the above existed prior to Microsoft
making use
of them. NeXTSTeP in particular was a hugely advanced (for the time)
GUI, and it predated Win95 significantly - version 1 released in 1989,
and the final version in 1995. </p>
<p style="font-style: italic;">Okay, okay, so Microsoft
didn't think up the individual features that we think of as the Windows
Look-and-Feel. But it still created <strong>a</strong>
Look-and-Feel, and Linux has been trying to imitate that ever since.</p>
<p>To debunk this, one must discuss the concept of <em>convergent
evolution</em>.
This is where two completely different and independent systems evolve
over time to become very similar. It happens all the time in biology.
For example, sharks and dolphins. Both are (typically) fish-eating
marine organisms of about the same size. Both have dorsal fins,
pectoral fins, tail fins, and similar, streamlined shapes.</p>


<p>However,
Linux 对市场份额不感兴趣。Linux 也没有客户。Linux 没有股东,也没有盈利的责任。Linux 不是为了赚钱而创造的。Linux 的目标不是成为地球上最流行和最普及的操作系统。
sharks evolved from fish, while dolphins evolved from a land-based
quadrupedal mammal of some sort. The reason they have very similar
overall appearances is that they both evolved to be as efficient as
possible at living within a marine environment. At no stage did
pre-dolphins (the relative newcomers) look at sharks and think <em>"Wow,
look at those fins. They work really well. I'll try and evolve some
myself!"</em></p>
<p>Similarly,
it's perfectly true to look at early Linux desktops and see FVWM and
TWM and a lot of other simplistic GUIs. And then look at modern Linux
desktops, and see Gnome &amp; KDE with their taskbars and menus and
eye-candy. And yes, it's true to say that they're a lot more like
Windows than they used to be.</p>
<p>But then, so is Windows: Windows 3.0 had no taskbar that I
remember. And the Start menu? <span style="font-style: italic;">What</span>
Start menu?</p>
<p>Linux didn't have a desktop anything like modern Windows.
Microsoft didn't either. Now they both do. What does this tell us?</p>
<p>It
tells us that developers in both camps looked for ways of improving the
GUI, and because there are only a limited number of solutions to a
problem, they often used very similar methods. Similarity does not in
any way prove or imply imitation. Remembering that will help you avoid
straying into problem #6 territory.</p>
<p></p>


<h3>Problem #7: That FOSS thing.</h3>
Linux 社区想要的是一种真正品质优良、充满特色、自由的操作系统。如果这使 Linux 最终成为一种非常流行的操作系统,那么非常好。如果这使 Linux 最终拥有直观的、用户友好的界面,那么也非常好。如果这使 Linux 最终成为一个数十亿美元的产业,那也非常好。
<p>Oh, this causes problems. Not intrinsically: The software
being free and open-source is a wonderful and immensely important part
of the whole thing. But understanding just how different FOSS is from
proprietary software can be too big an adjustment for some people to
make.&nbsp;</p>
<p>I've already mentioned some instances of this: People thinking
they can demand technical support and the like. But it goes far beyond
that.&nbsp;</p>
<p>Microsoft's Mission Statement is <span style="font-style: italic;">"A computer on every desktop"</span>
- with the unspoken rider that each computer should be running Windows.
Microsoft and Apple both sell operating systems, and both do their
utmost to make sure their products get used by the largest number of
people: They're businesses, out to make money.</p>
<p>And then there is FOSS. Which, even today, is almost entirely
non-commercial.</p>
<p>Before you reach for your email client to tell me about Red
Hat, Suse, Linspire and all:&nbsp;Yes, I know they "sell" Linux. I
know they'd all love Linux to be
adopted universally, especially their own flavour of it. But don't
confuse the suppliers with the manufacturers. The
Linux kernel was not created by a company, and is not maintained by
people out to make a profit with it. The GNU tools were not created by
a company, and are not maintained by people out to make a profit with
them. The X11 windowing system. . . well, the most popular
implementation is xorg right now, and the <span style="font-style: italic;">".org"</span> part should
tell you
all you need to know. Desktop software: Well, you might be able to make
a case for KDE being commercial, since it's Qt-based. But Gnome,
Fluxbox, Enlightenment, etc. are all non-profit. There <span style="font-style: italic;">are</span> people out to
sell Linux, but they are very much the minority.</p>


<p>Increasing the number of end-users of proprietary software
这仅仅是很好,但不是重点。重点是,让 Linux 成为社区能力范围之内的最好的操作系统。不是为了别人:为了社区自己。如此普遍关于“除非 Linux 如此这样,否则永远不会占领桌面”的威胁论是不恰当的:Linux 社区没有尝试占领桌面。他们完全不关心它是否能够好到进驻你这个新用户的桌面上,只要在他们自己的桌面上运行的够好就行了。 高呼憎恨微软的人,深度Linux 的狂热者,靠FOSS赚钱的人或许会在这里站出来说两句,但他们仍然只是少数。
leads to a direct financial benefit to the company that makes it. This
is simply not the case for FOSS: There is no direct benefit to any FOSS
developer in increasing the userbase. Indirect benefits, yes: Personal
pride; an increased potential for finding bugs; more likelihood of
attracting new developers; possibly a chance of a good job offer; and
so on.&nbsp;</p>
<p>But Linus Torvalds doesn't make money from increased Linux
usage. Richard Stallman doesn't get money from increased GNU usage. All
those servers running OpenBSD and OpenSSH don't put a penny into the
OpenBSD project's pockets. And so we come to the biggest problem of all
when it comes to new users and Linux:</p>
<p>They find out they're not wanted.</p>
<p>New users come to Linux after spending their lives using an OS
where the end-user's needs are paramount, and <span style="font-style: italic;">"user friendly"</span>
and <span style="font-style: italic;">"customer focus"</span>
are considered veritable Holy Grails. And they
suddenly find themselves using an OS that still relies on 'man' files,
the
command-line,&nbsp;hand-edited configuration files, and Google. And
when they complain, they don't get coddled or promised better things:
They get bluntly shown the door.</p>
<p>That's an exaggeration, of course.
But it <span style="font-style: italic;">is</span>


how a lot of potential Linux converts perceived things when
这就是 Linux 社区的目标:一种能够被任何想要它的人安装的操作系统。所以如果你在考虑转向 Linux。首先,问你自己,什么是你真正想要的。
they tried and failed to make the switch.&nbsp;</p>
<p>In an odd way, FOSS is actually a very selfish development
method:
People only work on what they want to work on, when they want to work
on it. Most people don't see any need to make Linux more attractive to
inexperienced end-users: It already does what&nbsp;<span style="font-style: italic;">they</span> want it to do,
why should they care if it doesn't work for other people?&nbsp;</p>
<p>FOSS has many parallels with the Internet itself: You don't
pay the
writer of <span style="font-weight: bold; color: rgb(51, 51, 255);">a
webpage/the
software</span> to download and <span style="font-weight: bold; color: rgb(51, 51, 255);">read/install</span><span style="color: rgb(51, 51, 255);"> it. </span><span style="font-weight: bold; color: rgb(51, 51, 255);">Ubiquitous
broadband/User-friendly interfaces</span> are of no great
interest to
somebody who already &nbsp;<span style="font-weight: bold; color: rgb(51, 51, 255);">has
broadband/knows how to use the software. Bloggers/developers</span>


don't need to have lots of <span style="font-weight: bold; color: rgb(51, 51, 255);">readers/users</span>
如果你想要一种操作系统,就像一辆汽车,没有雇来的司机,给你把钥匙,让你自己做在驾驶员的位置上,并且希望你知道该做什么:用 Linux吧。你得花些时间去学习如何使用它,但是一旦你学会了,你将拥有一个让人着迷的操作系统。
to justify <span style="font-weight: bold;"><span style="color: rgb(51, 51, 255);">blogging/coding</span>.</span>
There <span style="font-style: italic;">are</span>
lots of people making lots of money off it, but it's not by
the old-fashioned <span style="font-style: italic;">"I
own this&nbsp;and you have to pay me if you want some of it"</span>
method that most businesses are so enamoured of; it's by providing
services like <span style="font-weight: bold; color: rgb(51, 51, 255);">tech-support/e-commerce</span><span style="color: rgb(51, 51, 255);">.</span>&nbsp;</p>


<p>Linux is not interested in market share. Linux does not have
如果你只是想要没有恶意软件和安全问题的 Windows:阅读一些安全方面的资料,安装好的防火墙,恶意软件检测工具和杀毒软件;用一个更安全的浏览器替换 IE ;保持安装最新的安全更新。有人(包括我自己)使用 Windows 从 3.1 到 XP,从来不曾被病毒或者恶意软件感染,你也能做到。不要用 Linux,它不会成为你想要它的那个样子。
customers. Linux does not have shareholders, or a responsibility to the
bottom line. Linux was not created to make money. Linux does not have
the goal of being the most popular and widespread OS on the planet.</p>
<p>All the Linux community wants is to create a really good,
fully-featured, free operating system. If that results in Linux
becoming a hugely popular OS, then that's great. If that results in
Linux having the most intuitive, user-friendly interface ever created,
then that's great. If that results in Linux becoming the basis of a
multi-billion dollar industry, then that's great.</p>
<p>It's <span style="font-weight: bold;">great</span>,
but it's not <span style="font-weight: bold;">the
point</span>. The point is to make Linux the best OS that the
community is capable of making. Not for other people: For
itself. The oh-so-common threats of&nbsp;<span style="font-style: italic;">"Linux will never take over the
desktop unless it does such-and-such"</span> are simply
irrelevant: The Linux community isn't <span style="font-style: italic;">trying</span> to take over
the desktop. They really don't care if it gets good enough to make it
onto&nbsp;<span style="font-style: italic;">your</span>


desktop, so long as it stays good enough to remain on&nbsp;<span style="font-style: italic;">theirs.</span> The
如果你想要一种基于 Unix 的操作系统的安全性和性能,以及客户至上和世界著名的界面:购买苹果公司的 Mac 电脑。Mac OS X是不错的。但是不要用 Linux:它不会做你想要它做的。(译者注:目前 Linux 上的 Compiz 已经成为最花哨的窗口管理器了。)
highly-vocal MS-haters, pro-Linux zealots, and money-making FOSS
purveyors might be loud, but they're still minorities.</p>
<p>That's what the Linux community wants: an OS that can be
installed by whoever really wants it. So if you're
considering switching to Linux, first ask yourself what <span style="font-weight: bold;">you</span> really want.</p>
<p>If you want an OS that doesn't chauffeur you around, but hands
you the keys, puts you in the driver's seat, <span style="font-style: italic;">and expects you to know what to
do</span>: Get Linux. You'll have to devote some time to learning
how to use it, but once you've done so, you'll have an OS that you can
make sit up and dance. </p>
<p>If you really just want Windows without the malware and
security issues: Read up on good security practices; install a good
firewall, malware-detector,&nbsp;and anti-virus; replace IE with a
more secure browser; and keep yourself up-to-date with security
updates. There are people out there <span style="font-style: italic;">(myself included)</span>


who've used Windows since 3.1 days right through to XP without ever
问题不仅仅是“为什么我想要 Linux?”。还有“为什么 Linux 想要我?”
being infected with a virus or malware: you can do it too. Don't get
Linux: It will fail miserably at being what you want it to be.</p>
<p>If you really want the security and performance of a
Unix-based OS but with a customer-focussed attitude and an
world-renowned interface: Buy an Apple Mac. OS X is great. But don't
get Linux: It will not do what you want it to do.</p>
<p>It's not just about <span style="font-style: italic;">"Why
should I want Linux?"</span>. It's also about <span style="font-style: italic;">"Why should Linux want me?"</span></p>
</div>
</center>

2014年11月22日 (六) 16:29的最新版本

{{#ifexist: :Linux不是Windows/zh/zh | | {{#ifexist: Linux不是Windows/zh/zh | | {{#ifeq: {{#titleparts:Linux不是Windows/zh|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:Linux不是Windows/zh|1|-1|}} | zh | | }}

在以下的文章中,我要讲的是GNU/Linux OS 和各种免费的和开源的软件(FOSS)项目,总称为"Linux"。这样看起来更好些。

 !=
(Linux不是Windows)

Derived works

如果你访问了这个页面,那么十有八九你是一个 Linux 的新用户,你正遇到许多关于如何由 Windows 转向 Linux 的困惑,这篇文章的目的正是向新手解释这个问题。由于这个大问题衍生出许多枝节,下面我将对此逐一进行讨论。

问题一:Linux 和 Windows 不太一样

你一定会惊讶于有这么多人对 Linux 发出相似的抱怨,他们奔向 Linux,希望找到一个免费的、开源版的 Windows。通常,这正是那些狂热的 Linux 使用者所告诉他们的那种状况。然而这却是个荒谬的期待。 人们尝试 Linux 的原因不尽相同,但所有的原因都可以归结为一点:他们希望 Linux 会比 Windows 更优秀。成本、选择范围、性能和安全性是通常衡量操作系统好坏的标准。当然,还有许多其它的方面,但当 Windows 用户转向 Linux 时,他们在这四方面将两者做比较,因为他们希望在这些方面Linux做的更好。

这正是问题之所在。

从逻辑上讲,在保持某样东西与参考物体完全相同的前提下,将其做得更好是绝无可能的。正如一个完美的复制品将与它的母版毫无差异,但是它不可能会超越母版。所以当你带着 Linux 更好的希望来尝试它的时候,你便会不可避免地发现它的不同。太多的人都忽略了这样一个事实,并且把这些不同之处看作是 Linux 的缺陷

举一个简单的例子,升级驱动程序:在 Windows 下升级某个硬件驱动,通常的情况下,我们需要去硬件制造商的网站上找到并下载最新的驱动,如今Windows 7已经可以自动更新最新的驱动程序,而不需要用户过多的参与;然而在 Linux 下,我们要做的是升级内核。

这意味着在 Linux 下,仅仅一次下载和升级便能提供所有适用的最新驱动,然而在旧版本的Windows 下我们却不得不浏览多个网站并分别下载升级程序。只是过程有所不同,但是绝对不是说更糟糕。然而却有很多人对此抱怨不停,只因为这不是他们习惯的方式。

或者从另一个更经常接触到的例子来看,想一想 Firefox ——开源软件最成功的案例之一。这是一个席卷全球的浏览器,难道它是通过模仿 IE ——那个“最流行的浏览器”而取得成功的吗?

不,它的成功是因为它比 IE 更好,它之所以更好正是因为它的不同。它有标签页浏览方式,实时动态的书签,内建搜索工具栏,PNG图像格式支持,广告过滤扩展,以及其它的好东西。“查找”工具条显示在底部的工具栏中,它能够在你键入的时候就查找内容并且以红色表示没有相匹配的内容。而 IE 却没有标签页浏览,没有 RSS 订阅功能,搜索条只能通过第三方扩展实现,它的查找对话框还得通过点击“确认”按钮开始查找,而且还要再点击一次“确认”才能清除“未发现”的错误提示。(译者注:现在IE也有类似的功能了)这个鲜活的案例,证明了一个开源的应用程序通过“不同”而做到了“更好”,依靠“更好”进而取得了成功。如果 Firefox 只是一个 IE 的克隆,它必然早已销声匿迹于 IE 的阴影之下了。如果 Linux 是 Windows 的一个克隆,同样的事情也会发生在 Linux 身上。

因此问题一的答案就是:记住 Linux 其实与你熟悉的东西很相似,很有亲和力,它并不是全新和改进过的。积极地面对那些不同之处,因为只有不同,Linux 才有机会真正闪耀出其光彩

问题二:Linux 和 Windows 太不一样了

当人们期待着 Linux 有所不同时,又一个问题接踵而至。Linux 和 Windows 实在是太不一样了,一些差异简直难以让人适应。也许最典型的例子就是可供 Linux 用户选择的东西实在是太多了。对于一个刚上手的 Windows 用户,他已拥有一个经典的或 Windows XP 风格的桌面主题、一个写字板程序、一个IE 浏览器、一个Outlook Express来收发邮件;然而对于一个初学 Linux 的家伙,他面前有上百种发行版供其挑选,然後,是 Gnome、KDE 或者 Fluxbox(桌面环境),vi、emacs 或者 kate(文本编辑器),Konqueror、Opera、Firefox 或者 Mozilla(网页浏览器),或者其他一系列可供选择的工具。 Windows 用户不曾为了安装和使用(操作系统)而面对过如此丰富的选择。“有必要提供那么多种选择吗?”这样的抱怨帖子很常见。

Linux 真的和 Windows 有那么大的区别吗?不管怎么说,它们都是操作系统。它们都做同样的工作:操作你的计算机,让你有个运行应用程序的东西,自然它们多少都有些共通的地方吧?

让我们从这个角度看问题:出门看看路上行驶的各种不同车辆。所有的车辆不管是什么样的设计,都有同样的目的:从路上把你由 A 处运到 B 处。注意它们有不同的设计。

但是你会想,汽车之间的差异非常小:它们都有方向盘、脚踏板、变速杆、手刹车、车窗、车门、油箱……如果你能够开这部车,你就能开任何一部车。

确实如此。但你有没看见过有些人不开汽车──他们骑摩托车?

从一个版本的 Windows 切换到另一个版本就像从一辆汽车换到另外一辆汽车。Win95 到 Win98 ,老实说我说不出有什么区别。Win98 到 WinXp,差别大一些但是也没有什么真正的重大区别。

但是从 Windows 切换到 Linux 就象从骑摩托车切换到开汽车。他们都是操作系统(在道路上行驶的车辆)。他们可能都使用同样的硬件(道路)。他们可能都提供一个运行应用程序的环境(把你从甲地运到乙地)。但他们使用本质不同的两种方法来达到目的。

  • Windows(摩托车)对于病毒(小偷)并不安全,除非你安装反病毒软件(车锁)。Linux(汽车)对于病毒(小偷)是比较安全的,所以即使你没有安装反病毒软件(不锁车门)也非常安全。

或者从另一个角度看:

  • Linux(汽车)从根本上用于多用户(多名乘客)。Windows(摩托车)用于单用户(乘客)。Windows 用户(摩托车驾驶员)习惯于任何时候完全地控制他的计算机(摩托车)。而一个Linux 用户(汽车乘客)只有在以 root 根用户身份登录(坐在驾驶座上)时才要去控制计算机(车辆)。

通过两种不同的方法来达成同样的目标,他们各有优缺点:当载上一家子的成员和大包小包的货物从甲地至乙地时,一辆车显然是明智的选择:因为它有充裕的座位以及足够的储存空间。而对于一个人从甲地到乙地的情况,摩托车则是更好的选择:因为它不怎么会遇上堵车,消耗的燃油也更少。

无论选择摩托车或是汽车,仍有很多事情不会改变:你总归要给油箱里加油,而车还是开在同一条道上,而且必须遵守红绿灯,在转弯前要打转向灯,你同样也要注意限速。

但是也终究有很多情况不同了:开汽车的人不必带着安全头盔开车,摩托骑手不用系安全带;开汽车的人转动方向盘来转弯,摩托车骑手则要倾斜身子改变重心;开车需要踩油门踏板来加速,而骑摩托车通过手旋转手把来控制加速

一位汽车司机如果试图通过转移重心来拐弯,肯定是行不通的。同样的,一个 Windows 用户如果认为自己的经验可以直接派上用场,结果也会因为相同的原因而徒劳无获。事实上,较之电脑新手,一个 Windows “高级用户”在 Linux 的使用过程中常会遇上更多麻烦。那些经验丰富的 Windows 用户在面对问题时,如果无法解决,常会觉得“如果我这么有知识的用户都搞不定,那新手就更别想了”,因而得出“Linux离桌面应用还有十万八千里呢”的想法,其实事实恰好相反。

解决方法在于:Windows 用户必须意识到他只是一个有经验的 Windows 用户,而不是有经验的 Linux 用户。对于刚开始使用 Linux 的 Windows 高级用户,他应该意识到,他是个新手。

问题三: 文化冲突

子问题 A : Linux 有自己的文化

Windows 用户或多或少地处于一种消费者和供应商之间的关系:他们花钱买软件,获得授权,得到支持,等等。他们希望软件能够有确切的可用性。因此他们习惯于去得到使用软件的权利:他们花钱去得到技术上的支持以及他们得到他们想要的权利。他们也经常要与一些除了个人之外的实体打交道:例如他们与一家公司签一份合同。

Linux 用户则更多的是处于一个社团当中。他们不需要花钱去买软件,不需要为得到技术上的支持而耗费财力。他们免费下载软件,并且使用即时通信工具和论坛寻求帮助。他们和个人打交道,而不是公司

一位 Windows 的用户如果只是把他的观点带到 Linux 中,那么是不会喜欢上 Linux 的,这需要慢慢地适应。

引起矛盾的最大原因就在在线交流当中:一名初学 Linux 的菜鸟在遇到问题时寻求帮助,当他没有得到他可以接受的答案的时候,他便开始抱怨并且想要得到更多的帮助。因为这正是他以前用付费来获得帮助的方式。问题就是这不是付费提供帮助的系统,而是很多热心人出于善意帮助其他人解决问题的系统。一位新的用户没有任何权利去向这些热心人索要帮助,这就如同一个想要得到施舍的人,还要求从捐赠者那里获得更多的捐赠品一样。

同样,一名 Windows 用户习惯了使用商业软件。这些软件在没有做到足够的可靠性、功能性以及对用户友好的界面之前,公司是不会发布该软件的。因此这正是 Windows 用户希望软件是从 1.0 版本开始的。而 Linux 软件几乎一旦写出就会立即发布,因此是从 0.1 版本开始的。这样的,真正需要这些功能的人就会马上得到它;感兴趣的开发者会来帮助改进代码,而整个社区都会关注接下来的发展情况。

如果菜鸟在使用 Linux 时遇到了困难,他会抱怨:这个软件没能满足我的需求,并且他认为他有权得到这样的满足。如果他得到这样带有讽刺性的回答:“如果我是你,我要求退款!”,他的情绪恐怕会更糟。

因此,为了避免这些问题,应做到:要记住,你并没有付给那些软件开发者或者在线帮你提供技术指导的人任何钱。他们并不欠你任何东西

子问题 B : 新用户 vs. 老用户

Linux 几乎是因黑客的业余爱好而诞生的。它的成长源于它吸引了更多志同道合的黑客们。Linux 在变得不只是一些极客(Geek),而是让任何人都能使用之前经历了相当长的时间。可以说 Linux“始于极客,馈于极客”。直至今日,大多数 Linux 的老用户仍自认为是极客。 这是件非常好的事情:如果你在硬件或软件方面有问题,存在一大群极客们不断寻找解决方案这个状况,这难道不好吗?

但 Linux 自它诞生以来,已经成长变化了很多。已经有了一些几乎任何人都能安装使用的发行版,甚至一些发行版可以运行于 CD 上并且可以完全自动检测并配置好各种硬件。当 Linux 开始因其无病毒和廉价的升级而吸引一些非发烧友用户时,两大用户阵营间就会出现矛盾,这很正常。但有一点应当明确:双方都没有恶意,仅仅是缺乏相互理解而已。

首先,你面临的是核心极客们仍然假设所有使用 Linux 的用户们都是极客或在向这方面发展。这即是说他们认为所有 Linux 用户都应当很了解计算机和 Linux,这导致了他人指责他们的一些行为是傲慢、自大和无礼的。其实,虽然有时确实如此,但大多时候却并非这样,只是“每个人都应该知道”这样的善意表达变成了“地球人都知道!”——大相径庭。

其次,你面临着从使用的商用操作系统转投而来的新用户,这些用户已习惯使用那些任何人拆箱就能用的软件。

这类问题起因于不同使用习惯的碰撞:第一类人沉醉于不断地按自己喜好改造自己的操作系统,而第二类人对操作系统怎么运行并不关心,只要它能运行就行了。

在乐高(Lego)玩具发生的类似的情况正好阐述这种问题。试想下面的情景:

  • 新用户(以下简称“新”):我想要一部新玩具汽车,每个人都因乐高汽车的好玩而着了迷。所以我也买了它,但当我到家后我才发现,我的盒子里只有积木和齿轮!我的车子在哪里?
  • 老用户(以下简称“老”):你应该用积木组装一辆车,这才是乐高的真谛。
  • 新:什么??我不知道应怎样拼装这台车子。我不是个机械师。我该怎么知道如何组装它?
  • 老:盒子里有使用手册。它上面写着拼装车子的步骤。你不用知道原理,只要按照按部就班就好。
  • 新:好吧,我找到了说明。这得花多久啊!为什么他们不能装好了再卖给我,还得让我自己动手??
  • 老:并不是所有人都满足于将乐高做成玩具车。这些积木可以被我们组成万物。这才是游戏的真谛。
  • 新:我仍旧不明白为什么厂商不能给我们这种想要车子的人一个成品,如果那些喜欢动手的人高兴可以自己拆了它阿。不管怎样,我还是将它组装起来了,尽管某些部件时不时地掉下来。我有什么方法可以解决吗?我能将它们粘起来吗?
  • 老:这就是乐高。他就是用来拆装的。这才是游戏的真谛。
  • 新:但我不希望总是拆拆装装,我仅仅希望一辆玩具车而已!
  • 老:呃,你到底是为什么要买乐高?

很明显,对那些只想要一辆玩具车的人来说,乐高并不是为他们准备的。上面的情景应该不会发生在你的生活中。乐高的价值在于你可以建造过程中体会乐趣而且你也可以将它组装成任何你想要的东西。如果你不想动手拼装,只能说乐高不适合你。这很容易理解。

由于长久以来一直关注 Linux 的老用户,同样的问题在 Linux 上越发明显:它是开源的、完全可定制的软件集。这才是真谛。如果你不想自己动手,为什么自找麻烦来用它呢?

与乐高出售成品玩具的做法略有相似,通过最近的一系列的成果提升了非黑客用户使用 Linux 的舒适性,这使得更广大的用户可以使用 Linux。也正因如此,你仍可以听到与上面相似的对话,程度也仅是略有不同。新用户抱怨那些老用户所谓的“基本特性”干吗要让我们看到,他们讨厌阅读手册后才能实现一些功能。对太多发行版本的抱怨,对软件过多配置选项的抱怨和对刚拿到的软件用起来不顺手的抱怨,不正如对乐高有太多模块的抱怨一样,忽略了它可以被用来按你想法拆装成事实吗?

因此,为了避免这个问题:请记住现在 Linux 的外表并不代表它的过去。Linux 社区最大的也是最关键的组成部分——黑客和开发者们,他们因 Linux 的可以按需定制而欢喜;他们也会为可定制能力的丧失因而神伤。

注: 极客:geek,词典中解释为因穿着不时尚和不懂得如何在社会中行事而作出一些怪事的人。现在指那些可以在电子和虚拟世界中非常有才华和想象力的发烧友。Geek宗教一般信仰科技或者颠覆科技。--chronmancer

问题四:为设计者而设计

在汽车工业中,你很难发现一个人既设计车辆引擎也设计车辆内饰:这需要完全不同的技能。没有人想要只是看起来可以跑得很快的引擎,同样也没有人想要做工出众但狭小且难看的车厢。基于同样的道理,在软件产业,用户界面(UI)往往不是由软件编程人员设计的。 但在 Linux 的世界却大不相同:一个项目往往是因个人的兴趣而产生。个人也包办了所有的工作,因此这些项目的界面往往缺乏了“用户友好” 的特性:用户对这个软件了如指掌,所以他也就不需要帮助文件等。vi 就是一个很好的例子,最初它的目标用户就是为那些了解它工作方式的人。因而设计者从来都没有想过如何用其他方式退出 vi ,所以新用户不得不靠重启计算机退出的事情时有发生。

但是,自由开源软件(FOSS,Free and Open Source Software)程序员与商用软件程序员的一个最重大区别在于, FOSS 程序员的作品都是他们自己想要使用的东西。这些作品新手用起来也许不舒服,但试想一下如果开发人员了解最终用户的需求,那这作品用起来一定很舒服。而实际情况确实如此,因为作者自己就是最终用户,他了解他自己(最终用户),因此该软件应该用起来很舒服。商用软件的程序员却大不相同,他们总是为其他人编写软件,而且这些用户都不是专家。

所以尽管 vi 拥有一个令新手望而生畏的界面,但它仍然在当今流行,这又归功于他的界面:当你熟悉后就会发现它原来无比强大。Firefox 也是被经常浏览网页的人编写出来的。GIMP 同样是出自经常处理图形文件的人之手。不胜枚举。

Linux 的界面对于新手而言同样的有些“难度”。尽管 vi 名声在外,但他仍然不在那些需要快速修改一些文件的新手的考虑之列。如果你在一个软件生命周期的早期使用它,打磨过的友好用户界面只会高挂在“计划”列表之上:主要功能肯定是先被实现的。没人先做个超级界面,再慢慢添加功能,程序员们都是先实现功能再不断改进界面。

所以,为了避免这个问题:你要么寻找那些以便于上手为目的而设计的软件,要么接受确实需要一个较长的磨合期来适应的软件。抱怨 vi 对新手不够友好只是舍本求末罢了。

问题五: “用户界面友好”的神话

在电脑世界里,“用户友好“指代非常广泛,甚至有一个不错的网络漫画就叫这个名字。但这个词却名不副实。

基本实现方法听起来似乎不错:软件的设计要从用户的想法和需要出发。实现的时候人们总是期望达到一个“最好”的界面,但事实并非想像的简单。

如果你一辈子都在做编辑文本文件的工作,理想的软件对你来说应当快速、强大,能让你以最少的操作来做最多的工作。简单的键盘快捷键和无需鼠标的操作将是最关键的需求。

但如果你很少编辑文本文件,只是要偶尔写一封信,那么你不会想着去学会那些键盘快捷键操作方法。排列有序的菜单和一目了然的工具栏图标就是你的理想环境。

很明显,你为第一个用户的需求所设计的软件并不适合与第二个用户,反之亦然。如此说来,若我们每个人都对软件有不一样的需求,那这些软件怎么能自称“用户友好”呢

简单来说:“用户友好”这个叫法并不妥当,只能让复杂的情况看上去变得简单一点而已。

那么“用户友好”到底是什么意思呢?好吧,从那些使用这个词的文章中来看,“用户友好”的软件实际上意味着“该软件对那些以前从未使用这个软件的用户们来说也不是那么难上手”。这样一来,只要跟自己用过的软件长的像,不管它是不是真的好用,都可以叫做“用户友好”。

子问题 A: 熟悉的就是友好的

所以在大多数被认为“用户友好”的文字编辑 和文字处理的系统中,你的剪切和复制使用Ctrl+XCtrl+C 来完成,这完全不直观, 但是每个人都习惯这些快捷键,所以这就被当作“友好的”快捷方式。

如果有人来到 vi 并且发现里面 D 是剪切,P 是粘贴,这将被当成是不友好的:因为这不是大多数人习惯的方式。

但这是更好的方式吗? 明显是的。

如果使用Ctrl+X的方法,你怎样从你当前正在编辑的文件中剪切一个单词?(没有鼠标的前提下!)

你必须从开头的字符开始,用Ctrl+Shift+来选择单词.

然後Ctrl+X把它剪切下来。

vi中的方式呢?用“dw”删除该单词即可。

如果要剪切 5个单词使用 Ctrl+X 方式会出现什么情况呢?

从开头的单词开始:

Ctrl+Shift+

Ctrl+Shift+

Ctrl+Shift+

Ctrl+Shift+

Ctrl+Shift+

Ctrl+X

要使用5个动作

在 vi 中的情况呢?

d5w

vi 方式实际上更通用和也更直观 。“X” 和 “V” 并不是能够直观记忆“Cut”和 “Paste” 命令的,反之 “dw” 对于 “delete”(删除) 和 P 对于 “Put it back”(贴回来) 更加直观,明显vi 是更好的。可是由于它不是大家所熟悉的,因此它被认为是不友好的。没有其他任何因素,纯粹的由于习惯使得 Windows 成为了更加友好的系统。根据问题一中我们得到的:Linux 有必要与 Windows 不同,因此不可避免,Linux 经常显得没有 Windows“友好”。

为了避免这个问题,你们要记住“友好”并不意味着习惯。试着用你的方式来做事,如果没有用的话,试着想想一个初学者会怎么做,然后你就知道了更简单的方法。

子问题 B:低效的就是友好的

这是一个可悲的但无法逃避的事实。似乎你把一个软件的功能埋的越深,它就看起来越友好。

这是因为友好性是通过在用户界面中使用简单、可视化的“线索”实现的——越多越好。毕竟,如果一个完全的计算机新手被放到一个所见即所得的字处理软件前并被要求把一些文本变成粗体,接下来很有可能:

  • 他会认为 "Ctrl+B" 是通常的方法。
  • 他会寻找线索,并尝试点击 "编辑" 菜单。如果不成功,他就会从接下来的一系列菜单中尝试比较像的那个:“格式”。新的菜单有一个看起来很有希望的“字体”选项。嗨!这里有我们想要的“粗体”选项。成功了!

下次你再做任何文字处理,都想试着通过菜单来完成每一件工作:不用快捷键,也不用工具栏图标。菜单就是一切。你会发现你比爬还慢,因为所有任务突然都需要大量击键/点击来完成。

这样使软件变得“用户友好”就像在自行车上装辅助轮一样:它让你能马上骑起来,不需要任何技巧和经验。这对一个初学者来说非常好。但是没有人会觉得所有的自行车都应该加上辅助轮销售。如果你今天得到这样的一辆自行车,我敢打赌你要做的第一件事就是除去这不必要的阻碍:一旦你知道怎样骑车了,辅助轮就没用了。

同样的道理,大量的 Linux 软件是设计成不带“辅助轮”(辅助工具)的——它是为已经有一些使用的基本技能的用户设计的。毕竟,没有人是永远的新手:无知是暂时的,知识是永远的。因此 Linux 软件其实是考虑到了用户中的多数的。

这听起来也许像是借口:毕竟,微软的 Word 有全部的友好菜单,并且有各种工具栏按钮, 而且有快捷键……它是世界上最棒的,对吗?既友好,又高效。

然而,我们必须透过表象看问题。首先,这个想法的可行性:让一个软件拥有菜单、工具栏、快捷方式等一切意味着大量的源代码编写,而没人为 Linux 开发者花费的时间付账;其次, 这样做依然没有真正考虑到那些高端用户:极少有专业的文字录入者使用微软的 Word。你见过哪个编程的人用 Word 吗?与此相比,想想有多少人用 emacs 和 vi。

为什么会这样?首先,这是因为正是某些“用户友好”的行为导致了低效:参看上面的“剪切和粘贴”的例子。其次,这还因为 Word 大部分的功能被放在了菜单里,因此你不得不使用菜单。只有某些最常见的功能可以作为按纽被放在屏幕上方的工具栏上。高级用户不得不花大量的时间来找到那些普通用户较少用到,但对高级用户来说依然很常用的的功能。

请记住,其实那些“辅助轮”在 Linux 软件中也同样有,通常作为可选的附加组件,尽管他们不是那么容易被发现,但实际通常都会有。

以 mplayer 播放器为例。你可以在终端输入 mplayer 视频文件名命令来播放视频文件。你可以使用方向键,PageUp、PageDown 键进行快进、后退等操作。这些可能还不能称之为完全的“用户友好”,但如果你在终端输入 gmplayer 视频文件名,你就会看到图形版的播放器,它同样拥有漂亮、友好的界面,熟悉的按钮。

再用从 CD 转换到 MP3(或 Ogg)为例:如果使用命令行, 你需要先使用 cdparanoia 命令把 CD 的内容录制为磁盘文件,然后你再需要一个编码器……这会是一个恶梦,就算你完完全全清楚如何使用 imho 包。所以,下载和安装 Grip 吧。这是一个容易使用的图形软件,自动的在背后使用 cdparanoia 命令和编码器,令你的转换过程变得简单,甚至支持 CDDB,能自动为你的档案命名。

同样发生在抓取 DVD 上:选择正确的编码是一场噩梦。但是使用 dvd::rip 软件,可以在一个任何人都能操作自如的图形界面中来完成整个编码过程。

因此避免这个问题:要记住“辅助轮”(辅助工具)仅作为 Linux 的扩展,而不是自动跟着主程序安装的。而且有时,“辅助轮”还不成为设计的一部分。

问题六:模仿 vs. 趋同

当人们发现 Linux 不是他们想要的 Windows 复制品时,经常争论一件事,就是坚持认为 Linux 一诞生,这(不成为Windows复制品)就是(或应该是)其努力的方向,而且那些不明白这一点的人错误地努力使 Linux 更像 Windows。由于这一点,他们展开激烈的争论:

Linux 已经从命令行时代进入了图形界面时代,这明显是在学 Windows。

不错的理论,但却是错误的:最初的 X 窗囗化系统(见附录)是于1984年发布,继承自1983年移植到 Unix 上的 W 窗口化系统。而 Windows 1.0 是在1985年才发布的。Windows 在1990年发布第三版之前并没有做大——那时,X 窗口化系统已经演化成我们今天使用的 X11 版本好几年了。Linux 在1991年才开始,所以 Linux 没有开发一个 GUI(图形用户界面)来模仿 Windows:它只是使用了一个在 Windows 出现之前就已经存在的 GUI。

Windows 3 的续作 Windows 95,带来了图形界面的革命性变化。在这以後很多年,微软都没能作出与此类似的创举。Windows 95 带来了多项创新的特性:拖放功能、任务栏等等。因而 Linux 借鉴了这些东西。

事实上……不是这样的。上述所有的特性在微软使用前就已经出现了。例如,NeXTSTeP(见附录介绍)是一个非常先进的图形用户界面(就当时而言),它明显早于 Win95 ──1989年发布了第一版,1995年发布了最后一版。

好吧,好吧,这样看来我们熟悉的“Windows 界面”,其实其中的元素并不是微软自己创造的。但它还是创造了一种整体界面,Linux 从那时起尝试模仿它。

为了反驳这一条,我们来讨论一下“趋同进化”的概念。它说的是:两个不同的、各自独立的系统随着时间的推移会逐渐变得类似。这种现象经常发生在生物学领域。举例来说:鲨鱼和海豚,他们都有着类似的背鳍、胸鳍和尾鳍,以及同样的流线型外形。

但是,鲨鱼是由鱼进化而来的,而海豚则是由陆地上某种四条腿的哺乳动物进化而来的。他们拥有类似外形,是由于他们都生活在同样的海洋环境中,他们必须朝最大效率适应海洋环境的方向进化。实际上不会有一幕这样的场景:未进化的海豚(相对的后来者)看到鲨鱼以后就开始想“哇,看看鲨鱼的鳍,它们非常有用。我也要这样进化一套自己的鳍!”

同样,如果先看早期的 Linux 桌面、FVWM 和 TWM 以及许多简陋的 GUI(图形用户界面),然後再看看今天的 Linux 桌面、Gnome 和 KDE,以及它们带有的任务栏、菜单、视觉效果。是的,不得不说现在的 Linux 比早期的更像 Windows 了。

另一方面,Windows也同样如此;我印象中 Windows 3.0 没有任务栏。那么开始菜单呢?什么是开始菜单?

Linux 过去没有任何桌面像今天的 Windows,微软过去也没有(一个像今天的 Windows 的桌面)。现在他们都有了,这说明什么问题呢?

这说明来自两个阵营的开发人员都在寻找提升GUI(图形用户界面)性能的方法,但是解决相同的问题可供选择的方法并不多,他们难免会使用类似的方法。类似并不能说明或暗指一方在模仿另一方。记住这一点,你就不会受到这个问题的困扰了。

问题七:FOSS──自由和开源

那么问题来了。自由开源是整个事情中一个很有意思并且相当重要,但却不是根本的部分。但是对于一些人看来,不过对于开源软件和专有软件之间的区别这个问题,对一些人来说实在是有些太宽泛而难以理解的。

我已经举了一些例子,人们认为他们有权要求技术支持和他们的东西。但是事实并不是这样。

微软的使命是“A computer on every desktop(让每个桌面上都有电脑)”——他们没有说出口的是每台电脑都运行着 Windows 。微软和苹果公司都销售操作系统,都尽他们最大的努力来保证尽可能多的人使用他们的产品:他们是来做生意,要赚钱的。

然而看看FOSS,直至今天,几乎完全是非商业性质的。

当你发电子邮件告诉我,Red Hat、Suse、Linspire ……是的,我知道他们在“销售” Linux。我知道他们都希望 Linux 被广泛的采用,特别是他们自己的版本。但是不要混淆提供商和制造商。Linux 内核不是被某个公司制造,不是由靠它获利的人来维护它。GNU 软件不是被某个公司制造,同样也不是由靠它们获利的人来维护。X11 视窗系统……好,当前最流行的实现方案是 xorg,“.org”的名字应该能告诉你想知道的(注:.org为非盈利组织)。桌面软件:好的。你提出一个例子,比如 KDE ,由于其基于的 Qt 是商业化的。(译者注:现在 Qt 已经不是商业化的了,是双重授权)。但是 Gnome、Fluxbox、Enlightenment 等等,都是非盈利的。确实有人销售 Linux,但是那只是极少数。

私有软件最终用户数量的增加可以直接变为制作公司的直接经济效益。对于 FOSS来说,并不是这样,使用人数的增加并不会产生直接的收益。非直接收益当然是有的:个人的自豪,更多发现 Bug(错误)的机会,更多可能得吸引新的开发者,可能有机会得到个好的工作,等等。

但是 Linus Torvalds( Linux 的创始人)并没有因 Linux 用户的增加而赚钱。Richard Stallman( GNU 创始人)也没有从 GNU 用户的增长中获利。所有运行 OpenBSD 和 OpenSSH 的服务器也没有放一分钱到 OpenBSD 项目的口袋中去。因此我们来到了在 Linux 和新用户之间最大的问题:

他们发现,他们不是 Linux 制造商请来的。

来到 Linux 之前,这些新用户使用的操作系统当中,最终用户的需求至高无上的,并且“用户友好性”和“以用户为中心” 被认为是第一位的。他们突然发现他们自己将要使用的操作系统仍然依赖于“man”文档、命令行、手动编辑的配置文件和 Google。而且当他们抱怨时,还没得到全方位的服务,也没得到什么承诺:被直接拒之门外。

当然是有些夸张了。但是确实,很多人像这样,以自己熟悉的方式来试着尝试 Linux,却遭到了失败。

从另一方面来说,FOSS 事实上是一种非常自私的发展方法:人们想工作的时候才工作,并且只做他们想做的工作。大部分人都不认为让 Linux 增加一些对没有经验的用户的吸引力有任何的必要:Linux 已经能做他们(设计者)想要它做的事情了,别人如果用不来,他们为何要在意呢?

FOSS 和 Internet 自身有很多相似的地方:你不需要付钱给一个网页(软件)的作者,就可以去下载和阅读(安装)它。对于已经有了宽带网(知道如何使用软件)的人们来说,全民安宽带(用户友好的界面)没什么吸引力。博客主人(软件开发者)不需要很多的读者(用户)来作为动力以继续写博客(编写软件)。 确实有许多人从中赚到许多钱,但不是靠通常的大多数生意的规矩:“这是我的,如果你想要,请付钱”;它是靠提供技术支持(电子商务)的服务来赚钱。

Linux 对市场份额不感兴趣。Linux 也没有客户。Linux 没有股东,也没有盈利的责任。Linux 不是为了赚钱而创造的。Linux 的目标不是成为地球上最流行和最普及的操作系统。

Linux 社区想要的是一种真正品质优良、充满特色、自由的操作系统。如果这使 Linux 最终成为一种非常流行的操作系统,那么非常好。如果这使 Linux 最终拥有直观的、用户友好的界面,那么也非常好。如果这使 Linux 最终成为一个数十亿美元的产业,那也非常好。

这仅仅是很好,但不是重点。重点是,让 Linux 成为社区能力范围之内的最好的操作系统。不是为了别人:为了社区自己。如此普遍关于“除非 Linux 如此这样,否则永远不会占领桌面”的威胁论是不恰当的:Linux 社区没有尝试占领桌面。他们完全不关心它是否能够好到进驻你这个新用户的桌面上,只要在他们自己的桌面上运行的够好就行了。 高呼憎恨微软的人,深度Linux 的狂热者,靠FOSS赚钱的人或许会在这里站出来说两句,但他们仍然只是少数。

这就是 Linux 社区的目标:一种能够被任何想要它的人安装的操作系统。所以如果你在考虑转向 Linux。首先,问你自己,什么是你真正想要的。

如果你想要一种操作系统,就像一辆汽车,没有雇来的司机,给你把钥匙,让你自己做在驾驶员的位置上,并且希望你知道该做什么:用 Linux吧。你得花些时间去学习如何使用它,但是一旦你学会了,你将拥有一个让人着迷的操作系统。

如果你只是想要没有恶意软件和安全问题的 Windows:阅读一些安全方面的资料,安装好的防火墙,恶意软件检测工具和杀毒软件;用一个更安全的浏览器替换 IE ;保持安装最新的安全更新。有人(包括我自己)使用 Windows 从 3.1 到 XP,从来不曾被病毒或者恶意软件感染,你也能做到。不要用 Linux,它不会成为你想要它的那个样子。

如果你想要一种基于 Unix 的操作系统的安全性和性能,以及客户至上和世界著名的界面:购买苹果公司的 Mac 电脑。Mac OS X是不错的。但是不要用 Linux:它不会做你想要它做的。(译者注:目前 Linux 上的 Compiz 已经成为最花哨的窗口管理器了。)

问题不仅仅是“为什么我想要 Linux?”。还有“为什么 Linux 想要我?”