跟程序员相处你一定会有很多的挫折感。比如,程序员会把能让他们达到最高效率的那种神奇的境界叫做“那里”。

“那里”是真实存在的。至少对于我是这样的,很有可能你也很熟悉那里,只是情形不一样。对于非程序员的人来说,跟程序员的这种境界相对应的情形是,当你完全投入进一本书或一场电影,你感觉整个世界都消失了,唯一留下了的只有你正在关注的东西。如果你有丰富的创作力,那有可能是在你写一本书或绘一幅画时候。

当你正全神贯注的读一本书上,有人打断了你,通常这会需要你花很长的时间重回到那种状态。通常,当我在读一本书,有人或什么事情(电话!)打断我,他需要重读刚才那一页,试图接上刚才的思路。甚至一章的结束也会造成思路的打断,需要你花一段时间才能重新进入你刚才的那种阅读状态中。

我第一次进入这种境界是我深深的陷入了编程的状态,当时很年轻,大概17岁。我想写一个程序,在计算机屏幕上进行音乐合成。那是我第一次使用“结构化编程”,是从一个朋友那里听来的。我在晚饭后开始干活,之后完全忘掉了时间,当我回过神来后,发现已经是早晨,鸟儿在树上鸣叫着向朝阳打招呼,到上班时间了。我的第一反应是:“哇!,不会这么晚了吧!”我的感觉好像只忙了几个小时,但事实上已经过去将近10个小时了。

这次之后,这种状态出现了很多次,每次我都进入了一种忘我的境界,做事情比平时注意力不能集中或不能真正专注时又快又好。

一旦我知道了这种状态,我试图能重复它,进入它,试图能让这种状态保留更长的时间,获得更大的工作效率,或者能进入这种状态解决难题。很显然,对于我,这种情形产生在绝对安静的环境里,在我面前的屏幕上只有一种东西(通常是文本编辑器)时,而且需要一个专用的时间,让我意识到不会被什么事情打搅。

数年过去了,生活越来越忙,如今更忙,我进入这种境界的频率越来越少。是否需要进入这种状态另说,现在进入这种状态可以做的大概就是闭上双眼,背着手想事情,如果遇到真正困难的问题或完全不熟悉的新任务,那会更好。

另一件让我印象深刻的事情是,当我处在这种状态里时,有人打断了我,我通常会表现的不太和蔼。我通常需要极大的忍耐不去发火(ok,我说实话,当我被打断时,我会发驴脾气,我的第一反应是发火,我怎么也忍不住。这方面需要多下功夫)。

原因很难说清楚,但我想改正这个毛病。当编写很复杂的程序时(有些问题会挑战我的能力的极限,但对你也许不是难题,而对我却是)我力图保持大脑里这种我一直想达到的思维状态。一个打搅——不管多么的轻微和细小——整个心境都跌落到地上摔的粉碎。我必须重新构建整个状态才能工作下去,至少需要15分钟甚至超过1小时。所以,30秒的打搅对于我的实际作用会延长至数十倍的时间,前提是我还能重回的之前的状态,而很多情形下是回不去了。

这种状态下效率的提高是如此的显著,以至于当想真正的干一件事时,我的办法是特意的为这种状态创造一种环境,我会等所有人都睡了,泡一壶新茶,把所有能造成分心的东西都关了(手机,辅助显示器等。)这样把可能的打搅降到最小。通常在这几个小时(2或3个)里,我把最困难的事情解决掉。其它较容易的事情在平时解决。

完全的专注具有强大的力量,它能让你完成你日常生活中或平时状态下不能完成的任务。

如果你总是处在一个噪杂和易分心的工作环境中,有时发现一些难关怎么也翻越不过去,你可以试试进入这种状态,当你真正的集中精力时你才会发现你究竟具有什么样的能力。

处在那种境界里并不是没有代价的,我通常需要好一段时间才能恢复,但终究收获大于损失,特别是它能让我解决在其它状态中不能解决的问题,以及能更快速的解决问题。

如果你也是一个生活在这种境界里的人,我真的想知道你的体验如何,请在评论里告诉我。谢谢。

后记:好几个人都推荐我看这个维基百科链接:意识流(心理学)。(Google翻译中文版)

via:Living in the zone

文章来源:外刊IT评论 转载请注明出处链接。

转载于:https://www.cnblogs.com/wufoo/archive/2011/04/27/2030956.html

