效率与良质

最近提交的代码review,有好几处被老大点出了缺点,其实也不是很隐蔽或很难发现的问题,一说我就知道问题在哪里了。仔细一想还是提交代码之前思考不足,更准确地说是:懒于思考,侥幸心态。很多时候,前一天觉得万无一失的代码,第二天就发现:怎么可以这么写,明明有问题嘛(捂脸)。

以前我发现心情不好的时候与心情很好的时候,脑子里的想法是完全不一样的,所以一旦心情不太好时我便倾向于不思考,而尝试做一些无需动脑及时享乐的事情。现在应该再加上一条:如果精神状态不佳(没有思路)的时候也应该停下来休息休息,因为此时的思考效率是极其低下的,而且有很多时候甚至是错误的,且如果再继续下去往后会付出更大的代价 – 相当于给自己挖坑。一个低效率的程序员的一天很可能是这样度过的:上午写代码,下午修复上午代码的bug…

从这点讲:效率是良质的前提。如果没有高效率(伴随着活跃的大脑思维状态)很难创造出高质量的作品。所以,对于创作者而言,最重要的其实是:睡眠。保持一个良好的精神状态才有可能产生出高效率,从而才能创造良质的东西。

(完)

发展的眼光看问题

今天学习Apache的请求处理过程时,看到了这句话:’The major innovation in Apache 2 that transforms it from a ‘mere’ webserver (like Apache 1.3 and others) into a powerful applications platform is the filter chain. ‘大意是Apache服务器2.0与1.*相比,发生了巨大的变化,变化大到自身的性质与定位也有所改变。所以以前对于Apache的定义(just content generator web server)已经不适用了,需要扩展,人家现在可是一个功能强大的applications platform了。

很多概念、定义都在发生变化,这才有了定义的广义与狭义之分。曾经关于编译型语言与解释性语言区别的问题,和很多人激烈地讨论过,知乎上也有类似的帖子,反正就是大家都觉的自己对。我的观点是坚持最原始的关于编译与解释的定义,现在想想当初看待问题的方式太过静止化,有点狭隘。编程语言始终在不断发展,新的编程语言层出不穷,旧的编程语言不断丰富、优化(嗯也有变『坏』的),当初的那种定义已不再适应了,需要跟随着变化而变化。正确的做法应是把它从开始到发展至今的历史全都了解过一遍了才可下当前的结论,否则就是盲人摸象,只见局部 ,必然有失偏颇。

万物皆如此,一切都在发展变化中。

变化是客观规律:我们在变化

按照物理学的观点:物质是由粒子构成的,而粒子是不断运动的,因此物质是绝对运动的。即任何事情无时无刻不在发展变化。环境在变化、组织机构在变化、人也在变化。道理很简单,大家也都『明白』,但是真正看待事物、分析问题的时候往往忽略了这一点。从过去到现在再到未来,一件事情、一种事物、一个人,都会不断发生变化,只是有的变化大有点变化小。这也就是为什么需要从历史发展的角度看待事情。当初那个调皮捣蛋不爱学习的小胖同学可能早已不是当年的『吴下阿蒙』;曾经叱咤校园风云的高考省状元也可能现在变得如你我一样平凡普通。

变化是必然:我们需要变化

按照进化论的观点:在面对激烈的竞争环境时,那些拒绝改变、不思进取的事物等待它们的只有被淘汰的命运。创业公司就是一个很好的例子,最初Facebook只是一个美女打分的校园网站,现在已然发展成一家SNS巨头。同时创始人也需要跟随公司不断成长变化,否则现在Facebook现在的CEO就不是扎克伯格了(Google、腾讯、阿里皆如此)。而那些无法跟随时代趋势而变的公司只有在竞争中被遗弃,如诺基亚、柯达,同时即使公司在发展中胜出如果创始人跟随不了这种变化也会被淘汰出局,如雅虎以及那些被出局(董事局)的CTO和CEO们。

虽然我坚持『术业有专攻』(一门编程语言从诞生之初基本就决定了它的使命),故,不看好一些编程语言往大而全的方向发展,由于环境也好,由于人心也罢,但现状就是如此,可不以『我』的意志为转移。它『变』了你可以选择不用,但是那个真实的它已经不是原来的它,这和你眼中的它以及你用与不用没关系

