程序员的一种境界【转的】
跟程序员相处你一定会有很多的挫折感。比如,程序员会把能让他们达到最高效率的那种神奇的境界叫做“那里”。
“那里”是真实存在的。至少对于我是这样的,很有可能你也很熟悉那里,只是情形不一样。对于非程序员的人来说,跟程序员的这种境界相对应的情形是,当你完全投入进一本书或一场电影,你感觉整个世界都消失了,唯一留下了的只有你正在关注的东西。如果你有丰富的创作力,那有可能是在你写一本书或绘一幅画时候。
当你正全神贯注的读一本书上,有人打断了你,通常这会需要你花很长的时间重回到那种状态。通常,当我在读一本书,有人或什么事情(电话!)打断我,他需要重读刚才那一页,试图接上刚才的思路。甚至一章的结束也会造成思路的打断,需要你花一段时间才能重新进入你刚才的那种阅读状态中。
我第一次进入这种境界是我深深的陷入了编程的状态,当时很年轻,大概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
程序员的一种境界【转的】相关推荐
- 程序员的四种境界 西安尚学堂
IT行业可谓现在的热门行业,程序员也是很多人羡慕的工作.薪水高,不用东跑西颠,敲敲键盘,看看屏幕,一切工作全都搞定,轻松而方便. 果真如此吗? 不尽然,实际上,程序员的职业生涯也是一个求道的过程,需要 ...
- 程序员的4种心态与4种将来
有一个小故事流传甚广,名字就叫做"三个建筑工人的故事",烂大街了,不过还是可以看看. 三个建筑工人的故事 一天,一位记者到建筑工地采访,分别问了三个建筑工人一个相同的问题. 他问第 ...
- [置顶] 完美程序员的10种品质
完美程序员的10种品质 转载自:http://zhousir.net/ 谁是完美程序员?著名博客作家Alex Iskold在<明星软件工程师的10种特质>一文中给出这个问题的答案: 1. ...
- 做大厂程序员是一种怎样的体验?这四位“百度程序员”说出了自己的看法!
程序员是个特殊"物种",在外界印象中,他们身穿格子衬衫.顶着秃头还对女朋友说些听不懂的技术黑话. "程序猿""攻城狮"等调侃话术随处可见,但 ...
- web开发程序员有几种_每个程序员都应该知道的10种流行的Web开发工具
web开发程序员有几种 Are you planning to get into web development? Take a tool with you, it's scary out there ...
- 第 14 章 程序员常用 10 种算法
第 14 章 程序员常用 10 种算法 1.二分查找算法 1.1.二分查找算法介绍 前面我们讲过了二分查找算法,是使用递归的方式,下面我们讲解二分查找算法的非递归方式 二分查找法只适用于从有序的数列中 ...
- 完美程序员的10种品质
导读:谁是完美程序员?著名博客作家Alex Iskold在<明星软件工程师的10种特质>一文中给出这个问题的答案: 1. 热爱编程 2. 完成事情 3. 持续重构代码 4. 使用设计模式 ...
- 程序员是一种优秀的男朋友
导语: 程序员是一类优质的人群,这毋庸置疑.他们效力的部门叫做研发部,放眼中外,但凡和研发相关的都是国之根本.当然如果是一个公司,他们的地位相当于御林军.江湖中对于这个神秘的圈子流传着一个传说,解决个 ...
- 【黑马程序员】23种设计模式——UML图
文章目录 前言 二.UML图 1)类图概述 2)类图的作用 3)类图表示法 1.类的表示方式 2.类与类之间关系的表示方式 2.1关联关系 ①单向关联 ②双向关联 ③自关联 2.2聚合关系 2.3组合 ...
- 扎克伯格 java_程序员的5种级别,扎克伯格比尔盖茨并非最高等级!
原标题:程序员的5种级别,扎克伯格比尔盖茨并非最高等级! 大连Java培训,大连PHP培训, 大连IT培训,大连爱尚实训,做品质教育,用事实说话! 程序员的5种级别,扎克伯格比尔盖茨并非最高等级! 随 ...
最新文章
- Oracle Goldengate Windows平台Oracle-Oracle单向复制
- 在R中子集化数据框的5种方法
- gin.context 怎么在其他包中获取 只能传递吗_跨进程传递大图,你能想到哪些方案呢?...
- mariadb mysql同步_CentOS7安装配置MariaDB(mysql)数据主从同步
- 对于网络爬虫的提问?
- 7-104 6翻了 (15 分)
- 调查作业时,注意 【 调查深度 】 ,以及总结 【 中间成果物 】
- Java常用软件下载地址
- REINFORCE和Reparameterization Trick
- 简易前端路由-点击菜单切换到对应的信息栏
- 【问题】连接mysql报错errorCode 0, state 08S01
- freeCAD part工作台,两个物体做合集相加的布尔组合先后顺序区别
- P1032 [NOIP2002 提高组] 字串变换
- [蓝桥杯python] 粘木棍:有N根木棍,需要将其粘贴成M个长木棍,使得最长的和最短的的差距最小。
- 车内看车头正不正技巧_为什么在驾校成绩挺好,上路就傻眼了——停车入位技巧...
- zxr10交换机配置手册vlan_中兴ZXR10配置说明
- Matlab在线执行
- openCV任意几何形状感兴趣区域(ROI)提取
- 嵌入式linux .net core,嵌入式Linux+NetCore 笔记一
- 【HTML5】简单实现QQ聊天气泡效果
热门文章
- Jetson tk1 刷机教程
- 1304: 防御导弹 (未完)
- TCP/IP-ARP
- 分量入度hdu 3836 Equivalent Sets
- Asp.net 2.0 自定义控件开发[实现自动计算功能(AutoComputeControl)][示例代码下载][续]...
- ubuntu切换python版本
- JavaScript的RegExp实例方法exec()
- Mac 用U盘重装系统
- css 文字超出变 ... 点点点
- MVC解决Json DataGrid返回的日期格式是/Date(20130450000365)