由于链接总是被和谐,需要本书电子版的朋友关注公众号:【奥丁读书小站】(njdy668),首页回复书名或者数字4581,自动弹出下载地址.
副标题:技术狂人如何改变世界
作者:(美)克莱夫·汤普森
内容简介:
如今,程序员为我们构建了一个由代码创造的新世界。作者在这本书中对程序员的世界进行了人类学意义上的思考:他们是谁?他们是如何思考的?他们的世界中什么才称得上伟大?什么才能让他们停下来思考?程序员是当今世界颇有影响力的人群,他们的文化丰富了人类的文明。
本书通过细致的描写,让读者们近距离接触到全球最顶尖的程序员,包括脸书动态消息、谷歌人工智能等开发团队的成员等。从天才程序员到编程菜鸟,从后端开发到前端设计,汤普森在其采访中发现了行业之中独有的精神气质——融合了对逻辑的忠诚、对效率的痴迷、对解谜的热爱以及对挫败的超强忍耐力。
这本书不仅为我们生动地刻画了互联网时代的天才程序员群像,还深度挖掘了互联网的精神内核。也正是程序员永远热血的探索精神和永无止境的创新力进一步推动了人类文明的进步。
试读
2017年的某一天,我去了多宝箱,见到了创始人德鲁·休斯敦。他应该算是大家眼中的“10倍速程序员”。休斯敦从幼年时期就开始接触编程,大学就读于麻省理工学院,曾在闲暇时写出了一个擅长玩在线扑克游戏的机器人程序。从麻省理工学院毕业后,他常常因为把U盘忘在计算机上而苦恼,于是决定开发一个系统,自动把计算机中的文件同步到服务器上——这就是多宝箱的原型。后来他意识到,其他人可能也需要这样的服务,于是他通过Y Combinator的收购,成立了多宝箱。2018年末,该公司市值已达100亿美元。
我见到休斯敦的时候,他正坐在公司音乐室的紫色沙发上。没错,该公司有一间完整的音乐工作室,有架子鼓、吉他、音箱等,供员工娱乐放松。休斯敦说,他之所以能取得成功,部分原因是雇用了数位10倍速程序员。有一些人的天赋其实源于大量的实践——他们投入了1万小时,每个罕见问题都见过,随着时间的推移,他们磨炼出清除程序错误的技能。休斯敦认为,天赋可以通过训练获得,后天培养可以超越先天之赋,但他表示,也有一些先天因素是极为重要的:热情,对技艺强烈的热爱。“它们是你在面对问题时自然释放出来的力量。”
休斯敦介绍我认识了一名出色的程序员——时年28岁的本·纽豪斯,他是一名工程部门主管。(纽豪斯后来离开多宝箱,开启了自己的创业道路。)纽豪斯和休斯敦一样,还在学生时期就创作出很不错的软件:21岁还在斯坦福大学读本科时,他就创造出苹果手机平台上的一款增强现实(AR)应用程序。当时他在点评网站Yelp实习,他意识到可以利用苹果手机中的指南针和GPS传感器让屏幕对周围环境做出反应。经过一整晚疯狂的编程——熟悉的画面,当然他还喝了一箱红牛——纽豪斯创造出了一个新功能,举起手机,应用程序就会自动弹出周围商家在Yelp平台上的评分信息。
来到多宝箱后,纽豪斯关注到公司业务中存在越来越显著的隐患。用户通常会使用多宝箱来备份整个硬盘的文件,几年后,可能会有300G或者400G的照片、电影等文件存储在用户的多宝箱账号中。有些人突然决定要换计算机,觉得旧计算机太笨重,想换个超轻款的,譬如苹果的MacBook Air。但是轻型计算机硬盘都比较小,可能只有128G的存储空间。这时用户就面临一个问题,存储在多宝箱中的400G文件不能全部同步到新计算机上。他们会思考手动选择哪些文件存到现在的新计算机上,因为全部下载转移过来是不可能的。对他们来说,多宝箱不再是当初那个可以提供便捷存储服务的产品了。公司的程序员一直在思考如何解决这个问题,但大家都觉得实在是太难了,不得不放弃。
纽豪斯一直惦记着这件事,他告诉自己,一定有更好的解决办法。
几个月后,他果然找到解决问题的机会。多宝箱内部会定期举行“编程马拉松”,休斯敦描述说,“就是把门锁上,逼着大家花一星期拼命想新点子”。纽豪斯一直在思考文件备份的问题,终于想到一个有用的信息:杀毒软件。我们在电脑上打开一个文件夹,杀毒软件会使用微过滤框架minifilters迅速检查文件夹里的内容。纽豪斯决定将这个技术移植到多宝箱上,也就是说,在超轻款计算机上显示多宝箱账号里的所有文件夹,用户在需要使用文件的时候,点击文件,程序会立刻从云端抓取相应文件,用户可以立即进行编辑,再存储到云端,整个过程快捷流畅,用户不会察觉到中间下载上传的时间差。
可是这并不容易做到,代码要深入计算机操作系统的“内核”,而在计算机世界里捣鼓内核就相当于在人类世界中做神经外科手术。改变多宝箱的运行模式,一不小心,数百万用户就会大受影响,他们的备份信息会被破坏。纽豪斯说:“内核非常复杂,也很危险,一旦搞砸,所有东西就没了。”正因如此,多年来工程师们一直认为,最好的办法就是避开这类极端区域。公司的另一名工程师杰米·特纳告诉我:“当时很多人都觉得那个方法不现实。”
纽豪斯开始在家办公,整天伏在计算机前,疯狂编程,一周内他写出了概念模型。休斯敦对此十分赞赏,于是给纽豪斯分配了一个6人团队,让他们把产品做出来。当纽豪斯在公司内部悄悄启动新功能时,特纳还没反应过来。当时特纳正在帮妻子的新计算机设置多宝箱,他预计要48个小时才能把账号中的所有文件同步到新计算机上,没想到同步只花了几分钟就完成了。他还纳闷发生了什么,突然看到了“智能同步”的信息。不久,智能同步(Smart Sync)正式推出,成为多宝箱近年来最重要的升级之一。
休斯敦告诉我,这种卓尔不群的创造力正是他求贤若渴的原因。如果有一位10倍速程序员加入,企业收获的创意可不是10位普通程序员能想出来的。
“让我坐下来写一首交响乐,给我多长时间我都写不出来。”他说,“你可能有10个或100个设计师,但乔纳森·伊夫(苹果公司首席设计师)只有一个。”
在程序员眼中,编程的世界由纯粹的意志力、天赋才能主宰,这是很好理解的。
在日常的编程工作中,这种感觉肯定是真实的。没有人能骗得过计算机,没有人敢在崩溃的代码测试前自吹自擂。2014年,程序员梅雷迪思·L.帕特森在其文章中写道:“代码面前,人人平等。代码写得出色,自然就会赢得尊重。”在编程界之外,口才可能很重要,但是在编程界,流畅运行的代码是唯一的评价标准。脸书上市后,马克·扎克伯格在一封公开信中写道:“新的想法是否可行,开发软件的最佳方式是什么,黑客们不会为此争辩好几天,他们会制作产品原型,看看实际效果如何。在脸书的办公室里,人们最常听到的口头禅就是‘代码胜于雄辩’……黑客文化极度开放,凭能力说话。在黑客眼中,巧舌如簧或位高权重都不足以成为赢家,真正的赢家永远是最精彩的创意和最出色的成果。”
能力至上的另一个体现就是,编程是一种罕见的工程学科,完全自学成才的人也可以被高学历的同行接受。约翰娜·布鲁尔在中学时自学编程,后来又获得信息与计算机科学博士学位,还成立了数家公司。约翰娜说:“对我来说,计算机科学领域最神奇的地方就是,专业背景极深的人可以和自学成才的人一起工作,据我观察,这在其他STEM(科学、技术、工程和数学教育)学科中是不存在的。”
还有一些程序员认为,能力至上的信念也包含了一部分的自我成就感。
有时,坚信英才至上其实是对年少时书呆子式成长的一种补偿。对那些在中学时期或初入社会时孤僻、内向的人来说,编程是一个相对客观中立的世界,充满了吸引力。辛西娅·李拥有高性能计算博士学位,目前在斯坦福大学任教,她还记得20世纪90年代和21世纪初,她在初创企业担任程序员,她的同事们都很年轻,大家都很内敛,害怕得不到理解。但是他们最终成为赢家,因为在编程领域,一切要靠实力说话。