[转]ThoughtWorks(中国)程序员读书雷达

http://agiledon.github.io/blog/2013/04/17/thoughtworks-developer-reading-radar/#rd?sukey=f64bfa68330f696aa05077dbb740f367870988360956e818b4f7074c49ab47258dc687689cc483391f771e27e2bca446

软件业的特点是变化。若要提高软件开发的技能,就必须跟上技术发展的步伐。埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识。世界上并不存在速成的终南捷径,但阅读好的技术书籍,尤其是阅读大师们的经典著作,总能收到事半功倍之效。一位优秀的程序员,或许就是一名好的阅读者。好的阅读者,总是知道如何选择好的书籍。书海浩繁,良莠不齐。阅读技术好书,如与智者交谈,“与君一席话胜读十年书”;遭遇技术烂书,如被拐卖,“少小离家老大回,乡音无改鬓毛衰”。

ThoughtWorks作为一家学习型组织,颇为看重每一位员工的学习能力。事实上,大多数ThoughtWorker的骨子里,都溢满了读书的基因。与书相伴,与书为伍,既是一种乐趣,又是一种习惯。当习惯成为自然时,书籍就成为生活和工作不可或缺的一部分了。如果说人文历史哲学等书籍是一碗心灵鸡汤,技术书籍大抵算得上是一味营养素,读之可以直接带来养分;可若是不了解自己究竟缺了哪一种营养,乱吃乱补,结果就可能适得其反了。有鉴于此,我和同事刘龙军结合自身的阅读经验,为新入职ThoughtWorks的程序员制作了一份读书路线图。我们将范围明确为程序员,是因为作为程序员的我们,它是我们最了解的工作角色。我们筛选出了一些大家公认的经典书籍,再结合自己的阅读体会,并广泛征集了更多ThoughtWorker的意见,包括徐昊,熊节,郑晔等资深阅读者,得到了这样一份草稿。在中国公司内部推出时,这份读书路线图得到了多数人的认可和欢迎。继而,我们在成都办公室陆续针对此读书路线图展开了读书俱乐部的活动,算是做了一次全方位大面积的试水。

现在,我们觉得是推出正式版本,并面向更多受众的时机了。这就是大家现在看到的ThoughtWorks(中国)程序员读书雷达。它相较于之前的读书路线图草稿,分类更为专业,书籍筛选更为合理,并以雷达独有的优势,来展现不同的阅读维度与阅读深度。显然,读书雷达更能表达我们对所选书籍的深度认识。它可以作为学习型组织的一份知识输入,每一位程序员都可以根据自身水平与能力,选择适合自己的书籍,甚至组成一份表达阅读履历的读书路线图,在获得知识完善与汲取的过程中,提高自身能力,达至各个维度的巅峰。

该读书雷达将书籍分为了如下四个象限:

Coding Practice(编程实践)
Architecture &
Design(架构与设计)
Methodology(方法学)
Thought &
Leadership(思想与领导力)

我们之所以将方法学、思想与领导力放入到这个为程序员设计的读书雷达中,乃是因为软件开发不仅仅是个人的活动,也不仅仅是编码技巧和设计能力的体现。我们认为,开发技能其实是一项综合的系统工程。了解方法学,可以促进你对开发过程的理解;关于思想,则涉及大脑思维的修炼,可以提高程序员的抽象能力、学习能力,有助于帮助程序员发现事物发展的规律和本质;至于领导力,则有助于程序员在开发团队中发挥更大的作用,并能作为很好的团队成员,提升团队的整体能力。我们没有在这个读书雷达中包括语言类的书籍,原因在于这类书籍太过于发散,且更新较快;我们也不可能奢望在一张读书雷达图中,为不同的语言平台展现不同的优秀书籍。相比较语言的学习,我们更看重程序员在编程实践上的基本功。

每个象限皆分为三个等级,分别为Fundamental、Medium和Advanced,对应初学、进阶和高级。在雷达图中,读者可以根据该书在图中距离圆心的远近,判断它的难度级别。我们还使用了不同的图示来表达对每本书的倾向性意见,其中,橙色的三角形图示代表“强烈推荐”,蓝色的圆形图示代表“推荐”。我们希望这类书籍对于程序员而言,可以根据自己目前的水平,选择适合自己的书籍。在这个层次上,强烈推荐可能就意味着必读。

