论程序员的三大陋习和美德——懒惰,急躁和傲慢

今天看到得到罗胖介绍极客时间的文章里有一段话:

Perl 语言的发明人 Larry Wall 有一个经典金句, 他说,"优秀程序员应该有三大美德: 懒惰,急躁和傲慢" (Laziness, Impatience and hubris)。

这一听你肯定会说这不明摆着都是陋习吗?怎么还成了美德?"官方"说法, 大致如下:

懒惰,是一种品质,它会使你花很大力气去规避过度的精力消耗,敦促你写出节省体力的程序。急躁,其实是一种情绪,是计算机偷懒或没有充分发挥计算机能力时感到的一种不爽。它会促使你写出超越预期的程序,而不只是响应需求。傲慢,极度自信的表现,会激发程序员写出别人挑不出毛病程序的追求。

你可能会想, 这不强词夺理,胡搅蛮缠的诡辩吗? 技术出身, 混迹程序员圈超过十年的我来告诉大家:

程序员不善于言辞, 特别是入职场三五年成长快速期, 这一特定人群内心通常有一种说不明白的自信心, 是逻辑思维超过周边人的严密而情商和职场经验尚不丰满这种矛盾场景冲撞下的产物。

懒惰:不爱出门, 中午点外卖, 吃完宁可多睡会不愿意出去晒太阳. 项目上线领导说开个庆功会, 程序员说让我多歇歇; 领导说出去旅游一下吧, 程序员说让我多睡睡; 领导说出去吃酒喝肉, 程序员说让我早回去看看老婆儿子吧. 这可能是给大家懒惰的印象来源, 但也是平时专注于电脑前撸代码的"症状", 这个专注可不是一般的专注, 问题没解决可不会随便离开工位, 遇到疑难杂症查遍搜索引擎试遍各种方法手段实在不行自己再造个轮子出来也得把它解决了这种执着是程序员的普遍心态, 所以才会有宁可呆在电脑前一整天, 也不愿意出去晒太阳五分钟的劲头, 这对于程序员来说都是在浪费解决问题的时间;作为他们身边的家人朋友或领导应该更多的关怀这些"懒惰者".

急躁:"急躁是态度, 程序员不能佛系, 不能随遇而安, 不能立志成为庄子那样的人。"确实, 别看程序员懒, 属于他们问题的时候一定要能"急"起来, 这才是优秀程序员的品格. 生产环境出BUG, 就要有一种飞蛾扑火般的悲壮感。为什么说悲壮? 生产出BUG, 程序员背锅, 不光背锅还得第一时间解决, 不光第一时间解决还得默默接受接下来的KPI扣分甚至公司的处罚通告, 这是大部份程序员不可逆的命运之一. 再说回来, 日常工作中, 我是喜欢这种把急躁表露出来的程序员, 比如你会突然听到某人拍桌子吼到"艹,还不信搞不定你!", 又或者听到突然在骂"R! 这也能内存溢出!", 以为在跟谁吵架抬头望去原来是在对自己电脑说话. 他们这种急躁其实体现出来的是一种肯定能把这问题摆平的满满自信心, 以我的经验看这类程序员往往后面都会成为专精深的一批代表。

傲慢:极客精神,代码强迫症, 其实最后的本质都可以归纳为: 追求卓越. 对技术创新抱有狂热兴趣、并且追求极致的精神。当然也有不少程序员并不对创新有兴趣, 但通常都对自己手里的代码要求完美, 有精简的写法, 有良好的扩展性, 美妙绝伦的解耦技巧, 最后在庞大繁杂的系统中稳定运作, 并对预计到的业务变更而只需要意料之中的配置小小变动一下而感到内心的自豪(话外音, 估计换别人来就做不到这么精妙的设计, 我真TM厉害, 哼哼. )其实呢也只能放在内心, 没人知道的~~. 这种傲慢是一种信心, 这是在一次又一次的历练中长成并积累下来的心态。这种傲慢其实程序员不会外显, 只是在谈话的片段中会隐隐感觉到对别人的方案和意见的不屑. 这一类人勇于挑战更难更复杂的解决方案, 往往会成长为某家公司技术团队的中流砥柱。

最后我想说, 作为当代高智商, 高收入的群体工种代表, 程序员身上已经有太多的标签, 比如IT民工,码农,程序猿,攻城狮; 提到他们, 多数人在脑海里呈现的是不修边幅、邋邋遢遢、常年格子衫、少言寡语、孤僻、老实、人傻、钱多、死得早...这些标签以负面评价为占多数, 其实仅仅是不高调不张扬,是低调或内敛给到人的直观感受, 仅仅是豪情满志要改变天下的气势最终落得个过平凡日子周边人却少于理解和关爱的结果, 然后再人传人的调侃而已. 但一定别忘了,这背后是一代一代程序员带着追求和倔强的精神, 撑起了第三次和第四次工业革命/信息及科技变革的框架, 是当今社会维持企业或国家创新和高速发展的主力军, 应该得到大家的掌声和最高敬意!