生成式AI领域的最新成果都在这里!抢 QCon 展区门票 了解详情
写点什么

阅读者(二十七):两家公司,两个故事

  • 2014-01-27
  • 本文字数:3150 字

    阅读完需:约 10 分钟

我有这样一个习惯,就是基本不读当季的热门书,不管网上宣传得多么好,有多少大牛倾情推荐,我都不会在第一时间去读,而是在第一波宣传过后,甚至是几个月后,如果还有人在讨论这本书,或者它持续位于某排行榜之上,那么我会把它找来读读,我相信一本真正的好书是经得起时间的考验的。最近连续读了两本不那么技术的书,它们分别和两家大公司有关,讲述了两段不同的故事——《打造 Facebook:亲历 Facebook 爆发的 5 年》和《淘宝技术这十年》。

说起 Facebook,这是一个对大多数中国网民而言并不存在的网站,但它的确创造了不少辉煌的记录,有些人从电影《社交网络》里了解了 Facebook 诞生的经过,不过那毕竟是电影,多少有些艺术的成分在里面,到底有多真还有待考量。王淮作为 Facebook 的早期员工,亲身经历了 Facebook 初创的那段时光,由他来介绍 Facebook 的公司文化、历史、技术发展,相信还是比较靠谱的。虽然没有见过王淮,也说不上认识,但是我相信王建硕的判断,能够担当百姓网的顾问,一定有他的过人之处。

回到《打造 Facebook》一书,如果你是个技术宅,只关心技术的东西,那我不会向你推荐它,因为书中并没有对 Facebook 的技术做了太多的介绍,如果想了解 Facebook 的技术,还不如去看看这两年 QCon 大会上 Facebook 讲师的讲义。本书并没有把技术放在主要的位置上,更多的是以王淮自己的经历作为主线,贯穿全书介绍 Facebook 的各种文化,一些管理方法,最后还有一点投资相关的内容,尤其还包括了自己选择投资项目的标准。因此,如果你是一名主管,或者是创业者(尤其是希望获得王淮的天使投资的人),还是可以考虑在茶余饭后的闲暇之时读读本书。

书中有一些内容让我比较有感触的,比如他是如何做出一些选择的,离开 Yahoo,拒绝 Google,选择了 Facebook。他得理由是 Yahoo 已是庞然大物,且办公室政治复杂,Google 也发展了一段时间,过去基本也不可能有翻天覆地的作为,而 Facebook 刚刚起步,有足够的舞台去发挥。

不同的人有不同的选择,在做选择时多少都会有些纠结的地方,有的人选择“钱多事少离家近”,有的人则会选择一家技术驱动的互联网公司,也许还要“三个人干五个人的活拿四个人的工资”;有的人会选择跨国大公司,有的人则会选择创业小团队……一个选择往往决定了今后几年的命运,王淮选对了。

对于一个工作了多年的人,往往会有自己的想法,那么对于一个想在技术方向上有所发展的应届生到底该怎么选,我来说说我的看法——几乎没有一个人是能在一家公司干一辈子的,第一份工作相对比较重要,如果可以的话,还是选择有一定技术实力,有工程师文化,专注于自己产品的互联网公司。前段时间的一些经历更让我坚定了这样的想法,如果一个人从来都没有接触过大规模、高并发的场景,又怎么能指望他去设计合适的解决方案呢;从来都没有用过 LVS 或者是 F5,又怎么会知道该把它们放在哪里呢;从来都只是让系统跑在一台服务器上的,又怎么会知道当一台服务器要变成一组服务器时要注意点什么呢;从来都是单枪匹马或者小作坊式工作的,又怎么会知道一个大团队该如何协作呢?视野和格局的差异往往会带来非常巨大的区别。

