@StasBekman: 《调试艺术》开源免费书现已提供PDF/EPUB格式,并终于有了封面 https://github.com/sta…
摘要
Stas Bekman 宣布其免费开源书籍《调试艺术》现已提供 PDF/EPUB 格式,涵盖调试方法论,侧重于 Unix、Python 和 PyTorch,但适用于任何软件调试。
查看缓存全文
缓存时间: 2026/07/01 14:12
《调试的艺术》开放图书现已提供 PDF/EPUB 格式,并终于配有封面
https://github.com/stas00/the-art-of-debugging#ebook-versions-of-the-book…
尽管书中大量篇幅聚焦于 Unix/Python/PyTorch,但方法论章节适用于任何软件调试场景。
目前全书共 161 页,分为 5 个扎实的章节,后续内容还在持续更新中…
stas00/the-art-of-debugging
来源:https://github.com/stas00/the-art-of-debugging
《调试的艺术》开放图书
这本不断迭代的书将教会你如何:
- 快速解决常规问题
- 让复杂问题变得可调试
脚注:改编自 Perl 的格言:“易事应易为,难事应可为”。
这是一本仍在完善中的方法论集合与可复制粘贴的配方手册,旨在帮助你成功调试简单和复杂的软件问题。部分章节已较为完整,另一些将在后续阶段完成,还有些尚未开始。
除了调试方法论外,本书的第二个重点是分享我所发现的最佳调试工具,让你在过程中“尽量少掉头发”。
简介
我自 1995 年开始从事软件开发,其中大量工作涉及调试。多年来,我总结出多种高效的方法来定位问题根源——这通常是解决问题前最困难的阶段,因为一旦理解了问题,解决方案往往触手可及。
每次我与他人共同调试棘手问题时,对方总会建议我将这些方法分享出来。我曾经认为这过于难以泛化,但最近这一想法似乎生根发芽了。因此,在接下来的章节中,我将尝试分享一些见解,以缓解这个时常令人痛苦的过程。
在真空中撰写调试内容非常困难,而且我过去没有保存案例,所以需要一段时间来逐步充实。预计这些页面将在相当长一段时间内处于“持续完善”(WIP)状态。但我希望一些思路能尽快传递给你,并帮助减轻你在专业或业余项目中调试的负担。
目录
-
Unix 调试工具 -
bash、strace、make、提示符、nohup等 -
编译程序的调试 -
gdb、ldd、nm、LD_LIBRARY_PATH、LD_PRELOAD等 -
Python 程序的调试 -
py-spy、路径、自动打印等 -
PyTorch 程序的调试 - CPU 与 GPU 内存、性能、模型、张量等
-
机器学习项目的调试 (https://github.com/stas00/ml-engineering/tree/master/debug)(外部链接)
更新
我会在我的推特频道 https://twitter.com/StasBekman 上宣布重大更新。
该书的电子书版本
你可以下载本作品的多种电子书格式:
- PDF (https://huggingface.co/stas/the-art-of-debugging-book/resolve/main/Stas%20Bekman%20-%20The%20Art%20of%20Debugging.pdf?download=true)
- EPUB (https://huggingface.co/stas/the-art-of-debugging-book/resolve/main/Stas%20Bekman%20-%20The%20Art%20of%20Debugging.epub?download=true)
我计划每隔几周左右重建一次这些版本,但如果你想要最新的电子书版本,构建说明在这里。
《机器学习工程开放图书》
请务必同时阅读《机器学习工程开放图书》(https://github.com/stas00/ml-engineering),其中包含许多在机器学习上下文下的相关配方和方法论。
贡献
如果你发现错误、拼写错误或希望提出改进,请随时提交 Issue (https://github.com/stas00/the-art-of-debugging/issues) 或贡献 PR。
许可证
本站内容采用 署名-相同方式共享 4.0 国际 许可协议。
我的仓库地图
✔ 机器学习:
ML 工程在线书籍 (https://github.com/stas00/ml-engineering) |
ML 方法 (https://github.com/stas00/ml-ways) |
移植 (https://github.com/stas00/porting)
✔ 指南:
调试的艺术 (https://github.com/stas00/the-art-of-debugging)
✔ 应用:
ipyexperiments (https://github.com/stas00/ipyexperiments)
✔ 工具与速查表:
bash (https://github.com/stas00/bash-tools) |
conda (https://github.com/stas00/conda-tools) |
git (https://github.com/stas00/git-tools) |
jupyter-notebook (https://github.com/stas00/jupyter-notebook-tools) |
make (https://github.com/stas00/make-tools) |
python (https://github.com/stas00/python-tools) |
tensorboard (https://github.com/stas00/tensorboard-tools) |
unix (https://github.com/stas00/unix-tools)
相似文章
@StasBekman: 当我正在编写《Machine Learning Engineering》和《the Art of Debugging》这两本书时,我非常享受这个过程,我……
Stas Bekman 正在撰写关于机器学习工程和调试的书籍,并想知道社区是否会阅读它们,同时指出这些书可以成为AI的技能文档。
@eigensteve: 我写了一本新书!!!Optimization: A Bootcamp for Machine Learning, Inverse Problems, and Control 现在即可预订(7月…)
Steven Brunton 宣布他的新书 'Optimization: A Bootcamp for Machine Learning, Inverse Problems, and Control',现已开放预订,并配套提供免费PDF、YouTube视频和Python代码。
Xavier Leroy关于编程中控制结构的新书
Xavier Leroy宣布了一本关于编程语言中控制结构的新书,涵盖从goto到代数效应的内容,提供CC许可下的免费预览。
@KirkDBorne:更新了2204页的数学PDF电子书:《代数、拓扑、微分学与优化理论——面向计算…》
由Jean Gallier和Jocelyn Quaintance发布的更新版2204页数学PDF电子书,涵盖代数、拓扑、微分学以及面向计算机科学与机器学习的优化理论。
@Goutamdilesh: 10000+ 页编程笔记 - 免费 ❯ Java http://goalkicker.com/JavaBook/ ❯ Python http://goalkicker.com/PythonBook/…
来自 GoalKicker 的免费编程笔记(PDF)合集,涵盖 Java、Python、JavaScript、SQL、DSA、C 和 C++。