跟程序员相处你一定会有很多的挫折感。比如,程序员会把能让他们达到最高效率的那种神奇的境界叫做“那里”。
“那里”是真实存在的。至少对于我是这样的,很有可能你也很熟悉那里,只是情形不一样。对于非程序员的人来说,跟程序员的这种境界相对应的情形是, 当你完全投入进一本书或一场电影,你感觉整个世界都消失了,唯一留下了的只有你正在关注的东西。如果你有丰富的创作力,那有可能是在你写一本书或绘一副画 时候。
当你正全神贯注的读一本书上,有人打断了你,通常这会需要你花很长的时间重回到那种状态。通常,当我在读一本书,有人或什么事情(电话!)打断我, 他需要重读刚才那一页,试图接上刚才的思路。甚至一章的结束也会造成思路的打断,需要你花一段时间才能重新进入你刚才的那种阅读状态中。
我第一次进入这种境界是我深深的陷入了编程的状态,当时很年轻,大概17岁。我想写一个程序,在计算机屏幕上进行音乐合成。那是我第一次使用”结构 化编程“,是从一个朋友那里听来的。我在晚饭后开始干活,之后完全忘掉了时间,当我回过神来后,发现已经是早晨,鸟儿在树上鸣叫着向朝阳打招呼,到上班时 间了。我的第一反应是:”哇!,不会这么晚了吧!“我的感觉好像只忙了几个小时,但事实上已经过去将近10个小时了。
这次之后,这种状态出现了很多次,每次我都进入了一种忘我的境界,做事情比平时注意力不能集中或不能真正专注时又快又好。
一旦我知道了这种状态,我试图能重复它,进入它,试图能让这种状态保留更长的时间,获得更大的工作效率,或者能进入这种状态解决难题。很显然,对于 我,这种情形产生在绝对安静的环境里,在我面前的屏幕上只有一种东西(通常是文本编辑器)时,而且需要一个专用的时间,让我意识到不会被什么事情打搅。
数年过去了,生活越来越忙,如今更忙,我进入这种境界的频率越来越少。是否需要进入这种状态另说,现在进入这种状态可以做的大概就是闭上双眼,背着手想事情,如果遇到真正困难的问题或完全不熟悉的新任务,那会更好。
另一件让我印象深刻的事情是,当我处在这种状态里时,有人打断了我,我通常会表现的不太和蔼。我通常需要极大的忍耐不去发火(ok,我说实话,当我被打断时,我会发驴脾气,我的第一反应是发火,我怎么也忍不住。这方面需要多下功夫)。
原因很难说清楚,但我想改正这个毛病。当编写很复杂的程序时(有些问题会挑战我的能力的极限,但对你也许不是难题,而对我却是)我力图保持大脑里这 种我一直想达到的思维状态。一个打搅——不管多么的轻微和细小——整个心境都跌落到地上摔的粉碎。我必须重新构建整个状态才能工作下去,至少需要15分钟 甚至超过1小时。所以,30秒的打搅对于我的实际作用会延长至数十倍的时间,前提是我还能重回的之前的状态,而很多情形下是回不去了。
这种状态下效率的提高是如此的显著,以至于当想真正的干一件事时,我的办法是特意的为这种状态创造一种环境,我会等所有人都睡了,泡一壶新茶,把所有能造成分心的东西都关了(手机,辅助显示器等。)这样把可能的打搅降到最小。通常在这几个小时(2或3个)里,我把最困难的事情解决掉。其它较容易的事情在平时解决。
完全的专注具有强大的力量,它能让你完成你日常生活中或平时状态下不能完成的任务。
如果你总是处在一个噪杂和易分心的工作环境中,有时发现一些难关怎么也翻越不过去,你可以试试进入这种状态,当你真正的集中精力时你才会发现你究竟具有什么样的能力。
处在那种境界里并不是没有代价的,我通常需要好一段时间才能恢复,但终究收获大于损失,特别是它能让我解决在其它状态中不能解决的问题,以及能更快速的解决问题。
如果你也是一个生活在这种境界里的人,我真的想知道你的体验如何,请在评论里告诉我。谢谢。
后记:好几个人都推荐我看这个维基百科链接:意识流(心理学)。
原文出自:Living in the zone
分享到:
相关推荐
### 程序员工作效率低下11大原因详解 #### 一、工作时不专心 - **开通信软件:** 在工作期间打开QQ、MSDN、淘宝客户端等通信或娱乐软件,容易分散注意力,降低工作效率。古语云:“蟹六跪而二螯,非蛇鳝之穴而无可...
正如陈正冲所言,普通人在三年内很难说掌握了C语言,五年内很难称得上熟悉,十年内难以达到精通的境界。这不仅是时间的积累,更是深度探索和不断实践的结果。 #### 掌握C语言的“捷径”——实践与调试 陈正冲提出...
从给定的文件标题、描述、标签以及部分内容中,我们可以提炼出以下关于C语言的关键...正如文中所言,如果你想成为一名真正的程序员,并期望达到高手的境界,从C语言入手,努力学好C语言,将是你迈向成功的必经之路。
比如,通过Bottom_half机制加速系统对中断的处理,这是一种高效率的中断处理策略,旨在减少中断处理对系统性能的影响。这些精巧的设计思路,对于理解和优化现代操作系统有着重要的参考价值。 #### 成为专业程序员的...
《汇编语言与禅-Zen Of Assembly Language》是一本深入探讨汇编语言编程哲学和技术的书籍,它旨在帮助读者理解并掌握汇编语言的核心概念,同时通过“禅”的理念,引导程序员达到编程的更高境界。汇编语言是计算机...
书中首先回顾了软件工程的起源——60年代计算机科学发展的早期阶段,那时编程被视为一种艺术而非科学,程序员凭借个人才华创造程序,却忽视了代码的可维护性和可扩展性。这一时期,软件的质量问题、进度延误和成本...
异常处理是C++中处理错误和异常情况的一种机制。通过try、catch和throw语句,我们可以编写健壮的程序,确保在遇到错误时能够优雅地恢复或退出,而不是导致程序崩溃。 STL(Standard Template Library)是C++的标准...
两者之间的转换相对容易,掌握了一种语言后,学习另一种将事半功倍。 ### 结语 编程学习是一场马拉松,而非短跑。它需要持之以恒的努力、不断实践和深入思考。从C语言起步,逐步探索更广阔的技术领域,如Java或C++...
这使得他们能够在短时间内从一种编程语言高手变为另一种语言的高手,因为他们已经熟悉了许多经过时间检验的基础技术。 4. **高效的工具使用**:高手倾向于使用轻量级工具,例如 vi 或 notepad,这类工具虽然简单,...
《成为编程高手的二十二条军规》这篇文章,提供了一系列宝贵的建议与指导原则,旨在帮助程序员们在编程的道路上不断精进,最终达到高手的境界。下面,我们将对文章中的部分核心知识点进行深入解析,以期帮助读者更好...
他的这本书延续了其教学风格,使得学习 Vim 不再是单纯的查阅文档,而是一种有条理、有深度的学习体验。 7. **适用人群**:无论你是系统管理员、软件开发人员,还是对文本编辑有高要求的用户,这本书都能提供有价值...
- **《The C++ Programming Language》**:C++之父Bjarne Stroustrup所著,本书是最权威的C++参考书之一,涵盖了从基础到高级的所有知识点,是每个C++程序员都应该拥有的资源。 #### 特殊主题 - **《C++ ...
《代码之美》是一本深入探讨编程艺术与实践的书籍,其中文版的PDF形式使得更多的中国读者能够接触到这本书中...它将帮助你理解并实践编程的更高境界,写出更优美、更具效率的代码,从而提升软件项目的质量和整体价值。
本书《Java宝典》正是专为Java程序员进阶打造的一部权威指南,旨在帮助读者提升技能,走向编程的更高境界。书中的内容涵盖了Java语言的各个方面,包括基础语法、面向对象编程、高级特性、并发编程、JVM优化等多个...
《More Effective C++》完全中文版是一本由Scott Meyers撰写的经典著作,该书...无论是初学者还是经验丰富的开发者,都能从这本书中获得宝贵的洞见和实用的技能,帮助他们在C++编程的道路上不断前行,达到更高的境界。
Ruby是一种面向对象、动态类型的高级编程语言,自1995年由日本程序员松本行弘(Yukihiro Matsumoto)创立以来,因其简洁优雅的语法和强大的功能集而备受青睐。Ruby的设计哲学强调程序员的生产力和代码的可读性,这...