原创 宋宝华 Linux阅码场 2017-12-15


岁月似血饮狂刀,在额间砍出道道年轮。年复一年,日复一日的提交代码、bug修复湮灭着我们的激情,也埋葬着我们的梦想。曾以为自己,可以仗剑天下,昂首四方,到如今守着2米方桌,才发现,尚不足以独善其身,终日不过为柴米油盐所累。尤为悲催之事,程序员一代代在40岁之前老去,也曾鏖战通宵终于攻克bug,也曾挥毫泼墨绘制软件蓝图,而当程序员老去时,过去种种之荣耀,也不过是被用来舔邸今日是创伤。十年壮丽天王府,化作幻宅乌鸦飞。10年辉煌的程序生涯,似乎是对今日处境的最大嘲讽。是什么造就了今日的局面?

一类程序员是这样的: 另一类程序员是这样的: 经历是过程,经验是灵魂。多年的工作,如果都不思考,所有的事情都是得过且过,那只是工作经历,它还不是经验。使我们立于不败之地的,恰恰不是经历,而是经验。你在华为工作N年,这说明不了什么问题,在华为工作N年的海了去了。

做好一个程序员,应该是从不放弃自己开始。很多人碰到一个bug,他首先想到的是问人,而不是自己去探索、发现和修复。这个时候,他实际上是在放弃自己,因为他明明是可以修复的,但是他放弃了。放弃的时候,也失去了一次积累经验的机会。别人的指点,代替不了你探索bug的过程的艰辛,也创造不了bug修复后的喜悦。

其次,是要勇于发现新事物,不断地学习和提高。所谓既要低头拉车,又要抬头看路。自己每天面对的,哪怕是再无聊的小的片面的知识,日复一日的低级bug,但是,我们仍然可以看看周围,看看通过这些无聊的东西,能不能扩展知识面,学习一些有聊的东西。好的程序员,总是不断地通过每天的日程工作,学习周遭的知识,从而不断建立健全的知识体系。

再次,业余时间是升华的关键时间点。白天大家都在处理无聊的杂事,可能静不下心来学习。真正的差距,极有可能是通过业余时间拉开的。业余时间还学习,显然是需要程序员本身是热爱自己的本职工作,这样他才可能安静下来学习。

最后,程序员可能要学会增加能见度,制造可见性。比如做Linux,发patch是一个增加能见度的好办法。Patch发的多,质量高,很容易拿到special offer。在同等“经历”的情况下,由于“经验”丰富,可能拿比“经历”丰富的人高得多的offer。