学习编程不仅意味着要发展有用的技能,而且还意味着要获得特殊的思维方式。 程序员擅长解决数学和逻辑问题。 他们还注重细节,模拟日常生活中的情况,并根据大量因素进行评估。

预期我们的
Go Workshop课程将告诉您,心理学家,语言学家和教育工作者考虑编码对大脑的影响,以及澳大利亚印第安人和Sepir-Whorf假设与之有何关系。
在上个世纪30年代,出现了语言相对论,以爱因斯坦的发现为类推。 它说:语言定义意识,也就是说,人们对世界的看法不同,因为母语的语言类别施加了限制,甚至决定了思维。
这个想法是由爱德华·塞皮尔(Edward Sepir)和他的学生本杰明·码头(Benjamin Wharf)提出的,但是他们错了。 任何想法都可以用任何语言传达。 他们将对认知过程的巨大影响归因于语法上的简单差异,但这一概念也包含了健康的含义。 盖伊·德意志(Guy Deutscher)在他的《通过舌头照镜子》一书中解释了:
“如果不同的语言对说话者的思维产生不同的影响,那么,重点并不在于每种语言都允许其说话者思考,而在于每种语言通常会让您思考的含义部分。 当一种语言强迫其说话者注意世界的某些方面时……这种言语习惯最终会变成思维习惯,从而对记忆,感知,联想甚至实践技能产生影响。”
真相在北方
令人信服地证明 ,名词的性别体系会影响联想系列,迫使赋予某些无生命的物体以虚构的女性或男性特征。
类似的效果与语言的名称对颜色阴影的敏感性不同有关。
但是,与语言可以形成技能的事实相比,这些都是琐碎的事情。 这是在研究澳大利亚土著语言之一时发现的。 代替通常的“前”和“后”,“左”和“右”,它们仅使用基点来指示方向。
这看起来像是个骗局,但是如果说这种语言的母语人士要求您在长凳上腾出空间,这听起来就像“请向东移动”。 如果您同时正在坐着,坐南朝南,而当地人希望您向前翻几页,那么您会听到“向西翻转”的声音。 如果您面朝北,则请求的声音将有所不同-您将被要求向东翻转。
要使用这种语言,您必须不断监视基点的位置,这形成了地理记忆并且不需要有意识地控制方向感。 因此,深度语言学习不仅仅是语法和词汇知识。
语言对思维影响的研究才刚刚开始,但是类似的编程语言研究已经在进行中,不仅名称与自然语言有关。
编程≥语音
与刻板印象相反,在编程中最重要的不是数学能力,而是语言能力。 早在1982年,查尔斯·韦斯雷尔(Charles Wesrel)就在他的《程序员练习曲》中。 他提请注意语言能力是成功程序员个性的重要方面,同时要记住能够使用人工语言和自然语言的语法。
他的观察得到证实。 统计
研究表明 ,编程和高语言能力之间
存在相关性 。 借助MRI可以直接观察大脑不同区域的活动,从而
确定在编写代码时,大脑负责自然语言的相同部分被激活了。
毫不奇怪,许多程序员认为Sapir-Whorf假设适用于他们的工作。 APL的创建者肯尼斯·艾弗森(Kenneth Iverson)也持有类似的观点。 松本行弘(Yukihiro Matsumoto)承认,在开发Ruby时,他受到基于语言相对论假设的小说“ Babel-17”的启发。
保罗·格雷厄姆(Paul Graham)的论文《征服庸俗》(Conquering Mediocrity)中也出现
了类似的图案,根据该图案,精通一种语言并解决了所有问题的程序员并不理解其他编程语言中更有效的工具的价值,因此认为它们很奇怪。不寻常和不必要。
1987
年5月出版的《教育计算研究 》首次尝试总结有关编程对认知过程的影响的可用数据。
然后,研究人员注意到,具有各种任务的编程可以对战略解决问题的能力,形式逻辑的能力,建模技巧和认知风格产生积极影响,但是由于缺乏数据,他们并未得出明确和结论性的结论。
在收集统计数据之前又过了六年,这使得具体化关于编码对思维的影响的想法成为可能。 它在1991年发表的
关于编程对认知过程影响的65项研究的荟萃分析中提出。
事实证明,在大多数情况下,编程确实会对各种认知技能产生积极影响,这些认知技能与对编程语言的研究时间及其成功有关。 科学家说:“学习编程语言的意义超出了特定计算机语言的范围。” 通过编程,计划技能,推理能力,逻辑思维能力以及使用计算机程序解决问题的一般技能,这些功能得到了改善。
各种编程语言对认知过程影响的比较研究仍在继续。 已拨款
750,000美元用于分析在线Github和BitBucket存储库的内容,在StackExchange上发布的问题和答案。 他们认为,威斯康星大学麦迪逊分校的
知识实验室和
心理学系将恢复编程语言的“自然历史”,并跟踪每种语言的使用频率和用途。
研究人员计划到2020年,找出编程语言的特定功能如何影响路径数量和解决各种问题的速度,并分析特定语言适合于集体编程的程度。
该项目的任务艰巨:提供有关为特定项目选择哪种语言的信息,并了解这种选择如何影响开发人员的思维和工作方式。
超越技能
除了实际的编程技能外,语言学习还形成了数学家,心理学家和程序员Seymour Papert在其工作中称为“计算思维”的习惯。
这是一组
灵活的技能,旨在解决算法问题 ,习惯于复杂地使用抽象,分解,评估,逻辑思维,准确性以及在日常生活中留意细节的习惯。
计算思想的概念在教学法中获得了权威,构成了许多教育计划的基础,但是随着时间的流逝,正如上世纪八十年代所期望的那样,其影响力已
远远超出了大学和学院 。
使用编程方法,可以成功解决各种问题。 这方面的一个例子不仅是计算机建模,大数据收集,自动化系统的引入,金融科技的成功。
计算思维在日常生活中以及远离IT技术的专业人员中都适用且有用。 学习编程可以帮助您找到新的方法和解决方案,无论如何。 无论是物理,生物学,化学,社会学,教育学,商业还是医疗保健。
因此,有效利他主义的概念出现了,开始寻求最有效的慈善策略。 例如,由于有了这些研究,事实证明,在抗击疟疾中,向
蚊帐捐款比向昂贵的药品捐款更有效。
计算思维的另一个结果是使用
工具对易货交易和大数据
进行数学分析以解决选择器官供体的问题。 结果
,针对复杂的,同时又可靠且有效的美国供体肾脏“链式”交换系统
开发了
一种设计,哈佛大学教授阿尔文·罗斯(Alvin Roth)为此获得了2012年诺贝尔奖。
在新研究的背景下,学习编程语言不仅是获得技能的方法,而且还是一种重新审视生活并应对所带来的挑战的方法。
很快,
Go Workshop课程将在Binary District开始-对于初学者来说是一个很好的开始,对于已经面临设计自己的Web服务的人们来说,这是一个合理的延续。