英文原文:In Which I Mind the Gap
译者注:原文第一段貌似有重复的语句,我理解不够,略去。
一周前,我收到了第一个被打回的补丁。拒绝原因不是“哦,我们将需要一些修改”;我们正在实际地讨论,“我们不想要这段代码”而当场拒绝。
啊!!!!!!!!!
这个补丁为 OpenStack 的队列服务 Zaqar 做的,它在一个基类修改了__getattr__,以允许淘汰子类的相似方法。不是多大的事情,但是这些方法是不同的、足以让它显得不同寻常;还有这事我第一次与 OpenStack 协作,也是我尝试的第一个 bug,它没有明显地标记为“容易”、或适合初学者。
伙计,当我搞定这玩意儿时,我感觉良好吗。减少了 100 行代码,伙计!当 irc 上有人称赞我的工作“令人印象深刻”时,我没有反对。哦,是的,我是一名 OpenStack 开发者。你懂的,令人印象深刻的开发者?
但是……只是有点儿难以理解。
尽管如此,这不是我的问题。我的意思是,他们想要,我就给了他们,因此我算帮了他们一个忙,好嘛?他们知道他们在干什么。在代码评审过程我加了足够多的评论,让它易于理解。
就在它将要被合并的时候,另一名开发者跳出来说了一些我一直感到不安的话。这是复杂的代码,它很神奇,将来看到这些类(class)的人将浪费很多脑细胞才能理解,这本应是简单的,如果它需要被修改的话……他很圆滑,但是消息是清晰的。经过 irc 来来回回的沟通,他们觉得没有必要打这个补丁。
这不太容易听懂。然而,我有些轻松了。我知道我的技能还需要锻炼,但是我对爱好有信心,当看到有经验的开发者对代码感到激动时,它让我嗅出了一点点爱好,我受到了一点儿震动。它是对我工作的拒绝,也是对我爱好的验证。
这是我态度上巨大的转变。在不远的将来,我将崩溃。
我猜,我将给还在那条船上的人讲这个故事。博客不是日记,它们是蓄意的、专业的演示,你的 RSS feed 无休止的成功信息流就是这种体现。他们标红的每个成功,都有 20 个没有记录下来的失败(很可能有一两个灾难)。这就给你一个印象:你是唯一在奋斗的人。
或许在不远的将来,我就首次为 OpenStack 贡献代码的事情写篇欢快的博文。我不会为此道歉,但是我将链接回这篇博文。
如果自信对你而言是一种奋斗,请看看我链接的这幅漫画(中文版),然后以你的爱好为荣吧。