编程可能毁坏你的生活

      许多文章和评论不断地称赞成为一个优秀程序员的好处:敏捷的头脑,出众的抽象思维,每天仅工作数小时就有机会过上优裕的生活。这些正是你所听到的,对吗? 

      可惜的是,从来没有人告诉过你编程会以一种有害的方式极大地损害你的生活。身体上的影响是显而易见的。你会长时间地坐在一把不舒服的椅子中,当然不能摆出舒服的姿势;以富含脂肪、高盐高糖的快餐为食;依靠咖啡或者苏打才能驱除睡意。一位同事曾经说过:如果不是从自动售货机中出来的,程序员是不会吃的

      但是,我对健康危险没有太多兴趣,正如我所说的,它们是显而易见的。那么我想说的是什么呢?

      编程不仅影响你的身体。它更影响你的思维方式。你可能听到一个程序员说:我喜欢Python,因为它符合我的思考方式。。然而,他们真的是从Python中学会如何思考的吗?尽管语言处于被动地位,但是当编程的时候你以不同的方式在思考。没有一个正直的程序员会否认这一点。这就是为什么当你向别人解释我是这样做的时候是如此的困难。因为,你解释的越详细,你思考的方式就可能越不同。正是这种思维上的改变会毁掉你的生活。

      习惯和每天都编写具体过程正是危险所在。它能让你成为一个出色的程序员,也能让你变成一个笨拙的、难以沟通的、令人难受的人。

      编程在我们眼中是一个难题,只要不放弃,你最终可以解决它。在某个地方肯定有一个答案。只要做出足够多的尝试,你肯定可以成功的。难道计算机不伟大吗?在解决问题的时候它给你提供了极大的自由。如果没有其它束缚,你可以准备多种方案,而计算机会乐于去执行每一种。这会给你一个信息:失败不是终点。任何障碍物最后必将被跨越。这在生活中是不现实的。有时候你会发现第二次机会,但时钟的轮子是不会原谅你的。时间总是沿着一个方向在行进。

      当你沉迷于一个编程难题时,你的大脑会不停地思考它。也许你需要设计一个算法或新的架构,也许你要对数据进行组织。这都无关紧要。重要的是,你的大脑会不停的工作直到找到一个解决方案。当你淋浴或者玩乐的时候,啊哈一声,灵感来了。这种连续的思考方式在你以后的生活会降低它的运行效率。每个难题和迷题都会储存在你的脑海里,而最难的那一个却处于堵塞之中。

      一个难题具有很高的延展性。你可以做出无数次改进,可以重新实现,可以优化,可以进行调试。改变一下,然后查看结果。生活并不是这样的。犯错误后要有所行动,事情并不能被重复。你可以在前进的过程中不停地进行改变和优化,但是效果并不能立刻显现出来。在现实生活中对新情况最及时的反馈是极度匮乏的。另外,你的改变可能会被忽视,数据可能没有被使用,代码块没有被执行,优化没有被人注意到。世界会非常抵触你这个修补匠。

      程序员会成为完美主义者。这就是为什么他们对重写有那么大的兴趣。他们不能抵制最佳解决方案的诱惑。完美要求把烂主意扔在一边,去寻找最好的。一个好的程序员宁肯把未解决的问题暂时放下也不会马虎了事的。一个好的方案会考虑到所有可能的结果并以最高效的方式来完成它。这会防止你编写那些通用性不高和复用度低的代码。在编程中这是一个很好的优点,但是在日常生活中就会成为一个魔鬼。你会因为不优雅或者感觉有一点小错就会避免去注意那些简单的东西。你会说:时间会产生一个更好的结果。

      完美带来的困扰会发展成为提前思考。这种能力有极大的好处,因为你不会浪费时间在那些由于短见和缺乏想象力而最终会失败的方案上。你会画出所有的流程图并在脑海中思考那些排列组合。回到现实世界后,你会发现自己收集大胆的方案来同时解决多个难题和实现多个愿望。你期望能一石多鸟。尽管你的脑子里仍继续思考每一个细节,好像它们可以预测到每一个可能的结果和构建完美的方案,但是这种不可能办到的事是极其令人痛苦的。

      现在一切都是数据。每一个数据位都值得注意。每一次交互都值得分析。你的意识已经被训练成这样。你认为这同调试的时候要杜绝无意义的数据位一样平常。你会发现其他人都不会去收集和分析数据,这会让你很难过。你会注意到他们对细节很轻视。你对细节和过度分析的爱好只会带来异样的眼光和不解的耸肩。你的决定的效果就像你的同伴一样,越来越少。

      软件世界中这种发疯似的节奏会给你紧张和压迫的感觉。你现在必须做事情,即使是明天也觉得太晚。持续工作的想法不再是无关紧要和荒谬可笑的。在空闲时间里你会因为没有工作而感到内疚。你的双手没有在键盘上,但是你的意识还在。

      年轻人在一个车库中建立下一个世界级的公司,这种美好的故事有很大的诱惑力。你很容易就认为梦想就在那儿等着实现。但是你要知道的是有很多因素我们无法控制。运气和时机就是其中的两个。不要为了追寻自己想要的而失去了现在的生活。引用John Lennon的话:生活是我们为其它事情做计划的时候发生的。也许Pascal说的做好:我们从来没有拥有现在。我们预测未来,就好像发现它来的太慢因此试图催它快一些;又好像我们想让过去放慢它那快速的脚步。我们太傻了,傻到希望得到不属于自己的时代而忽视了自己唯一拥有的。我们思考如何安排事情,而这些事情只会发生在我们从来没有确定可以到达的时代。因此,我们从来没有活着,只是希望活着。而且,我们一直努力让自己快乐,实际上我们从来没有拥有快乐

      编程是毁灭的一种方式吗?或者只是那些偏爱细节和精神活动的人乐在其中。也许只是恶化了一种提前存在的意识。程序员还有很多其它共同的特性。我只是看到了负面影响,但是肯定有积极的作用。只要细心检查,坏的方面也有好的效果。困扰是危险的,任何伟大的事物都会带来困扰。编程也不例外。

        (这是我翻译的一篇文章。由于是第一次,肯定有令人不满意的地方。如果想看原文的话可以点击这里http://devizen.com/blog/2007/09/11/ruin/。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值