你知道GPS是怎么发明的吗?
马里兰州罗瑞尔市坐落着约翰·霍普金斯大学的应用物理实验室(APL)的自助餐厅,长期以来都是就职于实验室的物理学家、数学家、技术人员聚会的热门地点。在1957年10月7日的午餐时间,大家讨论得异常热烈,因为苏联刚刚发射了第一颗人造卫星。
两位年轻的物理学家威廉·吉尔和乔治·韦芬巴赫也参与了讨论。他们首先确认这不是苏联的把戏,因为确实收到了来自太空的音乐。继而他们忽然想到,可以利用多普勒效应来计算卫星的移动速度(简单说,多普勒效应就是指信号源或接收器在运动状态时,相对速度与波形频率的固定关系。如果你路过鸣笛的消防车或救护车,会觉得随着它们的远离,鸣笛的音调也下降了)。结果,吉尔和韦芬巴赫用了几个小时,就实现了收听、测量、跟踪的功能。
过了几周,一个无组织的科学家团队在此基础上补充细节,研究关于轨道卫星的理论,提出了改善建议。之后,APL负责人批准了款项。于是APL的科学家们有了一整套算法,能够精密地测算出卫星的运动轨迹。
到了1958年春天,APL的副主任弗兰克·麦克卢尔把两个家伙叫去办公室,神神秘秘地问:如果卫星运动时,可以用固定的地面接收器来计算卫星的方位,那么反过来,卫星固定,地面接收器运动,能够测算出接收器的位置吗?这个问题没有人想过,也没有人评估过。经过几天的紧张计算,吉尔和韦芬巴赫确认:“反向定位”是可行的。
2年后,美国实现了“反向定位”系统,最初用于为潜艇确认位置。1983年,大韩航空的班机因为导航故障误入苏联领空被击落之后,美国向民用领域开放了整套系统。这,就是今天我们熟悉的GPS。
Continue reading 那片适合创新的池塘
在我上大学的时候,除去普通的英语课程,专业课程里还有一门《计算机英语》。当时大家的普遍认为,普通的“英语”是过四六级用的,《计算机英语》才是专业真正需要的。
等到工作了,我发现很多人都持这样的观点:程序员应该学好英语。这样才能方便地查找资料,迅速地学习最新的知识。换句话说,“学好英语”在很多人看来,就是是“学好专业英语”——这项要求已经很高了,我曾经在《程序员要怎样学英语》里提到,不但要能看懂文档,还要知道“黑屏”是blank screen,“死机”是system halt,否则查找就会很费力。
但是今天我想强调的是,对程序员来说,学好“英语”而不是“专业英语”是非常重要的。只学好专业英语,看得了技术文档,但那一大堆专业术语和概念可能会像陨石一样,没来由地坠落下来,只能生吞活剥地硬背。如果学好英语,你才会有融会贯通的感觉,知道那些术语和概念原来是从地里长出来的,底下连着根茎。
Continue reading 程序员为什么要学好英语
我刚刚工作的时候,面试官曾经跟我说:好好干两年,可以迅速从程序员成长为工程师。当时我觉得太诧异了,从很多招聘启示来看,“程序员”不就等于“工程师”吗,只是“工程师”更好听一些而已。等我工作久了,才知道“程序员”和“工程师”真的是不一样的——程序员只写程序,工程师写能在现实世界中创造价值的程序。
可惜,很多软件开发人员未必清楚两者的差别,甚至做了很久也只算程序员而不算严格意义上的工程师。所以我就自己的观察和经验,谈谈程序员和工程师的差别。
Continue reading 程序员和工程师有什么不一样?
前几天和朋友吃饭,听说一件有趣的事情:他们很需要的小语种员工,入职刚三天就辞职了,理由是“感觉不到同事之间的温暖交流”。说起这件事,这个朋友也是非常无奈:业务忙着呢,大家上班都在做自己的事情,尤其是小语种的人本来就不多,和大家交流少,如果因为这个理由辞职,也是没有办法的事情。
离职的理由很充足,但是,这个小语种的员工又确实是公司业务发展需要的。这个问题要如何解决呢?
一般人会说:需要HR做好工作嘛。没错,在成熟的大公司,员工入职的前几天,都会有HR部门安排的培训,内容包括企业历史、企业文化、行为规范等等,同时也是提供机会让新员工互相认识,然后才会派到真正的职能岗位上。这样的安排,有助于消除员工的陌生感,新员工之间的“同病相怜”,也有利于维系员工。
然而,许多公司并没有这么“称职”的HR,要避免新人“入职就离职”的现象,职责只能落到员工所在部门的直线领导身上。尤其在创业公司,直线领导往往必须“既当爹又当妈”,业务行政一起管,加之很多愿意创业的人“天生”就不喜欢和“没事找事”的HR打交道,而更愿意和自己有共同语言的同事沟通。所以,由直线领导来出面,既是责任,也是优势——从我自己的经验来看,直线领导如果愿意出手,通常都能取得不错的效果,前提是不能把入职简单看作一个动作,而要理解“新人入职是一连串事件”。下面,我简单介绍自己的经验,供有兴趣尝试的读者参考。
Continue reading 员工入职是一连串事件
最近几年不再混战在纯互联网领域,接触了很多与实体有关,尤其是外贸电商行业的生意。见识开阔了不少,也经历了很多,同时也有困惑和思考。在这里我尝试谈谈自己现在想明白的几个问题,有些只与具体的生意有关,有些则与行业有关,虽然比较杂乱,但希望对大家有参考作用。如果大家有意见,也欢迎讨论。
Continue reading 近来想明白的几个问题
众所周知,日本车在全世界都是很受欢迎的。究其开端,很多人会想到20世纪70年代的石油危机,认为是油价高涨,为尺寸小、油耗低的日本车打开了市场。这固然可以解释一部分原因,但另一方面,为何日本车能够持续受到欢迎,为何日本车能摆脱“价廉质差”的形象,既有优惠的价格又有优异的品质(缺陷率常年很低)。这一切,都与日本汽车厂商所采用的“精益生产”,尤其是丰田开创的“丰田生产方式”(Toyota Product System, TPS)有很大的关联。最近因为与供应链打交道很多,我花了些时间学习这种生产方式。有趣的是,我发现,它的价值不只限于汽车行业,甚至不只限于制造业,对其它许多行业(包括软件行业)。所以下面我讲讲丰田生产方式给我的启示。
Continue reading 丰田生产方式的启发
“扁平化”大有泛滥之势,似乎一说起企业(公司)的结构,就必提扁平化。按照流行的说法,“扁平化”的好处很多:平等、轻巧、简捷、高效。由其反衬,传统的公司管理结构一无是处,只剩下笨重、麻烦、低效。但是,企业管理这门学问分明诞生在“扁平化”之前许多年,在“扁平化”还没流行之时,企业管理已经取得过相当的成就。那么,“扁平化”到底是何方神器,何以能够横扫四方呢?
依我看,要了解这个问题,首先要了解企业为何需要管理。要了解这个问题,又必须了解企业为何会存在。好在,经济学家科斯曾经有两篇著名的论文《企业的性质》和《社会成本问题》,提供了非常精妙的解答。
Continue reading 对盲目扁平化说No
“社交网络”或者“社会化”是当下非常热门的概念,由此也诞生了许多“社会化”的应用,比如“社会化问答”、“社会化阅读”、“社会化求职”,看起来既光鲜又高级。但是,“社会化”的应用真的能造福所有参与者吗?
互联网促进了信息的自由流动,社交网络对人之间的互动信息进行组织和沉淀。在互联网上我们可以和千里之外的朋友及时沟通,也不在受到作息时间和时区的限制。社交网络保存了这些沟通和互动,让它们可以被检索,被传播,被分享。这的确让无数人欢欣鼓舞,也让无数人沉醉其中。但如果认为社交网络的价值仅仅如此,未免太过简单。
Continue reading 我眼里的社交网络
不知从什么时侯起,“互联网思维”成了热门的名词,不管什么东西,一旦沾上“互联网思维”,就瞬间变得金光闪闪。无数人手握“互联网思维”,雄心勃勃地要改造各种行业,大有大跃进时“向三山五岳要粮”的气慨。然而仔细想想就不难发现,“互联网思维”的最初鼓吹者,只是在事后按照“互联网思维”的路子去解释自己的成功经历,正如同我党用《东方红》来解释从整部革命史一样。其它鼓吹乃至信奉互联网思维的人,我还真没听说有几个在“互联网思维”的指引下取得了成功。所谓“互联网思维”,在我眼里更象一出傲慢的闹剧。
我曾经说过,互联网最大的价值是加速了信息的有效流动,因此大大降低了许多活动的成本,省略很多中间环节(当然,这些中间环节主要作用是传递信息)。一旦深入到现实世界,互联网还是要受到现实世界的制约,要尊重传统积累的智慧。那种以为有了“互联网思维”就可以横扫一切的傲慢,是断然要不得的。
Continue reading 互联网思维,傲慢的闹剧
一晃六年,《技术领导之路》要再版重印了。回想刚刚开始翻译这本书时,我还忙碌在程序开发的一线,对领导技术团队并没有太多经验;如今,也能差强人意地带领技术团队支撑年销售额数亿的业务。一路走来跌跌撞撞,所幸没有中途倒下。思考其中的原因,除去运气,除去身边同事朋友的支持,翻译《技术领导之路》也是不容忽视的因素。
很多人都知道,“职场童年”非常重要,一个人最初工作的几年,在什么样的环境里,得到过什么样的锻炼,很可能决定了他整个职业生涯的走向。同样的道理,“领导力童年”也很重要,一个人对领导力的最初接触和认知,也会深深影响他对于“领导”和“领导力”的观点,甚至领导作风。所以,在我还忙于一线开发的时候,通过翻译《技术领导之路》,“生吞活剥”了一整套关于领导力的学说,基本“塑造”了我关于领导力的认知,深深影响了我作为技术领导的管理风格和价值取向,因此也对很多问题有了自己的判断——前段时间和另一位掌管公司技术的朋友聊天,说起那种“执行力超至上”的领导风格,我们都认为,尽管或许能出结果,但不是好的领导风格。
Continue reading 我所理解的技术领导力