编程和音乐:为什么写代码的时候听音乐
如今,关于编程时听音乐的话题在科技博客和网站上又热了起来。我觉得那些谈论似乎缺乏深度,所以我决定就这个话题写些文章,其中的很多观点来自于我的同事。
所以,首先,为什么写代码时要听音乐。
1. 避免分心心理学有一个流畅度的概念,当你以做好的状态工作的时候,你应该有过这样的经历:除了代码,所有的一切都消融了。
然后你的同事突然问你昨晚球赛的时候,现实世界又回来了,流畅感被打断了。
相比于回应说 现在我只与机器对话,不与人类对话 ,戴一个大耳机怎么样?当然,这样也可以帮助你远离其余的噪音,比如警报器声、恼人的椅子声、你感冒的同事每隔30秒大声擤鼻涕的声音等。
当然,音乐也可能让你分心,所以要选择合适的去听。有一个同事甚至提到,有时他只是戴上耳机,但什么都不播放,只是为了隔绝背景噪声和被打断。
有一些任务并不会让你提起兴趣,但却必须面对。比如说测试,测试绝对是一项十分重要的工作,但有那么一点无聊。对于这样的工作,音乐或者广播、有声读物可以给你的大脑一定的节奏来保证参与度,从而避免神游八方。
3. 触发节奏Rob Walling有一个有趣的办法运用音乐,他会单曲循环一个节奏几个小时,直到他进入了理想的节奏。然后他发现这个方法可以出触发他的思维状态,使他进入思维流畅的状态。
这可能并不适用于每一个人,比如我,我想这只能加快我厌恶一首歌的速度。Mike Taber通过循环一个播放列表会达到同样的效果,这个方法可能更容易实施。
4. 获得健康的心绪音乐是管理心绪的强有力的工具。我曾经有一个室友,他面临着要在并不充裕的时间内完成大量论文的工作。他一整天都在听盗梦空间的原声带。他并没有选择烦我们,史诗音乐i给了他健康的心绪来完成工作。
同样的,当你压力大的时候,常常难以集中精力,德彪西的音乐可能会帮助你冷静下来,专注于手头的工作。
你还可能会遇到这样一种情况,凌晨三点,火灾报警器响了,早上5点,你家的猫坐在你的头上又把你弄醒了,这将是漫长的一天,当你需要处理必须的事情时,你需要咖啡来保持清醒。节奏欢快的音乐,比如说吉他音乐,也能应对这种情况。
5. 其他经常有人说,听音乐能提高人的数学技巧,也有调研支持这种观点,调研的对象是教室里的学生,而不是工作人员,调研的方式也是专注在学习乐器,而不是听音乐上。然而,这也表明了两者之间有关联,虽然与成人和编程的关系并不太明显。
至少还有一个直接的相关研究,《人件:生产性项目和团队》( Peopleware)这本书描述了20世纪60年代康奈尔大学的这个实验。我希望看到更多关于这个领域的研究,尤其是我发现能找到的最近的研究案例也是50年前的了。现在,人们更容易接触到喜欢的音乐,编写程序也在演变,所以我十分好奇想知道实验结果是否还是一样。
现在我们解决了为什么要听音乐的问题,接下来几周,我们将会继续讨论听什么的话题。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/54194.html
相关文章
- 03·Shell编程-运算符
- js异步编程面试题你能答上来几道
- Python:利用python代码编程实现将视频的avi格式转换为MP4格式
- Oracle基础–PL/SQL编程基本语法[通俗易懂]
- Python编程快速上手 让繁琐工作自动化
- Go 函数式编程篇(三):匿名函数和闭包
- Shell 编程(六):文本三剑客之 Awk
- 计算机大神们关于如何学习编程的看法
- Java之父偏爱函数式编程,称自己的代码风格被队友批评
- 数控编程--PowerMiLL2022安装包免费下载
- 【Groovy】编译时元编程 ( ASTTransformation#visit 方法中访问 Groovy 类、方法、字段、属性 | 完整代码示例及进行编译时处理的编译过程 )
- 【数字信号处理】卷积编程实现 ( Matlab 卷积和多项式乘法 conv 函数 | 使用 matlab 代码求卷积并绘图 )
- 【Java AWT 图形界面编程】Dialog 对话框 ( 简介 | 模式对话框 | 非模式对话框 | Dialog 构造函数 | Dialog 代码示例 | 向 Dialog 对话框添加布局组件 )
- Mastercam 2022:领先的数控编程和加工软件+全版本安装包
- 树的力量:Linux系统的编程奥秘(treeLinux)
- 结对编程 VS 代码审查:对比开发者文化
- 掌握Linux 编程之道:揭示接口之谜(linux编程接口)
- MySQL预处理技术:安全高效的编程利器(mysql预处理)
- Redis入门不需要编程,就能享受灵活的使用体验(用redis需要编程吗)
- 快速生成MySQL代码轻松完成编程任务(mysql一键生成代码)
- 掌握Oracle编程技巧优化代码检查(Oracle代码检查)
- 使用Oracle语言轻松实现编程梦想(oracle代码怎么写)
- JavaScript编程引入命名空间的方法与代码
- 用PHP与XML联手进行网站编程代码实例
- javaswing编程入门代码编写(java编程入门)
- java多线程编程之使用thread类创建线程
- python网络编程学习笔记(九):数据库客户端DB-API
- C#winform编程中响应回车键的实现代码