(完)

Worse Is Better思想的发展史

从历史的发展的角度看问题才能接近问题的真相。

本文主要翻译自Richard P. Gabriel对于Worse is Better思想发展的自述。

原文链接:http://www.dreamsongs.com/WorseIsBetter.html

下面基本为原文的翻译,只是根据时间节点选取了较为关键的节点。文中的『我』皆指作者Richard本人。如果是本文的观点则会添加上『译者注』字样。

1984-1994年我经营了一家叫做Lucid的Lisp公司。(译者注:Lisp是一门函数式编程语言,著名的Hacknews网站就是用它编写的)

1989年,很明显的是Lisp的生意并不是很成功,部分原因是很多AI(译者注:全称Artificial Intelligence,人工智能)公司举步维艰,其他则是因为那些AI公司开始将他们的失败归咎于Lisp及其实现。

1989年春,我和一群黑客坐在Lucid的拱门处闲聊,有人问我为什么我认为人们相信C和Unix比Lisp更好,我开玩笑的说到:因为Worse is Better呀。当时大家哄堂大笑,然后我试着关于『为什么一些蹩脚的事情可能是好的』做出了一些解释。

1989年夏(几个月后),一场小型的欧洲Lisp应用程序大会邀请我做一个演讲,可能是因为Lucid是当时优秀的Lisp公司。当时的演讲题目是:Lisp:Good News,Bad News,How to win Big。其中第二部分第一小结的主题便是:the rise of worse is better

1990年3月,我在剑桥大学也做了一场这样的演讲,当时会场引起了一些批评之声。那时的互联网还是刚刚起步,传播速度还比较慢,所以并没有引起什么轩然大波。

1991年,公司雇了一个叫做Jamie Zawinski的年轻男孩,不到20岁的他被Scott Fahlman(译者注:Scott Fahlman是Lucid联合创始人,卡内基梅隆大学计算机科学家,被公认为Common Lisp业内领袖)高度赞扬,我们都叫他小孩。他当时并无恶意,只是查阅一些相关同事的资料,然后看到了我的EuroPAL会议的论文,然后他把Worse is Better的这些想法发送给了Richard Stallman(译者注:Richard Stallman是GNU工程的发起者以及自由软件基金会的创立者,著名黑客,神一样的人物…)。而且JWZ还将论文的Worse is Better部分加密发送给了他在CMU的朋友,而他们又将它发给了他们在贝尔实验室的朋友,后者有发给了他们的朋友….(译者注:如果那会儿有朋友圈,那绝对是「爆款」的典范)

不久后,我收到了十几封请求论文稿件的邮件。有几家大公司(其中有DEC、HP和IBM)要求我授权这篇论文作为他们软件工程思想的一部分。

1991年7月,AI Expert杂志重新出版了我的论文,在美国获得了大量的订阅。

1991年冬,我用化名(Nicolas Bourbaki)写了一篇名为Worse Is Better Is Worse的论文,这篇论文是以模仿我的发小和同事的口吻写的,在文章中批评了我自己的观点,并试图站在朋友道义的角度上,纠正自己的思想。

1992年秋,我在面向对象编程期刊(JOOP)出版了一篇反驳性社论文章:Is Worse Really Better,改编自我的Worse Is Better Is Worse论文。由于之前我让公司同事review过初稿,所以他们有点担心来自业界的非议,其中有一位同事非常不安,深怕我患上了精神病….

九十年代中期,我成为了一名管理咨询顾问,开始对worse is better为什么有效果很感兴趣,于是我阅读了很多经济学与生物学书籍,试着去理解经济系统中发生的进化。后来,将大部分学习到的这方面知识汇集到了一次presentation的keynote上,名字叫做:Software Acceptance:How Winners Win。另外一部分则加到了我的论文书籍,Patterns of Software: Tales from the Software Community,作为其中一个章节:Money Through Innovation Reconsiderd

你可能会想,经过十年的思考与讲演,不断的推到重来不断的更新进化,我对worse is better的观点已经毋庸置疑了(译者注:作者写这篇文章是2000年)。其实不然…,在2000年的OOPSLA(面向对象技术的高峰会议)年度会议上,我安排在一个名为『Back to the Future: Is Worse (still) Better ?』的专门小组(panel),准备期间,panel的组织者Martine Devos让我起草一篇意见书(position paper),于是我写了一篇公然反对的worse is better思想的短文:Back to the Future: Is Worse (still) Better

