喜爱读书,就等于把生活中寂寞无聊的时光换成巨大的享受时刻。有了书,各个领域的智慧,几乎触手可及。我们能有幸站在前辈、巨人的肩膀上,看更远的风景。
这些经典的技术好书,由阿里九位技术大牛为你倾情推荐,与你一起共同成长、探索未来。
推荐书籍:《Effective Software Testing》
推荐者:霜波(资深测试开发专家)
推荐理由:和其他传统软件测试书籍相比较,对自动化和持续集成的方案研究比较深入,能直面自动化和持续基础现阶段的一些问题,将软件测试的周期提前到需求,设计和开发的阶段,估计产品和开发一起加入测试的工作。同时对于质量的管理有一些自己的见解和实践经验,推荐给所有技术同学一起共享。
推荐书:《程序员修炼之道-从小工到专家》
推荐者:叔同(资深技术专家)
推荐理由:这是一本阐述方法论的书,关于程序员的自我修养,解决问题的方式、态度和哲学,是向高级程序员和专家进阶的思想启蒙书。从基本原则到编程风格,从思维方式到职业规划,内容覆盖广泛,兼具思想性和实用性,非常开拓视野提升格局。行文简单易懂,运用和实践却是不易,值得一读再读。
推荐书籍:《设计模式之禅》
推荐者:孤尽(阿里巴巴代码中心)
推荐理由:对于设计模式,它能够指导我们编写出可维护性好、可扩展性强的代码,对于设计模式的理解层次,我分成五个等级,以金庸小说人物为例:第一级是杨铁心,即只知道所有设计模式的概念和定义;第二级是丘处机,能够写出相关设计模式的demo;第三级是梅超风,能够在现实中找出各个设计模式的原型;第四级是郭靖,能够在系统中抽象出来设计模式,并且合适地使用,有效隔离变化点。第五级是扫地僧,完全忘记设计模式,但写出来都是设计模式。《设计模式之禅》是一个非常好的入门,至少武功能够达到郭靖层面,讲解各个模式比较浅显易懂,促进大家在软件设计能力上的进步。
推荐书籍:《Spoken Language Processing: A Guide to Theory, Algorithm and System Development》
推荐者:智捷(资深算法专家)
推荐理由:“当今的知识世界是一个扁平的世界,很多人工智能算法已经通过open source的工具和opensource的数据库,使得大家可以轻易的获得并复现出结果。在这些“新知”之外,今天咱们要推荐一本老书,即由黄学东(微软Technical Fellow,语音及语言AI技术负责人)、Acero(Apple Siri高级总监)和洪小文(微软亚洲研究院院长)在多年前合著的语音和语言入门级专著。这本书深入浅出,将基础理论、语音识别、语音合成、语义理解和对话系统等进行了系统性的介绍,是了解口语对话系统最基础模块的一条捷径。通过这本书的‘面’上的引导,我们可以发现感兴趣的‘点’,并从这些点上更深入的进行研究和实践的工作。”
推荐书籍:《机器学习导论》
推荐者:粤谦(资深技术专家)
推荐理由:这是一本很好的机器学习入门级教程,非常适用于高年级的本科生、研究生等同学学习机器学习领域的知识。这本书基本上涵盖了机器学习的相关知识,从无监督学习、参数方法、非参数方法、线性判别式、决策树、概率图模型、贝叶斯估计,到多层感知器、SVM和核机器、组合学习、强化学习等,都有较为全面的介绍。对算法原理阐述的比较清晰,也提供的相关的伪代码做深入的研究,并附带课程作业,非常适合机器学习的爱好者在熟悉理论基础的同时,可以进一步了解算法的原理并加以实践。
推荐书籍:《Reinforcement Learning: An Introduction》
推荐者:仁重(资深算法专家)
推荐理由:本书是强化学习领域的最经典书籍,它既是初学者打好强化学习基础的必读著作,也是强化学习研究者们需要温故而知新的强化学习宝典。该书的作者Richard S. Suttion和Andrew G. Barto是强化学习顶尖学者的代表,在此领域深耕超过30年。这本书详细地介绍了强化学习发展历程、经典方法以及现实应用。该书第一版于1998年发表,第二版于最近撰写完成。第二版保留了第一版的整体结构,对一些细节问题进行了更深入的剖析(比如:通过策略梯度的推导说明了经典的Tabular Actor-Critic方法的由来),同时也加入最近十几年强化学习领域的重要进展。
同时也推荐我们阿里自己的作品《强化学习在阿里的技术演进与业务创新》,本书从多个实例讲述强化学习如何在工业界应用。强化学习已经在游戏中获得了巨大的成功,但在实际工业界中,大家都还处于初步的尝试阶段,本书给大家提供一些思路,我们是怎么把强化学习应用在实际业务中,以及会遇到什么样的问题,怎么去解决,希望可以给大家一些帮助。
推荐书籍:《Programming Rust》
推荐者:布民(资深技术专家)
推荐理由:随着互联网与移动应用的普及,大规模分布式系统正变得越来越重要。系统构建优势往往可以直接对应到商业竞争优势。与此形成对比的是,系统编程——也就是在资源受限情况下,实现安全、稳定和高性能(并发)系统——并不为大部分程序员所熟知。Rust是一门新兴的系统编程语言,它为安全性和并发而设计,提供高层的抽象,同时有C/C++的性能。希望大家通过阅读“Programming Rust”,不仅能欣赏到系统编程的美,也能帮助普及和推广系统化(编程)思维。
推荐书籍:《Machine Learning: A Probabilistic Perspective》
推荐者:鸿侠(资深算法专家)
推荐理由:当今网络化的电子数据洪水泛滥,大数据公司的每一个项目都需要自动化的数据分析方法。机器学习提供了相应的解决方案,不仅可以自动检测数据中的模式,也可以使用学习到的模式来预测未覆盖到的数据。推荐的这本书使用统一的概率方法为机器学习领域提供了一个全面和独立的介绍。
本书的深度和广度覆盖都很好,涵盖了概率,优化和线性代数等必要的背景材料,并详尽的涵盖了机器学习的最新发展,包括条件随机场,L1正则化和深度学习等比较流行的方向,并且提供了相应算法的伪代码。所有主题都用彩色图像进行了丰富的说明,并从生物学,文本处理,计算机视觉和机器人等应用领域中绘制了实例。
推荐书籍:《Architecture of a Database System》
推荐者:圭多(资深技术专家)
推荐理由:此书是数据库图灵奖获得者Stonebraker老爷子在2007年完成的,全书不长(119页),但极具功底。老爷子通过此书,向大家剖析了一个成熟数据库系统的整体架构,以及数据库的各个核心模块,包括:SQL与优化器、内存和存储管理、事务和并发控制等的设计原则和实现方式,是全面了解数据库系统的第一选择。
以上的技术好书,只是冰山一角,更多技术干货欢迎关注“阿里技术”官方公众号。技术道路,阿里妹与你一同前行~