新兵训练营早在本书之前王淮就在自己的博客上介绍过了,这个做法也获得了大多数人的认可,其实不少公司都有新员工培训的体系,也有导师制度,有的公司甚至还会区别对待有工作经验的“老人”,和刚刚毕业的“新人”。还有积极鼓励员工内部流动,寻找最适合自己的岗位,内部转岗在很多公司都是很困难的,主管并不放人,或者是好不容易转过去了,结果发现那个新岗位完全不是自己想象的那样,像 Facebook 这样主管主动帮助员工寻找合适的部门,还能有一个月的体验时间,双方都满意才最终转岗。对于 Facebook 的管理方式,个人还是非常认同的。

当然书中还有些说得并不怎么清楚的东西,比如面试,如果你希望更多地了解硅谷公司的面试,可以直接网上去搜面经,前段时间图灵的《码农》杂志还做过一次程序员面试的专题;此外,关于风投,虽然书中有所涉及,但内容远不及《浪潮之巅》中的相关章节。

说了这么久 Facebook,再来看看《淘宝技术这十年》。本书中的大部分内容其实早就贴在了阿里内网和子柳自己的博客里,可以说是他将这些内容整理成册。经过了几年“光棍节”的洗礼,业界早已被淘宝的技术实力所震撼,就连国外的一些同行也在积极了解淘宝的技术细节,很多人也关心淘宝是如何成长起来的。与《打造 Facebook》不同,《淘宝技术这十年》是以技术为主体的,除了淘宝的诞生和架构演变之外,还介绍了支撑淘宝大流量的大量重要中间件,书的后半部分也讲到了子柳在淘宝所经历的项目以及多位高 P 的采访。

很多人都赞同一个观点,即“没有完美的架构,只有最合适的架构”。淘宝从小到大的发展还是值得很多互联网公司借鉴的,在什么阶段选择什么样的架构。以前段时间被炒得沸沸扬扬的“去 IOE”为例,并不是说 IOE 不好,只是在淘宝的场景下 IOE 无法满足淘宝的需求(这里的需求有很多,比如性能方面、成本方面、可扩展性方面等等),Oracle 的 Exadata 还是受到了很多企业的追捧,并不是说“去 IOE”了就没人用了,如果到上海虹桥机场 T2 航站楼,你还能看到硕大的一块 Exadata 广告。很多地方都介绍过使用商业解决方案和自主研发的成本曲线,只有当越过临界点时,自主研发才是符合企业发展的。在一些技术大会上,BAT 巨头的上镜率越来越高,但与会者往往也会有这样的感叹,分享的内容很好,技术很牛,但总感觉离自己有点远。也许一些网站永远都到不了淘宝现在的规模,对它们而言,淘宝前几年的一些方案就够了。

我最推荐的是书最后的“牛 P 列传”部分,无论是否是阿里系的,都应该看看这几篇访谈。其中的每个人都有自己的特点,值得慢慢品味,我接触过其中的一些大神,比如正祥身上散发出的学者气质,毕玄在排查各种问题时一定要探寻本质的态度,刺总的年轻有为……当然,除了知名度颇高的几位,还有名不见经传的多隆大神,一直听闻他的传奇事迹,但一直无缘相见,实属人生一件憾事。不知您是否也有这样的经历,在看完一些人的访谈或者文章后,心中燃起一股激情,就想去写代码……

同样说说此书适合哪些读者,如果你是一个阿里系的老员工,那么一定会对书中介绍 HSF、TDDL 等中间件非常熟悉,对于那些在日常就使用这些东西的人而言,这段介绍相对浅显,这部分内容并无吸引力;如果你是非阿里系的,那么除了那些中间件,淘宝的发展史可以读读,要是不想买书,网上就有现成的完整版。全书内容稍显散乱,毕竟是三块不同的内容“拼”成了一本书,除了第一部分还有主线可循,后两部分基本就属于可以再做细分独立成篇的了,当然这也和本书的性质有关。

近来,把自己在网上写的东西出成电子书或者纸质书已然成为一种流行,很多书中的内容可以直接在网上找到,读者可以自行选择是否购买,想要支持作者,或者是想要阅读增值内容,相信这会成为未来的一种出版方式。最近有两位知名的阿里员工回顾了他们在阿里的经历,一位是“校长”子柳,另一位就是鬼脚七,他们都选择了这种方式。

