当然,这背后潜藏着的,其实是这样一种根深蒂固的问题心态:你程序员只有夜以继日地埋头苦干,才能证明自己拥有足够的职业热情。
然而事实上:
只有一小撮儿怪咖才能承受这样的两头耗;
程序员与时俱进才能造福东家,而东家需要提供这样的学习机会——在工作之外;
再一流(再拼命),他们也要有编程之外的生活,也要担负许多工作之外的职责;
自学成才者毕竟是少数,所以,大部分程序员需要足够的切磋与讨教——在工作之外。
一句话:程序员也是人。是人就要过人过的日子,要赡养父母、生儿育女,要处理猝不及防的各种琐碎和意外,也要遭遇越来越常见的情绪疾病……在这样的重重包围下,身为凡夫俗子,谁还能日复一日地在8小时之后继续苦干?还有,承认吧:谁不厌烦开源社区?让一群20多岁、薪水微薄的毛头小伙儿一天24小时埋在代码堆里,那么他们所有的后勤工作是不是都由你来负责?你替他们请家政、管孩子?又或者,他们身体有恙了你给他们支付医药费?
话糙理不糙。不是么?
当然,这并不等于说程序员就该死守8小时以及停止自我成长(某些程序员,别把本文的前半部分当成借口。)问题在于:每天的时间的确固定而有限,我们该如何最高效地利用它们,从而让自己真正优秀起来?
首先,应该彻底摒弃“事业即一切”的想法。某些程序员属于“不需扬鞭自奋蹄”型儿的,老板不施压他自己却压力感爆棚。他会为了快点读完某本书而缩短睡眠,会为了赶进度而冷落自己的伴侣及子女,甚至会为了某个开源社区而牺牲自己的社交和爱好……不,不,不,从长远来看,这完全是一笔赔本买卖。程序员会发现自己越来越不幸福,甚至会带着满满的负能量投入工作,从而进入效率越来越低的恶性循环。所以,“事业即一切”的想法,必须彻底摒弃。
其次,想方设法提高8小时的效率。程序员可以与同事搭配编程,可以多读他人的代码,可以多多发问,也可以在帮助别人的过程中实现自我提升。这方面没有一定的套路,程序员务必要自己动脑开发。
第三,可以开口请求老板掏钱让你们长见识,譬如带你们参加某些大会之类的。当然,如果自己“学有余力”,还可以请求参加当地的职场交流会。对员工的这种慷慨最终会惠及自己,所以没有几个老板会拒绝这种要求。万一被拒,程序员就该明白老板不重视自己、觉得自己可有可无,而这时候,就该考虑另谋高就了。
第四,可以利用碎片化时间(譬如午休时、乘车时)阅读,甚至可以利用这段时间开发个小工具提高团队的工作效率,当然,如果在此过程中能用上新技术或新语言,就更带劲了。不要害怕尝试新事物!
最后,不要因拥有编程之外的爱好而有负罪感。因为正当的爱好可以改善人的情绪和精力,也可以提升人的创造力,最终帮助你成为更出色的开发人员。
当然,如果你真的愿意在8小时之外继续编程,那就该“做一样成一样”。在这方面我的心得是:给自己定下严格的时间限制,逼自己按时交作业。一旦成功,你将倍受鼓舞。之后,你可以把这类经历上传到自己的博客或社交平台上,当然,别忘了写入自己的简历——这会给你增加不少砝码。