少儿编程培训热的冷思考

自2015年始,“少儿人人学编程”的热潮由国外蔓延到国内,少儿编程培训市场勃然兴起。目前编程教育存在两种主流模式:一种是英美等国模式,把编程当作单独的学科来进行教育教学;另一种是芬兰、新加坡等国模式,以学科融合的方式进行编程教育。也就是说,英美等国家少儿编程的具体教学工作还是放在了各级各类学校,这与我国少儿编程培训完全是两回事。现时代,信息素养对于人才培养的现实性及重要性不言而喻,但编程学习的紧迫性和必要性是否就如教育培训市场所宣传的“无法与机器沟通将不能成为未来的主人”“别让孩子输在新时代的起跑线上”“未来,不会编程的孩子就像现在不会英语的孩子一样让人焦虑”这般严重呢?编程能力一定要花费大量的财力与精力通过校外培训去获取吗?

少儿编程培训热的冷思考-少儿编程网

本文将从教育学科视角对这种在我国被夸大了的人机语言学习的重要性及少儿人人参加课外编程培训的必要性进行辨析审视,还给少儿编程学习一个理性的导向及氛围。

少儿编程是什么

编程学习主要是指对编程过程所依托的编程语言——人类与计算机对话的一种语言的学习。编程语言是按照一定的语法规则、由表达各种意义的运算对象和运算方法构成的计算机高级语言,是一种接近于人类自然语言和数学语言的程序设计语言。也就是说,学习编程语言类似于学习一门外语的语法,只是提高效率的工具。

语言是思维的直接现实。几乎所有的少儿编程培训机构都宣称,少儿编程主要学的是编程思维以及解决问题的能力,而非编程语言本身的学习及高深专业代码的编写。因此,有必要进一步明晰“编程思维”概念。编程思维也称计算思维(computational thinking),是指包含了问题表达及由计算机执行的一套解决问题的方法[1]。编程思维并不是计算机的思维,而永远是人的思维。谷歌公司将计算思维概括为四种类型:分解问题、模式认知、抽象思维、算法设计。我国学者指出计算思维是一种解决问题的思维过程,能够清晰、抽象地将问题和解决方案用信息处理代理(机器或人)所能有效执行的方式表述出来[2]。尽管定义形式各异,但可见编程思维的本质是“解决问题的一种方法”,是一种复合型过程思维。

从1968年依托LOGO编程语言的小海龟绘图(Turtle Graphics)诞生,到2007年首个面向儿童的编程语言Scratch发布,计算机语言已经越来越接近人类思维,编程语言也越来越智能化,这是少儿编程得以实现的前提;信息化技术的日新月异和人工智能的普及,对未来人才提出了诸如信息的提取、处理和分析以及解决问题的能力等“特殊品质”要求,这是少儿编程日益受到重视的现实背景。可行性与现实需求两个条件的变化,使得少儿编程教育得以在全球教育领域兴起。

编程教育是时代发展的产物。编程教育特点符合以儿童发展为中心的学生观,以生活为内容的课程观,以解决问题为方法的教学观。编程教育不是某一种教学模式,而是以人机对话平台为载体,结合诸如设计思维(Design Thinking)、基于问题的学习(Problem-Based Learning)、基于项目的学习(Project-Based Learning)、做中学(Hands-on Inquiry Based Learning)等新教育理念及模式,以达成计算思维能力的养成。从这点看,它又是以心智或思维训练为目标的教育。编程教育的目的不是“learn to code”,而是“code to learn”,即学会“举一反三”,将计算思维能力迁移到其他领域的学习中、去解决人工智能时代生活中遇到的其他问题的能力。

“少儿编程培训热”背后的理论及实践困境

国内“编程培训”火热进行的同时却遭遇理论及实践困境,具体表现在以下方面。

(一)存在合理性困境

少儿编程并未凝练出“排他性”的核心能力目标。少儿编程学习所追求的“核心素养”到底指什么?目前少儿编程培训的具体学习目标有多种提法,如观察力、想象力、创造力、逻辑思维力、问题解决、空间思维、判断性思维、序列与条件、调试操作九大能力的培养;又如思考问题全面、有条理、深入、毅力、耐心、专注、严谨等。虽然目标更具体,好像什么都说了,但实际上又什么都没说,因为这些都不是编程教育所独有的真正内涵性要素。

