我为什么教孩子学编程?

网友投稿 2019-02-04 20:04

少儿编程现在已经是一个火得不能再火的话题了。从乐高机器人到各种类Scratch的儿童编程语言,儿童编程培训机构如雨后春笋般兴起。

他们挥舞着一面面如“人工智能”、“大数据”、“信息学奥赛”这样的大旗,用激昂的语言和崭新的名词,向家长们描绘着未来将被计算机技术所完全驱动的新一代人类社会,似乎不让孩子学编程就意味着孩子将无法在社会立足。

这一切恍如当年的奥数班,少儿编程成为摆在家长面前的又一个看似必然的选择。

1. 为什么要让孩子学编程?

一段看似牢骚的导语其实并不是说我反对孩子学编程,恰恰相反,我认为孩子十分有必要学编程,不过理由却并不是因为我们马上要进入一个人工智能的社会。

我是一个教育工作者。

“你拍一,我拍一,小霸王出了学习机。”这个广告是我小时候的记忆,而我的第一个程序就是写在小霸王学习机上,那年我刚上初中。

小霸王学习机里内置了G-Basic,现在想来,这应该算是一种适宜于学习机的简化版本的Basic语言,对硬件要求比较小。

我的第一个程序不是“Hello World",事实上那时候我根本不知道这个经典的入门程序。

我用的是Play命令,在学习机上播放了一段简单的歌曲。就是这样一个简单得不能再简单的只有一行的程序,却让我欣喜若狂,因为这是我第一次感觉到可以自己去创造一个完全听我指挥的东西。

然而,从初中毕业之后,我却有六、七年的时间没有接触编程。直到后来上大学,选择了计算机专业,才真正的学习编程、网络相关知识,在网吧里学习网络安全技术。那段时间疯狂的迷恋hack技术,也帮助不少公司测试他们的网站安全;之后又有迷恋了一段时间游戏,为了游戏等级、装备,自己先后写了一些游戏辅助程序;工作后一直从事网络相关工作,利用自己的编程知识,大大提高了工作效率。当我用这些编程去创作时,真是一种莫大的享受。

不过,编程带给我的益处可不仅仅是精神上的愉悦,更重要的是训练了我的思维模式,使我面对任何问题都能利用编程的思维模式快速地理清头绪,并梳理出解决的办法。

而编程的思维模式有很多,但对我影响最大的就是两点:分解归类的思维模式和全面缜密的思维模式。

所谓分解归类,其实就是对需要解决的问题按照关联性的强弱逐步分解成若干个相互独立的小问题;所谓全面缜密,就是不遗漏事物发展的任何一种可能,尽可能每一种可能都有应对措施。

编程的思维模式并不是只在编程中用得到,而是可以应用于一切以解决问题为目的的生活和工作场景中。这种思维模式将令孩子们受益终生。

2. 孩子应该怎么学编程?

现在的孩子接触电子产品要比我们那个时代找很多,我们家两个淘气包现在4岁多,智能手机笔记本脑已经用的很溜了(当然我们并不是那种用手机哄孩子 的家长)

现在考虑给他们上课外班,毕竟也怕孩子输在起跑线上,但是该学些什么呢?各种兴趣班,不一而足。考虑到孩子的未来,我们决定只报琴、棋、书、画相关的课外班,并且要报那种通识的课。主要还是要多陪两个淘气包在他们该玩耍的时候尽情的玩耍。

相比于技能的习得和分数的提高,我觉得有一个好基础更重要——好的身体基础和好的学习基础。

编程当然也是我想让它们学的,同样的,编程技能也不是我关注的首要问题,我更关注编程的基础,也就是编程的思维模式。

于是,我考察了很多的儿童编程培训机构,遗憾的是,绝大部分的儿童编程培训机构都沉迷于技能的培养,而忽视了对编程思维模式的训练。

当然站在商家的角度是可以理解,他们需要让真正的买单人看到立竿见影的效果,然后冲动地完成学费的支付。思维模式的训练显然不能立刻带来这种效应,远不如在Scratch上拖拉几下,迅速就能生成动画或者小游戏。家长们得以直观地感受到孩子的似乎会编程了,发一下朋友圈,一切皆大圆满。

https://cdn.china-scratch.com/timg/190206/20040LR2-0.jpg

儿童编程软件Scratch的界面

这也是为什么在儿童编程培训机构中,几乎都在使用Scratch或者类Scratch的图形化编程软件作为主要学习的编程语言。

当然,不是说Scratch不好,我也考虑过用Scratch作过儿童编程的启蒙。但是,不注重编程思维模式的培养,孩子们学到的不过是些华而不实的编程技能。

这就好像武侠小说中那些速成的招式性武功,往往都有很大的隐患,练到一定时候就会陷入瓶颈无法突破,因为缺了最核心的内功心法。

我们学习编程的不应只是学习编程的技能,而更应该学习编程的思维模式。技能也许不是人人都用得上,但思维模式却是人人都需要的,当然也包括我们的孩子们。

3. 我要教给孩子们什么?

正是出于对现有儿童编程培训机构的不满意,我萌生了想要给我们家俩淘气包定制编程课程的想法。

这个课程我将其称之为“趣味编程”,在这个课程中,我先选择Scratch图形化编程语言启蒙,而后使用了Python这个真正的编程语言。

在教学的先后顺序上,我也并没有遵循传统的编程语言教学步骤,而是将结合孩子们的实际情况,侧重于讲授以下内容:

  • 智能设备的基本原理

    • 什么是智能设备?

    • 智能设备的基本结构是什么?

    • 为什么智能设备能够运算?

    • 为什么智能设备能够处理数字、文字、图像、视频以及声音呢?

  • 使用Python进行编程

    • 什么是编程语言?

    • 什么是Python?

    • 什么是类和对象?

    • Python的数据结构、函数和语句。

除此之外,我还将使用诸如围棋、画笔这些道具来帮助孩子们思考,让他们理解万物皆可编程的道理。

AI少儿趣味编程课程是一位爸爸给自己的龙凤胎宝宝定制的编程课程。我真心希望能通过我的努力让孩子喜欢上编程,并从编程中获得乐趣和益处。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com