打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Linux中国

蹲在马桶上编程

来自:Linux中国  2014-05-11 00:00:00 |
阅读原文

5点钟了。这段代码我已经研究了好几个小时,半天写出一行。这真是一种折磨。有些天里,代码会不由自主的从脑子里溜到我的指尖。可今天不是。

我的任务是往一个类里添加一个新功能。“Easy”,我想。“我写的这个类,现在去扩展它,怎么也不应该太难。”于是,在饱饱的午餐后,我就开始坐下来编程。

开始一切都很顺利——我有个不错的主意,知道如何将这个新功能放进这个类里。然而,越往细里分析,我开始发现我的妙主意并不是那么好。这个功能需要的数据在这里无法获取到。我尝试了各种激进的方法,使得这个类混乱不堪,bug横生。修改后的代码的单元测试几乎没有成功通过过。

接下来的几个小时里我感觉就像是在兔子洞里越掉越深,最后完全认不出自己写的代码。我反复的对比修改后的代码和修改前的原始代码,试图能清楚什么地方出了问题。我的脑子已经无法理解这段代码为什么能运行起来。已经不知道我要把它改成什么样。情况很快变成了我和计算机之间的一场拳击。“编译呀,该死的,赶快编译!”

于是到了现在,5点钟了——一个小时后就是下班时间。我几乎放弃今天完成这个功能的计划。“不可能了,”我想。“光把这些乱糟糟的代码理清楚就需要1个小时。”

我沮丧的站起来,耷拉着头,慢慢往卫生间走去。我坐在马桶上,深呼吸——就在这时,灵感来了!

灵感女神的宝座

忽然间,我想清楚了一切。代码一下子在涌进了我的脑海。我想清楚了这个类,它的所有功能,它的使用场景。我想清楚了如何把我的功能代码加进去。我想清楚了一切!

解决完生理问题后(洗了手),我跑回办公桌前,开始一阵狂敲代码。我敲键盘的速度赶不上那些不断涌进我脑海的代码的速度。在我的手指的重敲下,键盘看起来要散架。电脑和我不再是敌人,我们是最亲密的战友,是为了一个共同的目标走到一起来。

30分钟后,代码编译成功。所有的单元测试都顺利通过。我完整的按着新功能的需求跑了一遍,所有功能点都按预期运行。“我搞定了这无法完成的任务,我成功了!”

当编码的兴奋劲慢慢消退后,我意识到了一个无法回避的事实:我最高效的编程不是坐在计算机前,而是蹲在马桶上。

退一步海阔天空(From Your Code)

现在,我并不是说马桶具有神奇的代码设计的魔法(虽然我承认它是一个伟大的发明)。然而,我要说的是,不论你是要完成多么重大或多么微不足道的编程任务,从电脑前走开,从一个更高的层面思考问题,你的效率至少会提高10倍。不论是去卫生间,还是去公园走一走,或在办公室休息区休息一会儿,远离你的电脑屏幕,这能清醒你的大脑,让你推开树木看到森林。

很多程序员舍不得离开他们的电脑桌。他们认为时间没有花在IDE上都是浪费,担心被别人说不努力工作。“为什么你不在工位上编码!?等着扣薪水吧,”项目经理会这样说。

我认为,这种逻辑是愚蠢的,是反效率的。程序员不是雇来坐在桌边的,或雇来盯着屏幕的,甚至雇来写代码的。这些只是程序员达到他们最终目的的过程,而真正的目标是:为最终用户开发功能。如果我们要是能在远离电脑桌的情况下可以更快速更高效的开发出这些功能,那何乐而不为呢?

总之,在编程时别忘了充分利用马桶。

[英文原文:Programming on the Toilet ]

via: http://www.vaikan.com/programming-on-toilet/

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
电脑系统不激活就会导致很多功能用不了,今天教你两行代码永久激活电脑Windows系统!#程序员 #电脑知识
电脑系统不激活就会导致很多功能用不了,今天教你两行代码永久激活电脑Windows系统!#程序员 #电...
家里七年的老电脑又卡又慢,教你两行代码让它变流畅#程序员 #电脑知识 #涨知识
在马桶上编程
别因为电脑老旧就抛弃它,教你用两行代码让它焕然一新#电脑#程序员#电脑知识
教你两行代码,解决电脑99%的问题!#程序员 #电脑知识
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服