道理人人有,就看怎么说
2011-03-22 20:50 by 老赵, 8286 visits前几天猛鸟兄(@raptorz)作为在使用Mac OS X时跌了个跟头,他之前是长期的Ubuntu用户,最近也买了台Mac。情况是这样的:OS X在文件夹复制(包括移动)的时候,如果目标地方也出现了同名文件夹,则OS X的策略是“替换(Replace)”,而Windows和*nix下cp命令的策略则是“合并(Merge)”。前者相当于完全删除了重名文件夹,而后者则是把其中的文件合并。对于习惯了后者的人来说,一没看清楚前者的提示,于是就丢失文件了。我当时也遇到过这情况,不过估计猛鸟兄不如我能忍,于是在吐槽推里fuck了乔教主,果不其然引发了各方争论。今天丁宇同学将他的观点(@felixding)整理为一篇文章,表示OS X的做法更合理,对于这个说法我不敢苟同。现在先提一下这个问题,再引出真正想说的内容。
丁宇同学的主要观点就是:OS X的做法更符合“文件夹”这个概念在现实中的隐喻,在这方面用户是给微软带坏了(完整内容请阅读原文):
相比Win,Mac桌面的隐喻是非常贴近现实世界和统一的。比如刚才说的文件夹替换的问题,在现实世界中要替换两个文件夹的话,是把旧的拿走把新的放这,谁也不会预期说把新的往桌子上一放,结果啪的一下它里面又出现了旧的文件吧!喔,很不幸,ms的工程师认为世界应该是这样神奇的。
而我的看法简单来说是:软件系统不应该以“符合现实隐喻”为尊,Windows的做法更好用,也并没有什么问题:
还是就看你愿意怎么去解释,容我也来解释一番。
你说Mac的文件夹“替换”方式是“符合现实隐喻”,但什么时候开始计算机系统设计时就以这点为尊了呢?现实世界不是“没有”文件夹的合并操作,也并非“不需要”合并,而是“合并”的代价太高。但是,操作系统完全有能力快速地完成“合并”操作,这就是计算机辅助人类工作,改进人类生活啊,为什么非要符合现实世界里低效率的“人肉”工作方式?
Unix下的cp也是合并,说明这个策略是被人广泛接受的,更早于Mac的出现。Win在出现重名文件夹的时候,策略是“合并”,也是符合比Mac更早的传统。更何况,Windows也根本没说它在“替换”,“合并”写的清清楚楚明明白白,并非打着“替换”的旗号做“合并”的事情,这只是Windows所选择的策略而已。
再者,在Windows里如果想要实现你要的“替换”,删除目标文件夹,再复制过去即可。而在Mac下要实现“合并”,几乎就是如现实一样,人力不可为了。所以在我看来,Windows的策略弹性更大。
所以,你说这点Windows带坏用户,我不敢苟同。
好,那么您说,我和他的说法哪个是有问题的?我觉得都可以说的过去,而且都可以继续往下说。每个人都是聪明人,每个人也都有自己的道理,这就是互联网上各种争论的来源,说着说着谁一个不小心就变味成了“争吵”(惭愧地说有时连我也不能例外)。
这样的例子还可以举好多。例如,人类的适应能力是很强的,刚上手时感觉各种不好用的软件,如果坚持用过一段时间也会习惯,甚至切换回之前使用的软件也会觉得碍手碍脚。于是支持方会说:“看这软件多好用,之前的做法都不习惯了”,反对方会说“这软件真难用,好难上手”。谁对?谁错?更关键的是,谁能有力地证明自己的观点,而不是讲大道理?要知道,正反这两种说法都是有一定道理的。人类就是那么矛盾而变态的东西,否则也不会有斯德哥尔摩综合症这种心理问题了。
其实,如果能把问题从两个方面说清楚,这也是讨论的魅力所在。但现实中有个问题是,在许多情况下我们能够让别人相信自己是完全中立的,自己也很难保持没有偏向性——《美国宪政历程》里提到某首席大法官,为了保持不受社会舆论影响而坚持不看报纸,这实在不是件容易的事情。尤其是对于“用户体验”,“产品设计”这种难以道明的东西,可谓“人人都是产品经理”。现在好多时候在我看来充斥着“事后诸葛”、“成王败寇”的道道,搞得跟很多成功学一样,让我接受不了,能躲即躲。
更关键的是,因为大伙都是聪明人,一件事情正说反说都有一定道理,于是人们很容易选择有利于自己一方选择“论据”,正所谓“你讲道理我跟你摆事实,你摆事实我跟你讲道理”,在实际情况下,上面提到的“好用”和“难上手”两派在“合适的时机”都会选择对方的思维方式,而且这种“切换”也可以很有道理,叫做“就事论事”,您又能奈我何。
当然,即便我懒得搞这种正说反说,也不代表我就支持中间派(显然也不代表我反对中间派),更不代表我没有自己的看法。比如我对于PHP的观点。昨天正好又有关于Rails和PHP的讨论,于是我也正好拿它作例子。我对PHP的看法是:Quick and Dirty,随便找个人来就能写点代码,再加上历史积淀,可谓是最最流行的Web开发技术,没有之一。说的好听点,PHP叫做有着“辉煌的大尾巴”,难听点叫作“又臭又硬”。我一直强调要打开视野,但如果要我推荐,我不会推荐别人去学习PHP,即便工作上要使用PHP,我也建议去学习Ruby,Python平台上更有“文化”,更为“优雅”,开发效率更高的Web框架。有些人的理由就是,PHP社区更大,更流行,搜索引擎上的记录更多,某某排名都更高,怎么可能不是更好呢?要我看来,这种靠市场“成王败寇”的判断方式,我就根本不会认同,例如认可这种观点的同学,您认为“Windows比Mac OS要优秀十几倍”吗?要我说,这些还都是PHP的“历史优势”,不能直接说它在各方面就多么多么好了,你想说它哪方面好,还得有针对性的说清楚。而且话说回来,比尔盖茨如今560亿美元身价不可不谓之成功,但也没说陈天桥12亿美元这样的“零头身价”就变成“失败”,就不能做为榜样了。换言之,Rails等平台的质量足以受人推崇,足以干些了不起的事情了。引霍炬同学(@virushuo)的一句话(完整内容在此),道理正是如此:
寻找ruby开发的“top项目”没意义。DHH和37s创造的都不是适合所有人的产品,他们只愿意在某一领域做到最好。不是所有人都有兴趣创造亿级别产品,何况也没几个人真能做成。对大部分项目,千万是一个很好的级别,那是ror最佳实践领域。
同样,JavaEye的站长范凯同学(@robbinfan)也提到了JavaEye的近况:
JavaEye的PV到了140万了,一年前才100万出头,增长算不错的。仍然是单台Web服务器,Rails处理动态请求超过340万,除了真实用户访问,还有API,RSS以及很多爬虫的请求。看JE的alexa排名,CN排92名,全球790名,其实需要屠龙术的网站并不多。
此外他还谈了其他一些话题,例如PHP和Rails程序员的培训和招聘等等,其中也谈到前来面试的PHP程序员很多基本功不过关,和某同学一直坚持认为“PHP程序员老nb,ASP.NET程序员啥都不懂”颇有出入。同样,还有人老说.NET产品作不大,其实您先超过StackOverflow再说吧,到那时您已经相当成功了,像MySpace什么就先不提了。
好象有点谈远了,再把话题扯回来:JavaScript在浏览器端处于垄断地位,是因为它有多么优秀吗?我觉得明显是因为用户没有第二选择嘛。当然我也没说JavaScript不好,只是正确的命题一定要用正确的论据来证明——好累,这句话本身应该是不言自明的,不是么?
总之,所谓正反、对错、好坏、优劣……好多情况下就看您想怎么说。也正因为如此,我越来越懒得讨论这方面话题,除非心情特别好或是有人非要前来挑逗。但是久而久之,搞得我都有些虚无了,例如,现在除非是我上手就觉得好用(比如Mac触摸板的二指控制滚动条),否则您说其他一些东西的体验有多么多么好或是设计有多么多么合理(例如OS X Lion上的二指控制突然与之前方向相反了),我都会懒得去相信。当然,我个人觉得自己还是比较容易被说服的,例如有人提到了一篇文章:《理念的缺失:Windows 7任务栏 vs. OS X Dock》,就一下子就让我高潮了。尽管我在这方面的能力还远不能跟他有所呼应,甚至,即使他是在骗人我也发现不了,但我就是愿意相信他的说法。就像有人在推上发发私信能跟女生上床,有人只能招人厌恶。
最后,比如PHP什么的又碰到了您的G点,轻请拍。我懒。
广告时间:nBazaar技术交流会即将举办第四届活动。为了便于组织或活动通知,我们申请了官方的Google群组服务。该群组的作用只是为了联系和通知,活动的具体信息和资料发布依然会使用http://nbazaar.org/。我们已经向历届活动的报名者发出了邀请,请查收邮件(包括垃圾箱)。不过由于众所周知的原因,您可能无法接受该邀请,我们也在设法直接添加成员,只苦于Google群组的每日限制。此外,第四节活动还有一个讲师席位正虚位以待,如果您有这方面的意愿,或者对邮件列表有任何疑问,请发邮件至。
第四届 大概4月什么时候呢? 已定的讲座是什么内容呢?