无论是《打造 Facebook:亲历 Facebook 爆发的 5 年》还是《淘宝技术这十年》,都背靠一家成功的、大型的网站,在这样的光环下吸引读者的目光,从书中大家可以从某些侧面去了解 Facebook 和淘宝的一些方式方法和细节,但往往不够全面或者深入,对某些点感兴趣的读者还得自己去挖掘相关内容。从总体上来说两书都属于能在轻松愉快地心情下,不用消耗太多脑细胞即可阅读的作品,但书中的内容未必符合每个人的胃口。不知读者朋友您是否喜欢这两本书呢,不妨分享下您的阅读感想。


感谢张逸对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-01-27 00:492156
用户头像

发布了 135 篇内容, 共 58.6 次阅读, 收获喜欢 43 次。

关注

评论

发布
暂无评论
发现更多内容

图说前端-内存管理(1/3)

梦见君笑

大前端 内存

创业使人成长系列 (2)- 散伙协议

石云升

创业 股权 合伙人 散伙协议

猿灯塔:spring Boot Starter开发及源码刨析(三)

猿灯塔

Java 猿灯塔

《精益思想》读后感分享

zhongzhq

高效工作 精益 精益思想 精益生产方式

DOM 树的构建

法正

html 大前端 DOM

基于Kubernetes实现的大数据采集与存储实践总结

岿然独存5

Docker Kubernetes S3 EFK Fluentd

啃碎并发(九):内存模型之基础概述

猿灯塔

Java 猿灯塔

给 Spring Boot 项目减减肥!18.18M 到 0.18M 是如何做到的?

给你买橘子

Java 程序员 Spring Cloud 编码 SpringBoot 2

啃碎并发(八):深入分析wait&notify原理 猿码架构

猿灯塔

【Java虚拟机】垃圾收集器与内存分配

烫烫烫个喵啊

Java Java虚拟机

计算机操作系统基础(十七)---进程同步之Unix域套接字

书旅

php laravel 线程 操作系统 进程

无价值人生记录.0:浪费1000%时间去做一个用来节省1%时间的“轮子玩具”(上:因缘)

八苦-瞿昙

C# 程序员 随笔 随笔杂谈 aop

玩转Redis高可用 - 哨兵(Sentinel)模式

Man

高可用 redis高可用 中间件

redis系列之——Redis为什么这么快?

诸葛小猿

Java redis 程序员

实验室里的AI激情:腾讯优图的升级修炼之路

脑极体

终于有人把Elasticsearch架构原理讲明白了,感觉之前看的都是渣

爱嘤嘤嘤斯坦

Java elasticsearch 编程 架构

区块链+高考,让世界再无冒名顶替

CECBC

微服务架构下分布式事务解决方案

Arthur

16种设计思想 - Design for failure

Man

Java 微服务 设计原则

如何基于 BitMap 进行海量数据分析

GrowingIO技术专栏

互联网 数据分析 科技互联网 数据化

SpringBoot入门:01 - 配置数据源

封不羁

Java spring springboot

使用 Dockerfile 创建镜像 | Docker 系列

AlwaysBeta

Docker 容器 镜像 Dockerfile

架构师必须知道的架构知识

Chank

架构 架构师 Architecture Architect

游戏夜读 | 如何分析游戏体验?

game1night

Docker基础修炼3--Docker容器及常用命令

黑马腾云

Docker Linux 容器 命令

一个爱不释手的Apifox,让我扔掉 Postman的想法

给你买橘子

Java 编程 程序员 开发 Postman

Git 常用操作汇总-cheat sheet

多选参数

git GitHub gitlab gitee

图解:深度优先搜索与广度优先搜索

淡蓝色

Java 数据结构 算法

刘华:上云还是不上云,这是一个问题

刘华Kenneth

架构 敏捷

如果你想写自己的Benchmark框架

程序那些事

JVM 性能调优 GC benchmark

如何搭建一个HBase集群

Rayjun

HBase

阅读者(二十七):两家公司,两个故事_语言 & 开发_丁雪丰_InfoQ精选文章