但是几个月后,我又写了一篇:Back to the Future:Worse (still) is Better!用于支持worse is better的观点。是的,我仍无法决定。于是Martine把这两篇短文合成了一份,作为panel的意见书。按照例行,panel的讨论期间出席者通常会从worse is better的支持方转向会议桌的另一侧:反对方。那天早上我坐在观众席上,几乎也是声嘶力竭的和他们撕逼。我想正是因为大家对于『Worse is Better』的冒险精神、开明以及反驳的态度,才使得优秀成为可能(译者注:此句翻译较为笨拙,为不丢失原意,这里给出原文:risk-taking and a willingness to open one’s eyes to new possibilities and a rejection of worse-is-better make an environment where excellence is possible)。

翻译完。

看完这些你可能会觉得作者Richard作为一名技术圈内名人,思想竟是如此摇摆不定。但我却深深地被他对于技术的严谨与对真理的孜孜追求所感动。其实每一次思想的转变不是对上一次的否定,而是经过思考、学习之后的更新优化,是更进一步。为了更加接近真理,他丝毫不顾所谓的「面子」,毫不犹豫的反对自己过去的观点,如此做学问的心态值得学习。

(完)

The Rise of Worse Is Better 论文-学习笔记

《The Rise of Worse Is Better》是计算机科学界经典的议论文,作者是Lisp和Emacs圈子里的名人Richard Gabriel,他也是ACM Fellow。Worse Is Better软件思想正是起源于此,它的主要思想是:编程语言或者软件系统的简洁性(Worse,功能少+简单+实现容易)往往会比那些大而全、功能复杂的要好(Better)。

作者指出,软件设计中存在两种设计哲学:

  • MIT/Stanford Style,做科学研究的风格,do the right things,完美大而全、一次正确,代表作品:Emacs、Common Lisp。
  • New Jersey Style,做工程技术的风格,worse is better,先保持实现简单推出部分功能,而后在发展中迭代进化出更好更多的功能,代表作品:Unix和C语言。

这两种实则是学院派与实践排之争,有点类似于朱子理学与阳明心学。

在讲二者的区别之前,先来看下作者提到的软件设计的四大原则:

  • 简单性,Simplicity,软件设计必须简单,包括实现与接口。
  • 正确性,Correctness,在解决问题的各个方面,软件设计必须正确。
  • 一致性,Consistency,软件设计不能前后矛盾不一致。
  • 完备性,Completeness,软件设计必须要尽可能多地覆盖事件中的重要场景。

MIT Style与New Jersey Style设计风格的区别仅在于对待这四项原则的优先级与重要程度不同。

  • MIT Style:正确性/一致性 》 完整性》简单(接口》实现)。
  • New Jersey Style:简单(实现》接口)》正确性》完整性》一致性。

Worse is Better哲学(New Jersey Style)中:实现简单具有最高优先级。 开始只有简单才有利于其快速传播,传播开来后逐渐优化并增加更多功能。要做到『Win』,总结起来可以分为下面三个步骤

  • First:获得用户认可接受
  • Second:让用户保持少的期待
  • Third:持续改进接近the right thing

正如原文所言:

The lesson to be learned from this is that it is often undesirable to go for the right thing first. It is better to get half of the right thing available so that it spreads like a virus. Once people area hooked on it, take the time to improve it to 90% of the right thing.

这是不是与YC创投公司的理念如出一辙?

:由于用词(Worse)比较激进(按照作者的话说来,他采用worse一词是夸张的手法,为的是引起人们对这种观点的重视,但『话糙理不糙』),这篇论文在当时引起了业界不少反对的声音,也激起了关于更好地的软件设计风格的讨论。

后续:由于这篇论文在当时影响甚广,已经出现了很多对作者本意有误解、曲解(不要觉得外媒就不会有标题党。。)的评论,同时人的想法也不是一成不变的,都在不断的学习、进步,观点也在不断修正,作者对待worse is better思想的看法也发送了一些改变(本质上是优化了),所以讨论一直存在。详细内容可见:Worse Is Better思想的发展史 一文。