或许有人会质疑读书雷达的挑选标准。正所谓“每个人心中都有自己的哈姆雷特”,我们认同的未必能得到读者的认同,这是我们这个世界关于一种观点或态度的常态。我们发布这个读书雷达,只是希望能提供更多有用的信息与参考,而非代表一种读书权利的绝对化。事实上,我们也不可能做到。此外,”吾生也有涯,而知也无涯”,我们阅读的书籍毕竟有限,且读书雷达的容量也有限,难免会有遗珠之叹,这也是一件无可奈何之事。然而,我们欢迎更多的批评与建议,或许你推荐的好书恰恰是我们遗忘的,又或者激起了我们的共识,那么我们也会毫不吝啬地更新读书雷达,以求做到我们能力范围内的尽善尽美。当然,正如你看到的,我们在Methodology(方法学)象限,更多地推荐了与敏捷和精益相关的书籍。这是因为我们对敏捷技能与方法更有心得和信心。对于我和刘龙军还不够擅长的领域,我们不敢也不愿做出可能误导人的推荐。

本读书雷达虽然冠以ThoughtWorks(中国)之名,但选书的倾向与意见并非ThoughtWorks(中国)官方的态度,而是作为制作者(龙军和我)个人表达的意见而已。如果你也加入了ThoughtWorks,你一定会发现这种自发组织的民间活动,在ThoughtWorks可谓俯拾皆是,不用诧异。

我将在后面的文章中,根据每个象限为每一本书给出我们的推荐理由。此时,书籍成为了我们的臣民,我想对这个王国做一次不吝惜赞赏的巡视。最后,列出读书雷达的中英文书单,如下所示(感谢凯峰为这个雷达图建立的豆列,可以访问ThoughtWorks(中国)程序员读书雷达):

Coding Practice | 编程实践


基础篇


Clean Code《代码整洁之道》
Pragmatic Unit Testing《单元测试之道》
The Productive
Programmer《卓有成效的程序员》
Test-Driven Development By Example《测试驱动开发》
Clean
Coder《程序员的职业修养》
The Art of Readable Code《编写可读代码的艺术》

进阶篇


Refactoring To Patterns《重构与模式》
Implementation Patterns《实现模式》
Code
Complete《代码大全》
The Pragmatic Programmer《程序员修炼之道》

高级篇


Structure and Interpretation of Computer Programs《计算机程序的构造和解释》
Working
Effectively with Legacy Code《修改代码的艺术》

Architecture & Design | 架构与设计


基础篇


Agile Software Development 《敏捷软件开发:原则、实践与模式》
Head First Design
Patterns《深入浅出设计模式》
Design Patterns 《设计模式》

进阶篇


The Art of UNIX Programming 《Unix编程艺术》
Practical API Design
《框架设计的艺术》
Domain Specific Languages 《领域特定语言》
Patterns of Enterprise
Application Architecture 《企业应用架构模式》

高级篇


Release It 
Domain-Driven Design 《领域驱动设计》
Enterprise Integration
Patterns《企业集成模式》
Beautiful Architecture《架构之美》
Pattern-Oriented Software
Architecture《面向模式的软件架构》

Methodology | 方法学


基础篇


User Stories Applied《用户故事与敏捷方法》
The Gold Mine《金矿》
Scrum and XP From
the Trenches《硝烟中的Scrum和XP》
Continuous Integration《持续集成》
Extreme
Programming Explained《解析极限编程》

进阶篇


Lean Thinking《精益思想》
Continuous Delivery《持续交付》
How Google Tests
Software
Agile Testing
Extreme Programming
Refactored《重构极限编程》

高级篇


Specification By Example

Thought & Leadership | 思想与领导力


基础篇


The Effective Executive《卓有成效的管理者》
Are Your Lights
On?《你的灯亮着吗》
Becoming A Technical Leader《成为技术领导者》

进阶篇


The Fifth Discipline《第五项修炼》
The Design Of Business
Management
3.0《管理3.0:培养和提升敏捷领导力》
Presentation To Win
The McKinsey
Way《麦肯锡方法》

高级篇


Thinking, Fast and Slow《思考快与慢》

时间: 2024-08-10 08:34:37

[转]ThoughtWorks(中国)程序员读书雷达的相关文章

【转载】张逸--ThoughtWorks(中国)程序员读书雷达

原文地址:ThoughtWorks(中国)程序员读书雷达 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界上并不存在速成的终南捷径,但阅读好的技术书籍,尤其是阅读大师们的经典著作,总能收到事半功倍之效.一位优秀的程序员,或许就是一名好的阅读者.好的阅读者,总是知道如何选择好的书籍.书海浩繁,良莠不齐.阅读技术好书,如与智者交谈,“与君一席话胜读十年书”:遭遇技术烂书,如被拐卖,“少小离家老大回

程序员读书雷达

ThoughtWorks(中国)程序员读书雷达 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界上并不存在速成的终南捷径,但阅读好的技术书籍,尤其是阅读大师们的经典著作,总能收到事半功倍之效.一位优秀的程序员,或许就是一名好的阅读者.好的阅读者,总是知道如何选择好的书籍.书海浩繁,良莠不齐.阅读技术好书,如与智者交谈,“与君一席话胜读十年书”:遭遇技术烂书,如被拐卖,“少小离家老大回,乡音无改

