吴军博士重磅新作,30年从业经验凝成《计算之魂》
真的不是故意要赶“双十一”。做书的人,第一要紧的是心要静。一本书,从一个想法变成几百页的作品,每个字要对得起读者,一旦印了出去很难再改,要负责的。
但是既然碰上了这个日子,也是缘份,也不必刻意回避。过去快两年的时间,一遍又一遍地读吴军博士的文字,成百上千次的邮件来回。好的作品,一定有两个条件:一是一出手就是好作品,再就是好作品是改出来的。好的作品,和好的软件非常相似,或者不如说,凡创作皆如此。春去秋来,作品如美玉,渐渐成形,显出温润的光华。
第一眼就知道是用心的好作品,并不意外,但还是有惊喜。毕竟科班出身,这个领域的书不敢说全部读过,经典之作还是用过一些功。算法,每年出的书没有几万也至少有几百个品种,用心的,就不太多。在用心之作中,能讲明白的,又是凤毛麟角。但是,搞明白算法,还是不够。算法就像数学或物理公式,光背公式考不好试,更难拿来解决实际问题。吃IT这碗饭,好像每年相关专业毕业那么多人,但真的说起IT这个行业要知道什么见解,掌握什么技能,还是有明显的境界之分。绝大多数从业者,没有人指点,会很容易碰到空气幕墙,感觉努力无用,明明学了一堆东西,还是一问就废。
还是要看高手的经验之谈。计算思维并非玄学,它是活生生的。任何一个具体的问题,离不开物理——算力是有限的,存储是分级的,脱离这些不可能拿得出有意义的解决方案,同时当然也要熟悉底层的逻辑,人和机器不一样,但人要掌握机器就要理解机器如何运作——机器善于处理和人的日常思维反过来的逻辑。掌握了这些作为基石的思维,再向上去看算法,才能恍然大悟为什么这些算法会长成这样,因为如果让你从头来想,它们最后也不得不长成这样。在书中,所有书上都会讲的排序算法,并不是简单地从冒泡讲到快排,它们的底层思维来源并不相同,所以被安排到了不同思维所对应的章节中。认真读你就会明白,其实人们是使用了不同的计算思维来解决排序这个工程需求,所以,并不是说到排序就从工具箱中拿出自己知道的算法了事,你要了解清楚有怎样的资源,有怎样的功能和性能需求,这个时候才知道要用什么算法工具,甚至要现场对工具做一些细致的、深入的组合甚至改造才能完成看上去平凡无奇、实则暗藏致命杀机的需求。能否掌握这样的高级技巧,而非无论怎样的钉子都只会用一把笨锤去硬敲,可能在任何一个行业里都会是从业者分级的依据。只不过,在计算行业中,这些都会是思维活动,因而更需要一些具象的指点,尤其是来自于行业内顶尖人物的指点。《计算之魂》在这方面,无论是从广度还是深度来说,都是不可多得的佳作。尤为难得的是,这本书的文风完全不晦涩,而是有着接近于文学作品的可读性。思维训练被包装在具体的、甚至有点“俗”的顶级IT公司的真实面试题中,分布在各条专题内容下。但当然,如果你把这本书拿来做面试刷题用书,背了一些题目的答案就想要达到“通吃顶级大厂的任意职位”的目标,那肯定会头破血流。背算法都不行,背题目当然就更是等而下之了,这绝对不是吴军博士的初心。
在本书的开篇,吴军博士就借鉴了前苏联全才型科学家朗道划分物理学家级别的方法,提出了计算领域内的科学家和工程师的五级。“升级”唯一的办法,就是提升对于计算的认知,在计算思维上不断地自我训练。读《计算之魂》,是我看到的一条捷径,但当然要走好这条捷径,只能说是少走很多弯路。但要把高手的指点吃透,变成自己的经验和见识,还是免不得要花大功夫才行。好在吴军博士指出,计算行业的“升级”回报非常丰厚,从一个普通的“码农”,仅靠自身的努力,甚至有可能成为年入上亿美元的成功人士!这种行业内的成长空间,是非常少见的。其实,吴军博士本人就是从业人员的好榜样,他在职业上取得巨大成功的同时把多年的经验写下来,帮助整个行业和每一个从业者向上提升,这是很有功德的事业。
作为这部作品的策划人,我感觉特别幸运!因此,我当然也是很愿意向任何有兴趣从事或了解计算行业的同道推荐这本经典作品。上周,我去南京紫金山实验室拜访了仰慕已久的王桥教授。他的办公室里堆满了书,这些书并不是放在让人敬而远之的书架里,而是摆在案头随时可以取阅。我们聊的时间不很长,但说到前不久邀请王教授阅读《计算之魂》的事情,他还是兴奋洋溢难以掩藏。王教授非常提倡思维训练,他带学生不是去硬教通信协议,而是让他们基于随机数模拟的通信数据流自己动手实现协议,在这个过程中协议的基本算法和工程取舍便会浮现出来,而这样的学习过程也让学生不仅知其然更知其所以然。英雄所见略同,高手的方法论是相通的。
点击上述链接,在识别入口得到下发的小程序卡片后,可以通过在打开该卡片所展示的页面中点击“增值内容”收看吴军博士亲自讲解的视频,点击“加入群聊”则能够加入本书的读者群,有机会和吴军博士本人直接沟通交流。我们也将在该群中组织算法题目竞答,前5名优胜者将获得《计算之魂》一本(如已购买,将另送一本吴军博士在人民邮电出版社出版的其他作品),前10名将获得由吴军博士亲笔签名的精美书签一枚。