(完)

 

思考之锚

锚,对每个人来说并不陌生,是一种铁制的停船器具,用铁链连在船上,抛在水底或岸上,可以使船停稳。即锚使得水上漂浮不定的船只可以有个着力点,从而稳定下来,所以船只靠岸时均需要抛锚。

如果将漂泊的船寻找稳定的停靠比作是思考问题寻求解决方案,即可知:思考问题也一样,在找到最终的答案之前,必须有个清晰明确的着力处 – 锚。而后一切的思考内容、判断依据、决策制定、行动方针均是围绕这个『锚』为中心来展开,它是中心目标,指明方向。

随着一个人的不断成长、学习、经历,环境会潜移默化地在他心中抛下一个『锚』。这是他思想的武器,是他行动的指南。

有的人的思考之锚是道德,那么每当遇到问题时,他则会占领道德的制高点,然后据此居高临下开始道德判决:一切符合道德观念的都是正确的或应该的;一切有悖道德的都是错误的或不应该的。此类的极端表现便是道德婊。

有的人的思考之锚是理性,客观规律与科学依据是他思考的唯一武器,任何事情须以事实为基础,以数据为支撑,如果有个数学公式的证明那就再好不过了。他们仿佛没有情感亦无需情感,赛先生是唯一的信仰,他们始终相信自己掌握着绝对真理,一切违反于此的皆愚昧之不可救药。

还有的人的思考之锚是利益,唯利是图是他最大的动力。小孩子才分对错,他们只讲利益,在他们看来,没有永远的朋友只有永远的利益。当获利成为唯一目标,其他任何必要时皆可成为一种手段。与道德婊比起来,利益婊们通常讲究的是『闷声发大财』。虽然可能为他人所不屑,甚至会遭遇误解,但是现实中他们似乎总能赢。

当然,以上三种类型都是人性的极端表现,我们每个人或多或少三者皆有之,只是程度不一。如果把这三种思考之锚比作是三角形的三个顶点的话,那么人的思考范围即为三角形的面积之和,而实际的思考之锚终将抛向何处,不同的场景不同的人可能有不同的回答。

(完)

解决问题的两种方法

开门见山,先给论点。

解决问题无外乎两种途径:真正解决与治愈人心。

任何理性存在的客观事物一旦融入了人的因素即会变得不再客观或者说不再纯粹的客观。我们每天遇到的亟需解决的问题归根结底还是与人有关的问题。所以,在遇到问题寻求解决办法的时候大体有两个方向可寻:一真正地解决问题 – 治本,二让人们感受到解决了问题 – 治标。前者是彻底把问题解决,理论上该问题不会再出现了,“解决”二子受之无愧;后者表现效果上看似解决了问题,本质上并没有解决问题只是暂时将问题缓解,让遇到问题的人情绪上得到宽慰,并以为问题得到了解决,但其实问题还在,这类似于心灵鸡汤式的治愈。

虽然治愈式的处理问题并没有真正解决问题的根源,但是它可以让抚慰人心,让人们遇到问题需要解决的时候,有所寄托,所以其不失为一种有效的解决问题的方法。有些问题可以解决有些问题却只能治愈。因为现实生活中并不是所有的问题都能得到解决,也并不是所有问题都需要得到解决,这时候就需要治愈,不高明但有效。

这里可以举两颗栗子:

场景1:当女朋友向你抱怨她所遇到的问题时,你第一时间千万别想着怎么解决她的问题,而是耐心认真地倾听,然后再温柔地抚慰,这应该她所需要的。因为女生很多时候要的是情绪的表达,而并不是解决问题,所以作为木讷的理工男,此处需要时刻牢记务必将平日里『解决问题式的』思维方式切换成『治愈式』模式。想想网上那些拥有太多逻辑漏洞、思维陷进、三观不正的文章为什么还能成为热文,让大家竞相追捧,实乃情感共鸣引起的心灵治愈(如逻辑思维、咪蒙等),这其实是一种治愈式解决问题的极端:它甚至对问题没有起到缓解作用,完全是情感的宣泄。固然人们需要给内心深处积蓄的情感一个出口,但本质上是这会让懒于思考的我们陷入一种幻觉或落入一种人性的思维陷进。不可长久,属于下下策,长远看来,无益于进步而有害。这里仅用于说明治愈对于人心的巨大作用。

