为尴尬错误辩护

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

当孙子整理书架时,他惊讶地发现书散落一地,展示了一种高级灾难管理策略。这与程序员展示代码时被发现是一堆乱七八糟的东西相似。最终,我们不得不重新写代码。

🔎

延伸解读

从书架到代码:灾难管理的通用策略

文章将孙子弄乱书架后的反应与程序员展示混乱代码后的行为类比,揭示了一种“高级灾难管理策略”。第一步是表现惊讶,以争取时间并引发怀疑;第二步是寻找替罪羊,比如依赖的模块或语言本身;第三步是为错误辩护,声称是“特性而非错误”。这种策略在个人项目和团队协作中都有体现,但最终会被发现,因为同事往往经验更丰富。

重写代码的代价与收益

文章提到,Paella 项目从 v0.07 到 v0.08 体积增加了 80%,却没有添加重要功能,目的仅仅是让代码更易读、更面向对象、更易复用。这种“恢复阶段”需要不情愿的重写,虽然可能增加代码量,但能提高可读性和可维护性。作者坦言,这个过程很艰难,因为项目本为探索,却常被追求整洁的欲望拖慢进度。

整洁与进度的权衡

文章通过祖父对孙子的鼓励,点明了“保持整洁并不重要,重要的是完成更重要的事情”。在编程中,这反映为探索性项目往往更注重发现和进展,而非代码的即时整洁。然而,当代码需要共享或长期维护时,整洁性又变得关键。作者的经历表明,在进度和整洁之间找到平衡,是业余程序员和团队都需要面对的挑战。

❓

Q&A

孙子整理书架时发生了什么事情?

孙子在整理书架时,书籍散落一地,表现出一种高级灾难管理策略。

高级灾难管理策略的第一步是什么?

第一步是表现惊讶,以争取时间并引发怀疑。

程序员在展示代码时常遇到什么问题?

程序员常常会发现自己写出的代码是混乱的,难以理解。

在项目中,如何处理错误的代码?

处理错误的代码通常需要重新编写,尽管这可能会导致代码体积增加。

为什么保持整洁在项目中并不重要?

保持整洁的欲望常常会阻碍项目的进展,重要的是完成更重要的事情。

祖父对孙子的鼓励是什么?

祖父告诉孙子,保持整洁并不重要,重要的是完成更重要的事情。

🏷️

标签

➡️

继续阅读