学计算机语言学微积分吗,学编程就像学外语,语言技能比数学技能更重要

一项新研究表明,语言能力和问题解决能力是预测编程学习速度的关键因素,尤其是对于Python的学习。研究发现,语言能力对学习Python的速度解释了近20%的个体差异,而数学能力的影响则较小。此外,静息状态下的脑电图活动也与编程学习速度和知识掌握有关。这项研究挑战了编程主要依赖数学技能的传统观念,为语言能力强的人,尤其是女性,提供了更多学习编程的信心。
摘要由CSDN通过智能技术生成

article.php?pk=602b00c9b15ec024f14f6e8e&f=Normal

作者:AmyNippert

编译:红猪

说起学习一门新语言,你多半会想到法语、西班牙语或是汉语。但为什么不是 Python 或 Java 呢?

自然语言和人工语言的学习过程有多相似?相似到超过你想象。

华盛顿大学的研究者发表了一项研究,显示最能预测一个人对流行的编程语言 Python 的学习速度的,其实是语言能力和问题求解的技能。

这项研究发表在《科学报告》(Scientific Reports)杂志上,它采用了行为学测试和对脑部活动的测量,以此观察了被试学习编程的速度及效果究竟与什么因素相关。

语言能力强,学起编程快

article.php?pk=602b00c9b15ec024f14f6e8e&f=Normal

Python 更像是另一门自然语言 | Wikimedia Commons

研究招募了 42 名被试,要他们在 Codeacademy 学一门热门的编程网课—— 10 节 45 分钟的 " 学习 Python" 课。一共有 36 名被试完成学习,研究者确定了这 36 人的学习速度和学习效果。

在开始网络学习之前,被试先接受了一组测试,以判断他们的数学技能、工作记忆、问题求解以及外语学习能力。

在网上的编程课中,研究者追踪了被试的学习速度以及他们对网上软件中内置的测验题的回答情况。被试在学习结束后,还接受了一次测验和编程任务,以评判他们的整体编程知识。

记忆、问题求解、数字能力或语言能力,对于被试们学习编程到底有多大影响呢?

被试学习 Python 的速度有快有慢,在学习结束时也显示了不同的编程能力。研究者发现,学生们学习 Python 的效果,主要和他们的一般认知能力(即问题求解和工作记忆)有关。而他们学习 Python 的速度,则与一般认知能力和语言能力这两个因素有关。

在 Python 的学习速度上,语言能力解释了近 20%的个体差异。

与之相比,数学能力只能解释学习速度 2%的个体差异,和学习效果更是毫无相关性。

总之,学习编程更多是依靠语言技能,而非数字技能。

脑电图提供了更多证据

article.php?pk=602b00c9b15ec024f14f6e8e&f=Normal

大脑内部的电流会在头皮上产生电压波动,脑电图就是通过记录这种电模式来测量脑部活动。| pixabay

研究里,脑电图数据进一步证明了语言技能的重要性。

在开始网上学习任务之前,被试先测了静息状态的脑电图,也就是被试在心情放松无所事事的状态下脑内的电流模式。

静息状态的脑电活动包含了不同的模式。其中一种缓慢的脑电波被称为 "β 振荡"(beta oscillations)。之前的研究显示,静息状态下高强度的 β 振荡和学习一门外语的能力有关。

而这项研究显示,高强度的 β 振荡和更快的学习速度以及更丰富的编程知识有关。

虽然这一发现对语言学习和编程学习的联系提供了额外支持,但目前还不清楚 β 振荡和学习效果有什么关系,还需要进一步研究研究。

总的来说,这些结果证明了语言学习技能是编程学习中一个不可或缺的方面(至少对 Python 的学习是如此),而数学技能对于被试学得多好多快反而没有多少预测作用。

语言技能强的女孩,来学编程吧

这个结论对于围绕编程的种种看法具有重要影响,因为编程常被看作一个 " 数学密集 " 的领域。

关于程序员存在许多成见,特别是哪些人能成为优秀程序员的问题。女性常常觉得自己不符合 " 典型 " 计算机程序员的形象。但是平均而言,女孩一般具有比男孩更高的语言技能。

现在这个新研究显示,语言技能可以预测编程学习能力,或许女性未来可以有 " 擅长编程 " 的名声了。

article.php?pk=602b00c9b15ec024f14f6e8e&f=Normal

语言能力强的女性,应该对学习编程有更强信心 | pexels

有些领域确实对数学和编程技能都有要求,但大部分编程工作却不一定来自这些领域。根据目前这项研究,似乎没有必要让每个计算机科学的学生都完成高等数学课程。在数学要求上增加一点弹性,或许有助于招收并留住学生。

将语言技能和编程明确地联系在一起、提供无需高等数学的教育选择,这或许能在传授学生他们需要的编程技能之外,增加一点学生的多样性。眼下 " 训练营 " 式的编程教育正迅速风行,它引导参与者进入编程行业,而不需要强迫他们学习微积分。

随着编程成为许多工作的必备技能,是时候质疑一下那些关于编程先决条件的成见了。从这项新研究的成果出发,大学和个人应该重新思考自己对编程学习的认识、以及学会编程究竟需要哪些能力。有许多人不是所谓的 " 数学高手 ",但他们完全可能成为编程专家。

题图来源:Wikimedia Commons

编译来源:Massivesci

参考文献:

[ 1 ] Prat, C. S., Madhyastha, T. M., Mottarella, M. J., & Kuo, C.-H. ( 2020 ) . Relating Natural Language Aptitude to Individual Differences in Learning Programming Languages. Sci. Rep., 10 ( 3817 ) , 1 – 10. doi: 10.1038/s41598-020-60661-8

欢迎个人转发到朋友圈

微博:科学松鼠会

科学松鼠会,是一家以推动科学传播行业发展为己任

的非营利组织,成立于 2008 年 4 月。我们希望像松鼠

一样,帮助公众剥开科学的坚果,分享科学的美妙。

article.php?pk=602b00c9b15ec024f14f6e8e&f=Normal

喜欢记得点 " 在看 "

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值