不开玩笑,你应该像「搬砖」一样写代码!斯坦福大学研究如是说

2024-04-08 01:04

本文主要是介绍不开玩笑,你应该像「搬砖」一样写代码!斯坦福大学研究如是说,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

20240407210113

由于程序员不可避免要进行很多重复性的工作,并且工作强度很高,导致有一种自嘲的说法出现:程序员们自称自己每天都在搬砖(实际上很多职场人都这么自嘲)。我相信当我们说工作像「搬砖」的时候,只是在表达一种不满和自嘲,没有其他积极的含义。不过从斯坦福大学10年前的一份研究结果来看,我们或许真的可以对「搬砖」这个词进行另外一种解读,并从中找到一些提升工作效率的密码。

如何让你的想法长腿?

2014年斯坦福大学的研究团队发表过这样一篇论文,专门研究“步行对创造性思维的影响”。

20240407205451

斯坦福大学的 Marily Oppezzo 和 Daniel L. Schwartz 进行的研究探讨了步行对创造性思维的积极影响。进行了四项实验,以证明步行可以实时和在不久后增强创造性构思。实验涉及参与者在坐着时完成创造性思维任务,然后在跑步机或户外行走时完成。主要发现包括与坐着时相比,步行期间的创造性输出显着增加,特别是在发散性思维任务中。该研究表明,步行可以打开思想的自由流动,并提供一种简单有效的方法来提高创造力和身体活动。该研究有助于理解身心联系以及身体活动(如步行)对创造力等认知过程的具体影响。

其实这一研究结果并不算意外,有一个著名的关于爱因斯坦的轶事是他在普林斯顿大学工作时,每天都会从家中步行到学校,这段大约1.5英里的路程,他认为是思考和放松的好时机。还有康德,也以其规律性的散步而闻名,他的散步时间如此准确,以至于邻居们据此校正自家的钟表。Steve Jobs对行走的爱好被Walter Isaacson在《乔布斯传》中披露,这位科技精英对行走的热爱一定程度上造成了最近走路的复兴。

20240407213018

不过,恰恰是这样名人的故事可能给我们造成一种印象:散步有利于思考和创造力是属于名人和特质和特权,似乎跟普通人关系不大。坦白讲,虽然我并没有意识到,但我的潜意识是确实是这样认为的。

斯坦福论文的研究对象都是普通人,仅仅这一点,就可以给我们启发。

散步这么好,为什么不一直散步?

如果这一研究仅仅是对名人轶事的佐证,那就有点没有技术含量了。下面我们看一下研究中的实验细节,从中还可以获得不一样的洞察。

首先,坐着针对两种类型的思考:Divergent Thinking(发散思维)和Convergent Thinking(收敛思维)分别进行了研究。

  • 发散思维:是指在创造性思维过程中,通过产生大量新颖和适当的想法来解决问题的思维方式。在创造性任务中,发散思维通常涉及到产生多种可能性,避免被固定在单一类别的用途中。
  • 收敛思维:是指在解决问题时,通过集中精力寻找最佳解决方案或答案的思维方式。

研究发现先坐着(Sitting)再散步(Walking)对发散思维有明显的帮助,几乎加倍,但是对收敛思维没有任何帮助,甚至还有一点伤害。

20240407205340

所以,事情稍微还是有点不同的。当你有思路的时候,集中精力思考并解决问题,你可以一直坐着,甚至进入心流的状态。但是,当你思考遇到困境的时候,找不到解决问题的方法的时候,或者需要头脑风暴的时候,请站起来走一走!

散步多久合适呢?

散步的时候思维活跃具有创造力,确实有利于思考,但是当回到工作的时候不还得坐在电脑前吗?那不又打回原形了吗?庆幸的是,我们的身体和思维没有那么的不善解人意,根据研究结果,散步的积极效果在坐下后至少能持续16分钟,这种残留效应表明散步对创造性思维有持久的影响。下面我们看一下实验细节。

