也是一封信的代码
技术文字照理是写给机器的,这六篇却是写给人的。读的时候,留意每一篇心里装着的那个读者:握着算筹的人,下一位程序员,熬夜调试的同事,被怀念的朋友,多年以后打开源文件的陌生人。

-
第 1 步:九章算术·方田(分数诸术)
可半者半之;不可半者,副置分母、子之数,以少减多,更相减损,求其等也。
早在有人敲出第一行程序之前,《九章算术》就把一个算法写给了人看:能折半就先折半,不能就把分母、分子并排放好,以少减多,更相减损,直到两数相等,整套步骤都是说给手持算筹的人听的;两千年后,一份风格指南也从这份体贴出发。
-
第 2 步:PEP 8 – Style Guide for Python Code (Introduction; A Foolish Consistency is the Hobgoblin of Little Minds) PEP 8:愚蠢的一致性
One of Guido’s key insights is that code is read much more often than it is written.Guido 的一个关键洞见是:代码被阅读的次数远多于被编写的次数。
PEP 8 的出发点是:代码被阅读的次数远多于被编写的次数;它还告诉你,照着它的规则反而让代码更难读的时候,就别照着做;它引用的那份 PEP,把一整套理念装进了十九行。
-
第 3 步:PEP 20 – The Zen of Python PEP 20:Python 之禅
Simple is better than complex. Complex is better than complicated.简单胜于复杂。复杂胜于凌乱。
写下十九条,第二十条留给读者;它最初发在邮件列表上,至今只要在 Python 解释器里敲下 import this,就会印出来;网络那套编了号的备忘录,也给一首圣诞诗留了位置。
-
第 4 步:RFC 968: ‘Twas the Night Before Start-up’ RFC 968:启动前夜
I twisted my fingers and counted to ten; an off-by-one index had done it again...我绞着手指数到了十; 又是一个差一的下标惹的祸……
它和别的 RFC 一样编了号,照例注明“本备忘录可不受限制地分发”;瑟夫这首戏仿的圣诞诗,最后点出了每个程序员都认得的元凶:差一错误;十三年后,他又用同一套文件纪念了编辑这套文件的人。
-
第 5 步:RFC 2468: I Remember IANA RFC 2468:我记得 IANA
If Jon were here, I am sure he would urge us not to mourn his passing but to celebrate his life and his contributions.如果 Jon 在这里,我确信他会劝我们不要哀悼他的离去,而要庆祝他的一生和他的贡献。
波斯特尔编辑这套文件将近三十年,替整个网络管着编号;瑟夫称赞他留下的文件“不只有技术的,也有诗意的、异想天开的”;最后一步,是三行站在许可证位置上的祝福。
-
第 6 步:The SQLite blessing, and “SQLite Is Public Domain” SQLite 的祝福
May you share freely, never taking more than you give.愿你自由分享,所取永不多于所予。
SQLite 的每个源文件开头,没有法律声明,只有一段祝福:愿你行善而不作恶,愿你宽恕自己、也宽恕别人,愿你自由分享,所取永不多于所予;代码也可以是一封信,书架上最直白的证据就在这里。