读书帮我释放着对未知世界的热情
工程师进阶
数学之美
吴军博士,著名自然语言处理专家。本书用简单易懂的语言讲述了数学在计算机中的应用。我很后悔没有更早的接触到这本书,要不然就会投入更多的时间学习数学,如果你还在用凑的方式解决问题,那么看看数学之美吧!赤裸裸的统计学 - Naked Statistics
Charles Wheelan,美国经济学家。如果你是一个门外汉,但又很想了解统计学,估计你能把这本书读完,因为里面没有一个数学公式。统计学,可以帮助你擦亮眼睛,看清数据背后的真实情况。特别是在大数据的时代背景下,统计学将更加广泛的渗透到每个人的日常生活中。算法 - Algorithms
Robert Sedgewick,40后,美国人,在普林斯顿任教,给Donald Knuth当过学生。这本书是我看过的最好的算法书,搭配上他在Coursera上的公开课,你不需要再看其他类似的书了。在上他公开课的时候,他偶尔会咳嗽,当时看着特别不忍心,一头白发,还在孜孜不倦的给人传授知识,致敬!通过上他的课,我第一次在算法竞赛中脱颖而出,积累的效果显现了 。程序员面试金典 - Cracking the Coding Interview - Gayle Laakmann McDowell
面试官都在读的书,因为他们面试也需要出题,练习这本书,你就做到了有的放矢。我给书中的练习加上了单元测试,开源代码在这里,好用请给我发个星星。Algorithms to Live By - 赖以生存的算法
Brian Christian, Tom Griffiths把最核心的几个算法用生活中的点滴讲了出来。我有感而发,写了几篇体会:过拟合 , 缓存。Operating Systems: Three Easy Pieces
人家夫妻双双把家还,Arpaci-Dusseau夫妇写了一本生动形象的操作系统的书,趣味性非常强,利于消化吸收。我也写了一篇读后感操作系统对CPU的控制权。设计数据密集型应用 - Design Data Intensive Application
Martin Kleppmann,原Linkedin工程师,成功的创办过两家企业,如今在母校剑桥大学,从事分布式系统的研究工作。2017年,数密一经发布,便成为了分布式系统的畅销书。这是我读过的最系统,最全面,最与时俱进的分布式系统书籍:从基础的数据结构(HashMap,B-Tree,LSM-Tree),到数据库及数据模型,再到分布式系统中的一致性和共识算法,一直到数据处理系统中的流处理,这本书覆盖了数密系统中的方方面面。另外,这本书还引用了大量的论文,堪称分布式系统中的知识宝藏。代码整洁之道 - Clean Code
Robert C. Martin,50后,人称Bob大叔。如果你叫不上他的名字,可你也许听说过SOLID设计原则,或者听说过敏捷软件开发宣言。他的SOLID原则和这本书,影响了无数的程序员的设计思想,代码风格。我几乎想不到,还能有谁能对整个软件行业产生这么深远而广泛的影响。除了这本书,你也许会喜欢他谈编程的未来。重构 - Refactoring
Martin Fowler,Martin是一个你认识了就会觉得相识恨晚的人,你会发现你所了解的很多行业里的名词都是从Martin那里来的。我在2011年的时候专门总结过Martin对我带来的改变。懂得了重构,就懂得了与时俱进,就懂得了伟大的产品是通过不断的打磨得来的。在所有的重构工具里,Intellij达到了登峰造极的境界。
管理和领导力
非暴力沟通 - Nonviolent Communication
Marhsall B. Rosenberg的这本书是帮助我提升沟通能力最大的一本书。没接触这本书的时候,我明白了不要和人争吵。后来自己更加成熟,才发现非暴力沟通让我学会了接纳,学会了真诚的表扬下属,学会了用爱帮助别人。管理、成就、生活
从程序员转了管理之后,我一部分的管理知识来自试错的经验积累,一部分是领导的言传身教。欧洲管理学大师马利克的这本书帮我认识到管理可以作为一种职业,通过其四大基本要素:任务,工具,原则和职责,进行系统化的学习。影响力 - Influence: Science and Practice
作为程序员,我曾经困惑过,怎么说服领导采用我的解决方案?带着这个问题,我读了誉满全球的说服大师,西奥迪尼,写于1984年的这一经典著作。与其说是我学会了影响别人,倒不如说如何不受他人影响。这里我写了对我触动最大的几个实例。金字塔原理 - The Pyramid Principle
沟通能力的提升,要软硬兼施,如果说非暴力沟通是软,那么金字塔原理就是硬。要想和别人有效的沟通,最重要的是把自己的想法清晰的表达出来。Barbara Minto的金字塔原理,帮助你有逻辑的组织思维,更加容易的让人准确的接收到你的信息。教练的习惯 - The Coaching Habit
Michael Stanier介绍的七个问题帮助管理者做好团队的教练。让管理者和团队成员进行更有效的对话。一方面帮助管理者更省心,更高效的带领团队,另一方面帮助团队成员更有深度的思考,实现自身的成长。改变提问,改变人生 - Change Your Questions, Change Your Life: 12 Powerful Tools for Leadership, Coaching, and Life
Marilee Adams故事里的主人翁,一直都是一个知道先生,而当他需要带团队的时候,发现知道先生行不通了。后来经过一系列的培训,学会了如何从评判者转换到学习者,进而提升了团队领导力,也使得家庭生活变得更加和谐。这种转换,是一种意识上的觉醒,是学会了理性的思考,摒弃了无意识的本能反应。