研究者设计了四个实验,每个实验分两个阶段,每个阶段16分钟或者坐着(sit)或者步行(walk),组合起来共有四种情况:sit-sit、sit-walk、walk-sit和walk-walk。实验结果显示,在这些条件下,行走对创造力产生了积极影响,并且这种影响并不会随时间减弱。具体来说,在sit-walk条件下,参与者在行走时创造力产出增加了两倍以上,而在sit-sit条件下,创造力产出没有明显变化。在walk-walk条件下,行走的积极效应保持不变,至少在16分钟内没有减弱。在walk-sit条件下,人们在行走后坐下时,表现出几乎与行走时相同水平的创造力产出。这些结果表明,行走对创造力有持久的积极影响,即使在户外行走时也是如此。

20240407205305

搬砖的隐喻

如果你真的在工地上搬过砖(我搬过),你会知道搬砖是不可能一直持续一个动作的,搬砖的过程也是简单甚至单调地分为两个阶段:

  • 当需要干活的时候,专心致志地干活,特别是当你跟别人配合的时候,必须全神贯注不被打扰。某种程度上也可以进入心流的状态。这一过程可以类比上面提到的收敛思维
  • 而当搬砖搬累了的时候,你需要会坐下来喝口水,歇息,一起干活的人会坐在一起开始聊天(吹牛,八卦,互相打趣……),这样的对话内容常常非常丰富。这一过程可以类比上面提到的发散思维

说了半天,好像也没有太深刻的道理,又回到了众所周知的白开水话:无论是在电脑前搬砖还是真的搬砖,都要劳逸结合而已。但是,想一想你每天坐着的时间占比(50%还是80%?),你可能不会再轻视这段大白话。

多起来走走,不仅是为了身体健康,还是为了提高工作效率。这很意外地暗示了另一个事实:我们的身体和精神分的没有那么开。

关注👉👉👉「黑客悟理」,不错过任何新奇有趣的知识。

如果你喜欢我的文章,欢迎到我的个人网站关注我,非常感谢!

这篇关于不开玩笑,你应该像「搬砖」一样写代码!斯坦福大学研究如是说的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/884164

相关文章

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Python实现MQTT通信的示例代码

《Python实现MQTT通信的示例代码》本文主要介绍了Python实现MQTT通信的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 安装paho-mqtt库‌2. 搭建MQTT代理服务器(Broker)‌‌3. pytho

MySQL进行数据库审计的详细步骤和示例代码

《MySQL进行数据库审计的详细步骤和示例代码》数据库审计通过触发器、内置功能及第三方工具记录和监控数据库活动,确保安全、完整与合规,Java代码实现自动化日志记录,整合分析系统提升监控效率,本文给大... 目录一、数据库审计的基本概念二、使用触发器进行数据库审计1. 创建审计表2. 创建触发器三、Java

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

Java实现自定义table宽高的示例代码

《Java实现自定义table宽高的示例代码》在桌面应用、管理系统乃至报表工具中,表格(JTable)作为最常用的数据展示组件,不仅承载对数据的增删改查,还需要配合布局与视觉需求,而JavaSwing... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

HTML5实现的移动端购物车自动结算功能示例代码

《HTML5实现的移动端购物车自动结算功能示例代码》本文介绍HTML5实现移动端购物车自动结算,通过WebStorage、事件监听、DOM操作等技术,确保实时更新与数据同步,优化性能及无障碍性,提升用... 目录1. 移动端购物车自动结算概述2. 数据存储与状态保存机制2.1 浏览器端的数据存储方式2.1.

基于 HTML5 Canvas 实现图片旋转与下载功能(完整代码展示)

《基于HTML5Canvas实现图片旋转与下载功能(完整代码展示)》本文将深入剖析一段基于HTML5Canvas的代码,该代码实现了图片的旋转(90度和180度)以及旋转后图片的下载... 目录一、引言二、html 结构分析三、css 样式分析四、JavaScript 功能实现一、引言在 Web 开发中,