场景2:作为一名码农,每天需要编程解决各种各样的业务问题。所以必然有某些问题无法及时得到解决,这会不妨采用治愈式的解决办法,至少达到一种解决的效果,为真正解决问题赢取更多的时间(具体例子详见:解决问题的另一种方法)。

当然,治愈式地解决问题,也有其明显的缺点:容易本末倒置。

比如,很多创业公司一旦上市,极大可能地转变为完全KPI驱动的商业公司,从而丧失成为一家伟大公司的可能性,美其名曰:市场经济。其实是一种短视。这会让创业过程中积累起来的解决问题的激情、提供美好服务的愿景慢慢消磨殆尽。不可否认,资本市场,逐利是第一要义。但利是结果,不是原因,更不是初衷。哦对了,不排除一心只为赚钱的『创业』,只是我会把这类活动叫做是做买卖而不是创业。

试想,公司为什么能赚钱?必然是满足了人们某种需求向人们提供了某种服务归根结底是解决了人们遇到的某种问题。所以想要继续赚钱或赚更多的钱那么怎么办向用户提供更好的服务而不是完成KPI,增加收入这个治愈性的目的。当一家公司向用户提供了更加优质的服务,其必然会获得丰厚的盈利。这类似于一个人如果一味地追求成功那么他则难以大成;『如果他始终追求卓越,那么成功自然会追随者他』。

总结一下,解决问题大致可以诉诸于两种途径:真正解决当前问题和治愈当前遇到问题的人心。当遇到问题时,可以采取前者,可以采取后者,也可以二者并用之(一般是先治愈后解决),至于采用何种策略,具体场景具体分析。策略的灵活之处便在于可以因时、因地制宜。

(完)

 

解决问题的另一种方法

通常遇到问题要探究其原因找到原因后对症下药即可药到病除。

不过今天get到了另一种解决问题的思路从目标效果出发可寻找达到同一效果的其他解决方法当满足了效果时把整个问题系统看成是黑盒的话也即是解决了问题。这种技能特别适用于短时间无法定位到问题的真正原因的情况不妨称之为有损解决方案。不高明但是有效果。

举个?

比如你要看个好莱坞大片但是电脑里的百度影音找不到匹配的字幕网上搜了一圈后仍未果。此时不妨换个播放器下载一个QQ影音自动匹配在线匹配字幕完美解决。

当然如果你对百度影音为什么找不到你想要的字幕或者对字幕查找感兴趣完全可以在看片这个紧急需求之后再详细研究。

再来一颗?

如何让运动的物体静止下来

至少有三种方法

1.让它的速度为零

2.让它的运动频率超过你眼睛的最大分辨率

3.让它和你保持同样的速度

此文写于2015年5月26日。当时苦于一业务问题无法找到解决办法,而后受到Bug同学的启发所著。今天又思考到与此相关的问题,所以有必要记录一下,方便链接与查阅。

(完)

这个产品有点上瘾

如果你问我最近手机上耗时最多的app是哪款?我会毫不犹豫的告诉你:微信读书。这其实是我第二次使用微信读书,书架上也不足10本书,但这次的阅读体验似乎让人欲罢不能,有种上瘾的感觉:近期它完全占据了我所有的碎片化时间(走路、等待红绿灯、公交上、地铁上、卫生间、用餐间隙…),甚至有时是工作、睡眠时间,以至于常规的阅读计划完全被打乱。

1、初体验

是的,从没有哪一款产品可以让我这种拥有『坚强』意志力和『高尚』情操的家伙缴械投降屈服于这所谓的人性的『瘾』,然而微信读书它做到了。第一次接触到这款app的时候,只是帮助WYJ同学参与一个微信读书『赠一得一』的活动,顺便注册了下,大体上过了一遍整个流程。第一眼印象深刻的是它直观的UI设计,白色背景搭配黑色字体十分简洁。微信读书的基本思路是读书+社交(腾讯的优势所在),正如它所的slogan那样:让阅读不在孤独。一直以来,不管我们是在宏大的图书馆一脚还是咖啡店的安静一隅,我们所理解的阅读都始终是一个人的事情,似乎这种需要专注思考的思维活动注定是孤独的旅程。