编程思维是解决问题的一种方法,是一种复合型能力,其所包含的核心素养由表及里、由易到难,应当主要表现在信息的提取与处理和基本算法设计与理解。总体而言,编程思维是一种过程思维,而硬要被市场打造或虚构成一种结果性的具体能力,无疑会使基于形式训练而存在的编程教育陷入存在合理性困境。

(二)内容合理性困境

少儿编程一般是针对小学及以下幼儿设计的编程模式,把原来复杂的英文代码编程语言转换成图形化、指令化、模块化的方式,依据儿童的心智程度,设计一系列在人机交互模式下以游戏闯关、趣味数学、图形图画等为主要内容,以问题解决为目的的“项目”。因此,适宜儿童智力特征的趣味性是其第一原则。这样一来,有趣的少儿编程内容就成了“居间的事物”,应该“通过使学生了解存在的联系,从而使材料有兴趣”,而不是“通过外部的和人为的诱因使材料有兴趣”[3]。如果少儿编程内容过于强调趣味性,就会淡化编程教育的真实目的;如果为了使少儿编程居间于儿童与编程思维或计算思维之间,就容易强行“把某种富有魅力的特征加到本来不感兴趣的教材,用快乐行贿,引诱儿童注意和努力”。“少儿编程到底算不算编程”是有争议的,有部分家长及教师认为Scratch等少儿编程工具太简单太小儿科了。这种质疑的背后是对少儿编程培训内容严肃性的考问。此为少儿编程培训所遭遇的内容合理性困境。

让孩子直接学习目前流行的Java、C/C++等由字母代码组成的程序语言确实没有太大意义,毕竟作为工具的编程语言不断更迭是必然现象,若干年后它们将会被新的语法结构及规则所替代。因此,编程教育将重心放在了形式训练上,倡导“编程化学习”,强调代码字符和程序语法背后的核心素养,这是超越工具语言学习的“术”而应去追求的“道”。

(三)操作合理性困境

编程教育首先是教育。课程体系是编程教育的核心内容,是保证其健康发展的根本。没有持续性、体系化的课程,都算不上少儿编程教育。目前我国少儿编程培训市场火热,但规范性不足,尚未形成科学的课程体系和培训理念,课程设置良莠不齐,未形成基于教育科学理论的相对统一的标准,甚至存在虚假宣传、违反广告法的情况。课程体系的混乱还表现在师资短板上,培训市场并无行业资质标准,从业者大多只具备信息科学的专业性而不具备教育性。

对编程思维的理解及定位不清晰首先影响了课程目标的聚焦,进而使课程体系及培训理念陷入混乱。一些培训机构根据皮亚杰认知发展理论,认为孩子满7岁便处于具体运算阶段,可以通过可视化图形编程,以“积木”搭建的形式培养孩子编程思维。从教育学视角来看,这一学习过程需要以孩子的抽象思维能力为基础;但是同样根据认知发展理论,7-12岁的孩子并不具备抽象思维。理念矛盾的背后还揭示了少儿编程教育适宜年龄的问题,培训市场的鼓吹趋向少儿编程低龄化,已经扩展到了3-5岁群体,不得不说这种资本绑架教育的行为极不利于编程教育的长远发展。

在基础教育阶段,编程思维究竟是认知发展的高阶段结果还是促进认知进一步发展的基础?从形式教育角度看,编程思维无疑是综合了逻辑思维等思维能力的高级思维,但这样的高级思维需要学科实质内容的支撑才能开花结果,因此,编程教育的专业性与教育性需要进一步融合。此为少儿编程培训所遭遇的操作合理性困境。

本文链接:少儿编程培训热的冷思考

转载声明:本站文章若无特别说明,皆为原创,转载请注明来源:少儿编程网,谢谢!^^


*文章为作者独立观点,不代表少儿编程网立场
发表评论

坐等沙发
相关文章
少儿编程对孩子的成长发展很重要
少儿编程对孩子的成长发展很重要
编程教育会是世界各国下一场科技竞争
编程教育会是世界各国下一场科技竞争
未来stem课程的发展之路
未来stem课程的发展之路
如何通俗易懂地解释什么是算法?机器人编程与少儿编程教育区别?
如何通俗易懂地解释什么是算法?机器人…
游戏化的少儿编程为什么那么受欢迎?
游戏化的少儿编程为什么那么受欢迎?
少儿编程是什么?升学利器,谋生工具?未来前景,长远投资?让这篇文章来解答你的疑惑!
少儿编程是什么?升学利器,谋生工具?…
学生都说我是编程界的“吴彦祖”