书籍介绍
这不像一本教人写代码的技术书,而像一份关于'如何长期经营代码'的诚恳自白。三位作者把软件工程重新定义为'随时间不断集成的编程',核心只围绕三个问题展开:代码如何在生命周期里持续适应变化,组织如何在增长中自处,以及如何在时间、规模与成本之间做取舍。书中大量案例的解决方案并非技术,而是policy与项目管理——很多人读完后发现,真正有价值的是前三分之一关于团队文化、沟通与协作的讨论,而非后面的工具清单。它适合那些已经越过'写出能跑的程序'、开始为'几年后还有人能维护'而焦虑的工程师;也适合愿意接受它'啰嗦、枯燥、缺乏拍案叫绝'这一缺点的读者。读它更像是一次对工业级工程思维的集体复盘,而非获取可复制的Google规模秘诀。
作者简介
Titus Winters is a Senior Staff Software Engineer at Google, where he has worked since 2010. Today, he is the chair of the global subcommittee for the design of the C++ standard library. At Google, he is the library lead for Google’s C++ codebase: 250 million lines of code that will be edited by 12K distinct engineers in a month. For the last 7 years, Titus and his teams have been organizing, maintaining, and evolving the foundational components of Google’s C++ codebase using modern automation and tooling. Along the way he has started several Google projects that believed to be in the top 10 largest refactorings in human history. As a direct result of helping to build out refactoring tooling and automation, Titus has encountered first-hand a huge swath of the shortcuts that engineers and programmers may take to “just get something working”. That unique scale and perspective has informed all of his thinking on the care and feeding of software systems.
Tom Manshreck is a Staff Technical Writer within Software Engineering at Google since 2005, responsible for developing and maintaining many of Google's core programming guides in infrastructure and language. Since 2011, he has been a member of Google's C++ Library Team, developing Google's C++ documentation set, launching (with Titus Winters) Google's C++ training classes, and documenting Abseil, Google's open source C++ code. Tom holds a BS in Political Science and a BS in History from the Massachusetts Institute of Technology. Before Google, Tom worked as a Managing Editor at Pearson/Prentice Hall and various startups.
Hyrum K. Wright is a Staff Software Engineer at Google, where he has worked since 2012, mainly in the areas of large-scale maintenance of Google's C++ codebase. Hyrum has made more individual edits to Google's codebase than any other engineer in the history of the company. He is a member of the Apache Software and an occasional visiting faculty member at Carnegie Mellon University. Hyrum received a PhD in Software Engineering from the University of Texas at Austin, and also holds an MS from the University of Texas and a BS from Brigham Young University. He is an active speaker at conferences and contributor to the academic literature on software maintenance and evolution.