记得,去年年初的时候,线上参加过一次李笑来老师组织的YC课程学习,并记录下了所有的课程笔记,受益匪浅的不仅是精彩的课程内容,还认识了一些志同道合的陌生人,似乎以前孤独前行的路上多了一些互相搀扶的战友。课程结束后,我就在思考这种基于兴趣的自发式互帮互助的学习小组,脑洞了一些关于聚焦兴趣的主题社区的一些垂直产品,如突出学习,垂直到书籍,即如果读一本书(如李笑来老师的《把时间当做朋友》),则所有对该书该兴趣的读者可以形成一个小组,对书中的内容交流自己的看法与思考结果,这样你每看一本书你都能遇见一千多位与你兴趣相同的哈姆雷特(想想都会觉得兴奋)。所以,当第一次登陆微信读书的界面,我隐约感觉它说出了我的心声(嗯,我就是这么臭不要脸:)),但无奈当初WYJ推荐的那本书质量略低,一瞬间的激动心情突然就变得索然无味,于是阅读了几页之后便弃之。

2、再相遇

从此,微信阅读躺在我手机里沉睡了一阵,直到一次偶然的机会又重新打开了它。确切来说,这次的『上瘾』与读的数目有些很大关联:最近正在读的有《硅谷钢铁侠》和罗素的《西方哲学简史》,一个是天才传记一个是大师所著,两本书的质量都很高以至于让毫无防备的我完全沦陷。下面是我觉得它富有温度打动人心几个方面:

1)有效且良心的激励制度:时长兑书币+时长排名。基本上如果你每周保持一定时长的阅读则可以继续免费的读下去(当然读书获取知识不应该介意金钱,但如果产品有则说明它的一种态度和情怀)。
2)阅读进度的实时反馈:当前的阅读进度(时长、比例以及页数)一目了然。它会想一个教练一样,积极给予你的阅读行动以有效反馈,让你觉得你始终在前进。
3)人性化的交互设计:一些常用的翻页、标记、字典、返回等阅读操作完全符合『don’t make me think』式的设计,一个新注册的用户根本感觉不到自己是第一次在使用它,一切是如此自然而流畅。
4)独一无二的社交元素:这是与其他阅读产品最不同,最重要,也是腾讯最擅长的一块。微信社交链的引入让原本一个人的思考活动变成了集体的思维碰撞。在这里你可以看到微信好友以及陌生人的书籍、阅读、评论等多个维度的相关状态;如果哪一句内容引发深思可以随时评论或记录思考,如果哪一句评论精彩绝伦也可以随时交流,甚至如果哪一句心存疑问可以随时请教『路』过的高人。有一次在读《西方哲学简史》时遇到一个哲学概念不懂而在评论除留下问题时,结果不到几分钟就收到了『路人』的回复,我记得当时都激动地尖叫了起来(结果正前方不知所措的室友回敬了我一个懵逼的表情。。)。这种感觉就好像你在东方的黄河边上扔进了一块小石子,远在大洋海岸的另一边看到了这石子激起的涟漪,并给予了你期望的反馈。

张小龙说,产品要有温度。我觉得微信读书让我暖到了。

3、关于电子阅读的一些思考

其实,在阅读方面我是彻头彻底的保守派,我认为:电子阅读永远无法替代纸质阅读的体验。所以我基本上不会选择阅读电子书籍,一方面我觉得电子阅读没法想纸质阅读那样,让我可以随心所欲的跳跃翻阅、做图文并茂的笔记以及沉浸于『书香』之中;另一方面电子阅读有损于眼镜,且很容易造成疲劳,降低阅读效率。

然而,经过这一两周的微信读书电子阅读体验,让我有了一点新的看法,开始思考它的优点并逐渐接受这种阅读方式。相比于纸质阅读,电子阅读至少有这么一大优点:更有效率的利用碎片化时间。至于阅读体验,起码做笔记(划线、评论)比想象中的要略微优雅一点,我相信随着技术的进步或颠覆式想法的到来,电子阅读的体验会越来越好。

但是话说回来:当摄影出现的时候,绘画消失了吗?

