20 本软件开发人员必读书籍

原文链接: https://dev.to/awwsmm/20-most-recommended-books-for-software-developers-5578

译者:郑嘻嘻

人们常常犯错。例如下错赌注,在房地产泡沫即将破裂前购买房产,持续着不健康的饮食。有时因为听从了别人的建议,导致我们做出错误的决定。

尽管如此,那些有着不同生活经历的人们,给我们提出的建议,或许是一笔宝贵的财富。 如果有人花时间读完整本书并强烈推荐它,也许我们应该听一听。如果有 100 个人读完整本书,并且推荐它,那一定值得我们读读。遵循这个逻辑,我建立了一个元清单:在统计了各个书籍推荐清单后,整理出最常被推荐的书籍。

我整理了数十位程序员、经理、职业教练以及其他行业专家的推荐资源,形成这份元清单——最受推荐的 20 本软件开发人员必读书籍 。这个列表的所有数据源都可以在 我的GitHub仓库 中免费获取。 截至 2019 年 10 月 19 日,我的元清单引用了 36 份资源,总共涵盖 297 本书籍的推荐。

我做这件事,主要是为了整理以后自己要读的书,同时也是为了帮助一些人,他们往往想要获得好的推荐,却常常迷失在各种不同推荐清单中。如果我们能根据所有人的建议统计出一份推荐清单,为什么还要依赖某个人的建议呢?另外,感谢互联网提供丰富的资源。

以下是我编写这份清单的经验法则:

  1. 寻找尽可能多的推荐资源,但是那些请求推荐的文章不包括在内。
  2. 一本书的推荐次数,涵盖了不同版本的推荐,但是不会重复计算同一篇文章推荐多个版本。
  3. 引用资源必须是作者认真写的书籍推荐文章,不包括那些作者仅仅简单地罗列已读或在读书目的文章。
  4. 引用资源推荐的书籍是针对特定级别的开发人员(例如 CTO、初级开发人员、新手)。
  5. 我尽量避免引用包含一些特定技术(比如 PHP、 CSS、 Java)的资源,但是仍旧无法避免一些引用资源中夹杂着这些类型的书。
  6. 本清单适用于“软件开发人员”、“软件工程师”、“开发人员”、“程序员”和“编码员”,尽管他们各自有着一些细微区别。

据我所知,这是互联网上最完整的软件开发书籍推荐元清单。 如果你找到了一个软件开发的书籍推荐清单,这个清单没有包含在我的 GitHub 电子表格中,请告诉我。 如果它符合我上面列出的标准,我很乐意将它添加到列表中。

不说废话,元清单推荐的 20 本书籍如下:

上述“推荐指数”是指本书在所有引用资源列表中被推荐的比例。即使一本书推荐指数仅仅是12.5% ,也意味着平均每 8 个开发人员中就有 1 个人读过这本书,并把它推荐给其他开发人员。

更令人惊讶的是前 10 名的书籍。 排名 6-10 的书籍,平均每 4 个开发者中就有 1 个推荐;排名 4 和排名 5 的书籍,平均每 3个开发者中就有 1 个推荐。 排名前 3 的书籍,几乎每一个软件开发者都推荐。这些书籍对现代社会最关键的行业之一产生了巨大的影响。如果你想学习软件开发知识,但你还没有读过这三本书,很可能一半的同事会建议你去读一读。

翻译版涵盖原文主要内容,仅省略了其中每本书的摘要。

Ps: 中文版书籍清单可见豆列:20 本软件开发人员必读书籍