近两年,少儿编程愈演愈烈,大量资本涌入这个行业,很多家长也抱着“不让孩子输在起跑线上”的想法,给自己的孩子报了“少儿编程“培训班。但是,学”少儿编程“真的对孩子却不一定真的有用。下面我来分析一下少儿编程的几大卖点。
1.”少儿编程“能培养孩子的逻辑思维
首先,对于”编程能够提高逻辑思维“的说法是持肯定态度的。程序中涉及到的一些判断、循环等具有较强的逻辑性,孩子长期编写程序确实能够提高逻辑思维能力。
但是,有一点我们要考虑到,那就是孩子真的需要提高逻辑思维能力吗?作为成年人,可能会深有感触的是,孩子的好奇心很强,发散性思维很活跃,往往会有很多奇思妙想。个人认为,对于一个孩子来说,发散性思维比逻辑思维更重要。当然,如果孩子思维过于活跃,发散性太强,那逻辑思维可能更重要一些,但是这样的孩子只是少数。
个人一直认为,逻辑思维中包含着一定的惯性思维成分,逻辑思维能力过强会一定程度约束发散性思维,这也是成年人很少会有奇思妙想的原因。当然,肯定会有很多人不认同我的这种说法。那我们也可以换一种说法,逻辑思维跟发散性思维绝对不是同一种思维方式,孩子跟多的时间花在逻辑思维的培养上,那就要减少发散性思维培养的时间。
所以,在”对于大多数孩子而言,发散思维比逻辑思维更重要“的基础上,个人认为,没有太大必要为了培养孩子逻辑思维而去学习”少儿编程“。
2.”少儿编程“能培养孩子的编程思维
首先我们来讨论一下什么是编程思维。对于”编程思维“,我查了一下,并没有找到什么官方权威的说法。但是根据多年学习编程的经验认为,所谓的”编程思维“就是如何让计算机这种机器来解决现实中的问题的思维方式。换个说法,就是如何通过机械的思维方式来解决问题。编程思维过强,会导致思维定式、惯性思维严重等问题。
有人可能会用目前很火的人工智能来反驳,但是根据我的理解,所谓人工智能,本质上还是机械的运算。人工智能跟多的还是人的智能,机器要做的,只不过是计算机提供大量的数据,然后告诉计算机一个机械的计算方法,从而进行大量计算,进行数据拟合,得出一个数学模型而已。要得出一个好的数学模型,最重要的还是人前期进行研究,制定的算法。而一个好的算法、好的模型的得出,最重要的恐怕是数学能力而不是什么编程能力。所以,对于儿童来说,”编程思维“可能是一个贬义词。
对于一个编程的人来说,重要的不是编程思维,而是编程思想。但是编程思想,是依赖于很多知识的,如算法设计、数据结构、计算机系统、网络结构等等。但是这些对于一个接受过高等教育的人来说,也不是能够快速掌握的东西。更何况是对于一个孩子呢?
而且,目前很多教育机构所谓的“少儿编程”,也不过就是把一些命令图形化、游戏化,然后让孩子完成一些小任务而已。如给人物设计一个路线走出迷宫等。这些东西恐怕还设计不到编程思想的层面。
3.别让孩子跟不上社会的发展
还有很多机构通过制造恐慌的方式来进行宣传,宣称未来的社会将会充满大数据、云计算、AI等等,孩子不会编程,很有可能会被社会淘汰。我想说的是,无论是大数据、云计算还是AI,编程只是工具,他们都是需要数学、物理等基础学科做支撑的。目前缺少的并不是整天敲代码的程序员,而是高端的编程人才,对于一个真正的编程人才,”少儿编程“所学的那些东西都只是些工具而已,要想学,快的学一周时间就可以上手使用,他们真正需要的是扎实的知识储备和活跃的思维方式。
与其让孩子学习所谓的”少儿编程“,不如多花点时间让孩子学好学校的课程。而且学校的课程里已经包含了适合孩子学习的计算机课程,家长完全没有必要花大价钱去上所谓的培训班。上个培训班,搞不好钱花了、时间用了,孩子的发展反倒被耽误了。
如观点有不到之处,欢迎留言讨论。