《代码简洁性:软件基础》现已免费开放获取

作者宣布将《代码简洁性:软件基础》一书免费提供下载。本书探讨软件设计的基本法则,旨在帮助开发者构建更优质的软件。文章也讨论了如何构建优秀的平台、AI时代开发者如何提升自我等话题。

Code Simplicity

Code Simplicity: The Fundamentals of Software is Now Free

2022年5月16日 by Max Kanat-Alexander

大约一年前,一位Twitter用户在一条推文中提到了我以及其他一些编程书籍作者,他描述了在其所在国家获取计算机编程书籍所面临的各种障碍。我之前也隐约意识到这些问题——世界上有许多国家,一本书的美元价格可能相当于一个人整整一周的薪水。

我写书都不是为了赚钱——我写书是为了传递信息并帮助他人。我通常认为,如果人们为一本书付了钱,他们更有可能真正去阅读它,而我的目的就是让人们阅读这本书,因为这是我能让软件行业变得更好的唯一途径。

这本书确实仍在销售(这对于一本计算机书籍来说很不寻常,因为它已经出版了十年),但它赚的钱对我而言并不重要——让人们读到这本书才是重要的。

当我意识到,地球上有一大群人如果必须付费,就完全被合法阅读这本书拒之门外时,我与O’Reilly的编辑们合作,探讨是否能让这本书完全免费。

事实证明,由于一些超出他们控制的复杂原因,他们无法让这本书在亚马逊或O’Reilly商店免费。但他们可以将本书的发行权授予我,去掉封面,并允许我免费发行!

所以,现在你可以免费下载《代码简洁性:软件基础》了!我希望这能让更多人阅读并理解软件设计的基本法则,并有助于让软件开发世界变得更美好。

分享

  • 点击在Facebook上分享 (在新窗口中打开)
  • 点击在LinkedIn上分享 (在新窗口中打开)
  • 点击在Hacker News上分享 (在新窗口中打开)
  • 点击在Reddit上分享 (在新窗口中打开)
  • 点击在Threads上分享 (在新窗口中打开)
  • 点击在X上分享 (在新窗口中打开)

7 条评论 请发表回复

  • sergey 说: 2022年5月16日 下午9:45 太棒了,这本在许多其他书籍中堪称最佳的主要编程书籍现在免费了。谢谢! 回复

  • Max Kanat-Alexander 说: 2022年6月7日 上午2:03 谢谢,sergey!我很高兴能以这种方式帮助到大家。 回复

  • STEVEN GORDON 说: 2022年5月17日 上午8:32 你的书中将测试完全视为事后才考虑的事情,这暴露了你对软件开发理解的缺陷。 自动化测试应该优先,而不是最后。它是表达和验证代码意图(而不是那些随着时间的推移变得越来越不真实的妄想式注释)、通过安全重构来增加简洁性、以及在整个生命周期中维护代码的关键。 回复

  • Max Kanat-Alexander 说: 2022年6月7日 上午2:03 嘿,Steven。我想你可能误解了这本书关于测试的意图或内容。关于这个话题有很多可说的,但我写过的最好的总结在这里:https://www.codesimplicity.com/post/the-philosophy-of-testing/。 回复

  • murtagy 说: 2023年5月26日 上午3:21 我猜你没有在那种测试会追着你、并锁定糟糕接口和奇怪契约的代码库中工作过。 回复

  • Yubraj Lama 说: 2022年6月20日 上午12:12 《代码简洁性》中的软件设计基本法则太棒了。谢谢你,Max。 回复

  • Max Kanat-Alexander 说: 2022年10月14日 上午5:21 谢谢! 回复

请发表回复取消回复


Max Kanat-Alexander 5天前 我在科技行业工作了三十多年,过去十二个月是我经历过的最疯狂的一段旅程。似乎每隔几周,就会出现一些新工具,准备颠覆世界上每个人编写软件的方式。 在这样的环境中,我们还能对未来做出任何预测吗?如果我们想帮助提高开发人员的生产力,除了部署编码代理之外,我们还能安全地投资什么吗? 是的,有一些我们现在就可以做的事情,无论未来带来什么,都能帮助保证我们的软件工程师有一个美好的未来。这就是我在AI工程师代码峰会上演讲的主题,现已发布在YouTube上: https://lnkd.in/eXC4GyeG 阅读更多《AI编码代理时代的开发者体验 – Max Kanat Alexander, Capitol One》 lnkd.in 755分享

