2026-09-20
每日一句 · 技术圈趣话
“If debugging is the process of removing bugs, then programming must be the process of putting them in.”
如果调试是移除bug的过程,那么编程一定就是引入bug的过程。
— Edsger Dijkstra(常被引用,但确切出处存疑)
背后的故事
这句话在技术圈广为流传,通常被归功于计算机科学先驱 Edsger Dijkstra。它以一种幽默而深刻的方式揭示了编程与调试之间的悖论:程序员在编写代码时,不可避免地会引入各种缺陷(bug),而调试正是为了找出并修复这些缺陷。然而,如果没有编程时“放入”的bug,调试也就失去了存在的意义。这句话常被用来调侃软件开发的现实——完美的代码几乎不存在,每个程序员既是问题的制造者,也是问题的解决者。它提醒开发者保持谦逊,接受bug是开发过程的一部分,并重视测试和调试环节。在黑客文化和开源社区中,这句话也常被用作自嘲或对新手进行温和的警示。
小测
1. What is the main implication of the quote 'If debugging is the process of removing bugs, then programming must be the process of putting them in'?
2. To whom is this quote most commonly attributed?