远程办公《Remote》读书笔记:中国程序员在家上班月入过六万不是梦

这不是一本新书,这是一本很值得中国程序员看的老书,所以我不是来做卖新书广告的:) 但它的确是一本好书,这本书在Amazon上3个business categories排第一.作者Jason Fried和David Heinemeier Hansson 是全世界效率最高的软件公司之一Basecamp的创始人!他们的员工分散在世界各地远程办公,是通过远程方式协同工作的典范.这两个作者合著的第一本书<重来>(Rework)高居<纽约时报>畅销书榜前列,书中推崇的管理理念在国内商业领域也产

《程序员读书这件事情》读后感

晚上读了<程序员读书这件事情>这篇博文. 第一,感叹博主的阅读量,借助于信息科技的优势大家的阅读量越来越多,博主是除栗华山(华宇前同事)后见到的第二个阅读牛人! 第二,敬佩博主的文笔和细心勤奋,其中一些书我也读过却没写读后感没总结. 第三,"读书为了什么",也是感悟最深的,解答了自己的困惑. 1,读书像吃饭一样,为精神世界里的自己提供给养. 2,读书可以丰富内心,让我们在同样的生活下过出不一样的自己. 3.读书是润物细无声,在潜移默化间提高自己.

有人说中文编辑是解决中国程序员编程效率的秘密武器,请问他是一个银弹吗?

一.“银弹” 首先在这里解释一下“银弹”的概念,顾名思义就是银质的子弹(Silver Bullet),是古老的欧洲民间传说中能杀死狼人的利器.当然现实中是没有狼人的,但现实中确实有银弹这个东西.而其意义也类似于能杀死狼人的最好办法.现实中的狼人可以是一个棘手的项目,或者一件不可能的事.而“银弹”就是指能解决这些事的方法,或者技术手段,被比喻为具有极端有效性的解决方法,作为杀手锏 .王牌等的代称. IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表

关于中文编程是解决中国程序员效率的秘密武器的问题思考

中文编程在理论上确实可以提高中国程序员或者说是在汉语言环境下成长学习的人,因为语言环境可以影响一个人的思维方式和习惯,我们对英语的学习局限于课堂知识的学习,没有一个比较好的英语环境,所以我们的思维在很大程度上很难去按照英语的一些思维习惯去理解和做事,所以在这方面上理解我是认可中文编程是一个解决中国程序员效率的一个方式. 就像以英语为语言进行设计的各种编程语言一样,汉语编程的发展和成熟也需要一个时间,不可能一蹴而就,不只需要成熟的语言系统还需要一种甚至是几种适合各种任务的编译软件,我们现在主流的语

有人认为,“中文编程”是解决中国程序员编程效率的密码武器,请问它是一个“银弹”吗?

我个人认为不是. 首先解释一下“银弹”这个词.“银弹”一词常被用做致命武器的代言词,被比喻为具有极端有效性的解决方法,作为杀手锏.最强杀招.王牌等的代称.在该题目中“银弹”指的是一项可使软件工程的生产力提高十倍的技术或方法.可见要达到银弹一词的说法,对中国程序员来说,中文编程必须达到高效率.蜻蜓点水的效果才行.然而现实中的“中文编程”远远达不到这样的效果. 原因有如下: 因为编程是一种实现功能的逻辑编写操作,为解决功能性与需求性,能否实现主要在于代码设计与方法,语言作为一种表现形式对编程的影响并

有人认为“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?

有人认为“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?首先,百度给出“银弹”是这样的解释:能杀死狼人的利器 在古老的传说里.狼人是不死的.想要杀死狼人有几种方法: 1.像杀死吸血鬼那样用木桩钉住狼人的心脏. 2.将月光遮住 3.用银子做的子弹射穿狼人的心脏或头 当然现实中是没有狼人的.但现实中确实有银弹这个东西.而其意义也类似于能杀死狼人的最好办法.现实中的狼人可以是一个棘手的项目,或者一件不可能的事.而“银弹”就是指能解决这些事的方法,或者技术手段. 我不认中文编程是

2.有人认为,“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?

银色子弹(英文:Silver Bullet),或者称“银弹”“银质子弹”,指由纯银质或镀银的子弹.在欧洲民间传说及19世纪以来哥特小说风潮的影响下,银色子弹往往被描绘成具有驱魔功效的武器,是针对狼人等超自然怪物的特效武器.后来银色子弹常被用做致命武器的代言词.被比喻为具有极端有效性的解决方法,作为杀手锏[1]  .最强杀招.王牌等的代称. IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表的一篇关于软件工程的经典论文,便以<没有银弹:软件工程的本