程序员的一种境界【转的】相关推荐

  1. 程序员的四种境界 西安尚学堂

    IT行业可谓现在的热门行业,程序员也是很多人羡慕的工作.薪水高,不用东跑西颠,敲敲键盘,看看屏幕,一切工作全都搞定,轻松而方便. 果真如此吗? 不尽然,实际上,程序员的职业生涯也是一个求道的过程,需要 ...

  2. 程序员的4种心态与4种将来

    有一个小故事流传甚广,名字就叫做"三个建筑工人的故事",烂大街了,不过还是可以看看. 三个建筑工人的故事 一天,一位记者到建筑工地采访,分别问了三个建筑工人一个相同的问题. 他问第 ...

  3. [置顶] 完美程序员的10种品质

    完美程序员的10种品质 转载自:http://zhousir.net/ 谁是完美程序员?著名博客作家Alex Iskold在<明星软件工程师的10种特质>一文中给出这个问题的答案: 1. ...

  4. 做大厂程序员是一种怎样的体验?这四位“百度程序员”说出了自己的看法!

    程序员是个特殊"物种",在外界印象中,他们身穿格子衬衫.顶着秃头还对女朋友说些听不懂的技术黑话. "程序猿""攻城狮"等调侃话术随处可见,但 ...

  5. web开发程序员有几种_每个程序员都应该知道的10种流行的Web开发工具

    web开发程序员有几种 Are you planning to get into web development? Take a tool with you, it's scary out there ...

  6. 第 14 章 程序员常用 10 种算法

    第 14 章 程序员常用 10 种算法 1.二分查找算法 1.1.二分查找算法介绍 前面我们讲过了二分查找算法,是使用递归的方式,下面我们讲解二分查找算法的非递归方式 二分查找法只适用于从有序的数列中 ...

  7. 完美程序员的10种品质

    导读:谁是完美程序员?著名博客作家Alex Iskold在<明星软件工程师的10种特质>一文中给出这个问题的答案: 1. 热爱编程 2. 完成事情 3. 持续重构代码 4. 使用设计模式 ...

  8. 程序员是一种优秀的男朋友

    导语: 程序员是一类优质的人群,这毋庸置疑.他们效力的部门叫做研发部,放眼中外,但凡和研发相关的都是国之根本.当然如果是一个公司,他们的地位相当于御林军.江湖中对于这个神秘的圈子流传着一个传说,解决个 ...

  9. 【黑马程序员】23种设计模式——UML图

    文章目录 前言 二.UML图 1)类图概述 2)类图的作用 3)类图表示法 1.类的表示方式 2.类与类之间关系的表示方式 2.1关联关系 ①单向关联 ②双向关联 ③自关联 2.2聚合关系 2.3组合 ...

  10. 扎克伯格 java_程序员的5种级别,扎克伯格比尔盖茨并非最高等级!

    原标题:程序员的5种级别,扎克伯格比尔盖茨并非最高等级! 大连Java培训,大连PHP培训, 大连IT培训,大连爱尚实训,做品质教育,用事实说话! 程序员的5种级别,扎克伯格比尔盖茨并非最高等级! 随 ...

最新文章

  1. Oracle Goldengate Windows平台Oracle-Oracle单向复制
  2. 在R中子集化数据框的5种方法
  3. gin.context 怎么在其他包中获取 只能传递吗_跨进程传递大图,你能想到哪些方案呢?...
  4. mariadb mysql同步_CentOS7安装配置MariaDB(mysql)数据主从同步
  5. 对于网络爬虫的提问?
  6. 7-104 6翻了 (15 分)
  7. 调查作业时,注意 【 调查深度 】 ,以及总结 【 中间成果物 】
  8. Java常用软件下载地址
  9. REINFORCE和Reparameterization Trick
  10. 简易前端路由-点击菜单切换到对应的信息栏
  11. 【问题】连接mysql报错errorCode 0, state 08S01
  12. freeCAD part工作台,两个物体做合集相加的布尔组合先后顺序区别
  13. P1032 [NOIP2002 提高组] 字串变换
  14. [蓝桥杯python] 粘木棍:有N根木棍,需要将其粘贴成M个长木棍,使得最长的和最短的的差距最小。
  15. 车内看车头正不正技巧_为什么在驾校成绩挺好,上路就傻眼了——停车入位技巧...
  16. zxr10交换机配置手册vlan_中兴ZXR10配置说明
  17. Matlab在线执行
  18. openCV任意几何形状感兴趣区域(ROI)提取
  19. 嵌入式linux .net core,嵌入式Linux+NetCore 笔记一
  20. 【HTML5】简单实现QQ聊天气泡效果

热门文章

  1. Jetson tk1 刷机教程
  2. 1304: 防御导弹 (未完)
  3. TCP/IP-ARP
  4. 分量入度hdu 3836 Equivalent Sets
  5. Asp.net 2.0 自定义控件开发[实现自动计算功能(AutoComputeControl)][示例代码下载][续]...
  6. ubuntu切换python版本
  7. JavaScript的RegExp实例方法exec()
  8. Mac 用U盘重装系统
  9. css 文字超出变 ... 点点点
  10. MVC解决Json DataGrid返回的日期格式是/Date(20130450000365)