A failed test is a clue. Follow the evidence.
A practical way to move from a red CI job to a defensible root cause: separate observations, hypotheses, and proof.
FIELD NOTES FROM THE WORKBENCH
Storage systems. Reliable tests. AI that holds up.
A notebook for making complex engineering
a little clearer.
A practical way to move from a red CI job to a defensible root cause: separate observations, hypotheses, and proof.
Read the noteTHE NOTEBOOK
Practical notes on engineering and English learning.
A practical way to move from a red CI job to a defensible root cause: separate observations, hypotheses, and proof.
把一句功能描述展开成可验证的行为约定:从八个评审角度出发,明确边界、异常、数据约束与验收证据,并留下可跟踪的问题记录。
从一个单词到能用的表达:分清名词 approach to doing 与动词 approach a problem,再用例句、易错对比和自测巩固。
从 plan to do 到 depend on:四组20词、61个搭配、42个原创例句。逐句看结构,用易错提醒与闭卷小题把表达记牢。
从 accept an offer 到 confirm the details:四组20个新词、60组搭配卡、40个原创例句。分清花钱与收费、借入与借出,用逐句解析和自测巩固。
从 explain something to somebody 到 a piece of advice:四组20词、60组搭配与40个原创例句,分清信息类名词、动词接法和因果方向。
从 reach the station 到 ask for directions:四组20词、60组搭配与40个原创例句,分清到达与离开、引导与跟随,以及旅程、交通和路线表达。
从递归示例末尾的三行代码出发,逐行理解模块身份、函数对象、帮助信息与函数调用,并实际对照直接运行和 import 的不同结果。
从注释原则和 ValueError 出发,理解暂存区、AM 状态、git add .、origin 与 upstream,并复盘为什么推送成功仍可能只上传了空文件。
从 snake_case 出发,逐步解释变量名、常量、单位、数量、内置名称遮蔽和下划线;区分 Google 规则、Python 机制与实践建议。
覆盖第 0—16 章与 99 个原书条目。沿概念、执行状态、Python 代码和验证证据逐节学习,区分已发布与待编写。
这本书适合谁、需要什么基础、三条知识主线怎样相互支撑?用查找首个失败项的小程序,区分看懂、运行、解释、验证与独立应用。
从输入、辅助状态与输出的统计边界出发,逐步分析引用和复制、峰值与累计申请、递归栈、矩阵与树,再用 Python 实验核对内存测量的范围。
把 n、操作计数、O/Ω/Θ、常见增长阶与最好/最坏/平均情况逐层拆开,用可运行示例推导循环和递归成本,澄清原书的符号简化与 Python 隐藏工作。
从判断重复元素出发,拆解正确性、时间与空间、实测与复杂度;逐步读懂 timeit 和 tracemalloc,明确输入、计时边界与证据能支持的结论。
把三个生活场景拆成状态与更新规则,用 Python 追踪二分查找、插入排序和贪心,再用反例区分可行与最优。
从第一次匹配的查找规格出发,解释输入、输出、正确性、终止性和数据组织,澄清索引 0、随机化与操作成本的边界。
用可核验的判断复盘算法入门,检查排序是否丢失重复元素,并把输入规格、边界与不变量带入 AI 代码评审。
五篇主线,从循环状态到调用栈、尾递归、递归树与显式栈。每个知识点都有详细章节,区分原文、推导和补充,方便逐项复盘。
从迭代器和条件检查理解循环机制,用操作计数澄清“for 必须预知次数”和“多嵌套一层就升一阶”这两种常见误解。
通过阶乘、调用栈交互与实际日志,理解每次调用独立的局部状态、返回后如何继续,以及多层递归调用如何共存。
从待完成的加法判断尾递归,用状态表和不变量解释累加器,再区分代码形式、尾调用优化与 CPython 的实际行为。
一棵树记录全部调用,一条路径决定峰值深度。用斐波那契的九节点图和实际计数,看清重复子问题,再比较缓存与循环。
从求和到树的后序遍历,观察显式栈怎样保存参数和待完成动作;比较状态数量、输出顺序、深度约束与可读性。
Fault injection gets interesting after the fault. Define what recovery means from the host, data, and system perspectives.
Turn an impressive demo into a repeatable evaluation with explicit outcomes, multiple trials, and readable traces.
Version the behavior you expect, compare it against a baseline, and keep enough evidence to understand regressions.
从动态步长、条件终止到用户交互,理解 while 与 for 的控制机制,以及两者的适用场景。
Think about the state that must stay consistent, then make the whole read–check–write operation participate in the same protocol.
Try another phrase or explore all topics.
— You’re all caught up. There’s always more to understand. —
THE COMMON THREAD
Observe carefully.
Make the idea testable.
Let the evidence lead.