Max Kanat-Alexander 12月17日 有些人不理解结果是如何或为何产生的。他们只是要求结果,而忽视了实际产生这些结果所需的一切。 老板:“生产更多小部件!” 工人:“但是机器坏了。” 老板:“别找借口,只管生产更多小部件!” 下一周,老板回来了。团队不知怎地生产了更多小部件(他们是手工做的,都累坏了)。老板祝贺自己如此有效。他再次说:“这周,我们要生产更多小部件!” 生产的小部件略少了一些。老板:“你们都是干什么吃的,无能吗?” 工人:“嗯,鲍勃负责做小部件的外壳,他胳膊骨折了,而且……” 老板:“我不需要知道所有细节,只管生产更多小部件!” 再下一周,几乎没生产出什么小部件。老板勃然大怒:“难道我周围全是无能的人吗?” 嗯,不是的,只是生产小部件有一个流程和技术。那个流程出了点问题。老板不理解它,也没有确保它被修复。事实是,生产大多数产品都有一套技术(应用科学的方法)。你不能只关注最终结果而忽视过程,因为过程“无聊”或“太细节”或“不性感”。如果你领导团队,你应该了解在你的领域中如何创造出伟大的成果,这样你才能确保在你的团队中也能实现。 如果你想要好的结果,你就要通过落实所有创造好结果所需的部件和步骤,然后确保这些继续运作来达成。你当然仍然要设定高期望。甚至要求严格也没问题。但是,你要让要求真正得到满足的方法是,专注于那些能产生伟大成果的输入,而不是仅仅不断要求最终结果。 阅读更多 5110分享

Max Kanat-Alexander 12月13日 软件世界的许多人都从事“平台”工作。其中一些结果很棒,另一些……嗯,就不那么棒了。我在这方面有一些经验,认为有些人可能想了解我在如何构建一个伟大的平台与一个糟糕的平台方面学到了什么: 阅读更多《如何构建一个伟大的平台》 它涵盖了以下问题:

  • 平台到底是什么?
  • 你应该给平台用户多少自由?
  • 是什么导致平台变得臃肿和没用?
  • 构建一个伟大平台的过程应该是怎样的? 以及更多内容。我写下这些,完全是希望能帮助你和你的用户。#平台 #平台工程 #开发者体验 #软件 #软件工程 阅读更多《如何构建一个伟大的平台 » Code Simplicity》 lnkd.in 482分享

Max Kanat-Alexander 12月10日 我认为很多人都在担心自己是否会失业,被AI取代。以下是我认为未来将会发生的情况: 我们被赠与了有史以来最棒的学习工具。你可以用AI在更短的时间内学到比以往任何时候都多的东西。我们还被赠与了一个可以替我们完成部分工作的工具,通常质量比我们自己做的要低一些,但速度更快,需要我们思考的更少。 一些人将利用这个工具,变得比以往任何人都更快地成为其领域内的世界级专家。他们将深入学习,充分理解他们的领域,从该领域的最高层原则到事物如何运作的最底层细节。然后,他们将使用这个工具来协助他们更快、更有效地工作,但最终产品的质量将来自于使用者的理解。在未来几年里,这些人的生活、事业和成功将急剧加速。 另一些人则会看到一条捷径——一个无需理解结果就能更快完成工作的系统。他们将让AI为他们创造一些他们自己不完全理解,但“似乎能用”的东西。最终,AI在产出结果方面会变得比他们更好。即使AI产出的结果仍然不完美,这与用户参与时一样,因为用户已不再足够了解自己的领域,无法贡献任何有价值的东西。这些人将面临失业的危险。 这两类人一直存在——一类人深深关注专业性,另一类人则在寻找获得即时薪酬的最短路径。如果非要我给你任何发自内心的建议,那就是:现在比以往任何时候都更是时候去真正深入地理解你能理解的关于你领域的一切,并成为你能成为的最棒的专业人士。我相信,不仅你的未来取决于此,实际上未来社会创造的所有产品的质量也取决于此。我们可以生活在一个接受由我们不理解的、盲目的自动化所产生的平庸之品的社会,也可以将自己提升到一个前所未有的理解水平和生活质量。选择权在我们手中。 阅读更多 13217分享

加载更多


© 2025 版权所有。由 The Fox 提供支持。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计