(完)

如何简单驳斥『百度是中立的』

每一次公共事件的发生,都是一次优化自身三观的绝佳机会。

最近的魏则西事件影响极大,对于百度而言此次的危机比也以往更加严峻。事情道理其实很简单,百度作为指路者,有意误导大众,这就是恶。至于其他如武警二院和莆田系等更需要追究,但是百度逃不掉。

其中,也不乏有许多人持这样的论调:『百度作为一家技术公司,它是中立的』。

他们的逻辑是这样的:技术是中立的(大前提),百度是一家技术公司,所以百度是中立的。

咋听上去貌似有一点道理,但是只要稍微一思考,就知道这里明显犯了偷换概念的逻辑错误。如果评论者不是收了钱或利益相关的洗地者,那很可能是逻辑思维混乱的愚昧者(如果说智慧是一种道德,那愚昧也是一种恶)。

我不妨先假设『技术是中立的』成立,百度是作为一家技术公司,没错,但技术公司并不能等价于技术本身。并且同样是技术公司的Google,为什么是另一番景象呢。这说明问题还在于利用技术的公司(法人代表)。

再往前思考一步,上面结论要成立尚且是假设『技术是中立的』这一前提条件成立,更何况你真确定:技术是中立的嘛?

是,为什么?不是,又为什么?不要人云亦云…

下一篇见!

(完)

 

两个精彩的比喻

最近看了两篇文章,已被其中的精彩比喻所折服,按耐不住要分享一下:

1、Twitter和Medium的Founder Ev Williams在接受英国《卫报》的采访时,当谈到『现在的媒体为何演变成今天这种快餐化』,他给出了一个十分形象的比喻:

That’s not to say there’s not a lot of great stuff out there, but a lot of people are dissatisfied with it. A lot of journalists who want to do great stuff are dissatisfied. Advertisers and brands are dissatisfied. We’re still stuck in some very naive thinking, with the idea that people consuming media means that’s what they want – it’s like, well, we put junk food in front of them and they ate that, so that must be what they want.

即他认为造成信息快餐化是一种人的情非得已,而非本意,这与常规的『媒体利益驱动和网民素质低下』的论断所有不同,『常规』的想法(国内公知基本达成了一种「共识」)其实是一种人性本恶,而他们除了动嘴亦无所作为的傲慢态度;Ev Williams的比喻则表达的是你我都一样,但我会努力让这个世界更好一点。

2、Uber CTO Thuan Pham在接受美国科技博客GeekWire的采访时,他也以一个精妙的比喻回应了那些说『Uber is just an app』:

The app is just the skin. There are servers, dispatch, dynamic pricing, supply positioning, mapping, routing data — all of that infrastructure. Saying Uber is just an app is like saying Facebook is just a Timeline. There’s so many systems underneath that it’s like an iceberg — most of it is underwater that you don’t see. It’s tremendously challenging and also fun to work on.

作为程序员,可能经常也会被问到类似的问题吧,『PHP开发不就是把数据select出来然后展示嘛』、『前端不就是调调样式做些形式上的东西嘛』…真是无知者无畏….另外一种相反的调调则是『搞Linux内核的哇好深奥』、『搞算法的哇好牛逼』…

只能说他们对待事物的看法完全来源于道听途说,没有自己真正独立思考过自己的所处的技术、行业领域,他们所知道的也仅是那些别人想要他们知道的。信息源已被污染,何谈良质与卓越,这种码农也定不会成为一位优秀的Engineer。

你要相信,这世上那些卓越的人的确与普通人有所不同,这并不是指他们的地位和名声,而是他们看待、思考事物的方式,即思想,至于地位和名声都是这些良质的副产品。而那些要求进步的青年要做的则是:向这些优秀的思想不断靠近,直到成为大师。

所以成为卓越也很简单,有两条『捷径』可走:
1)要么跟牛逼的人『在一起』,学习他们的优秀习惯、做事方法、行为准则,最重要的是他们是如何思考的 – 思而后行之
2)要么自己牛逼 – 至于自己如何变得牛逼,请参照第一条

故,一个身体和智力正常的人在这个所谓的『丛林社会』中考一个85分有那么难吗?如果真有,那他很可能没有选择成为一名程序员。

(完)