“每个人应该都学习一点计算及编程的知识,因为这会让你学习会思考!”
——Steve Jobs,Apple 创始人
这是乔布斯在多年前接受采访时说过的一句话,后来慢慢变成了各种编程班的经典文案。
那么编程真的是未来的香饽饽呢?还是早教机构画的“大饼”呢?
为了回答这个问题,作为家长的我,在收集了一些资料后,试着用这篇文章给大家一个较为客观的回答。
编程的本质
关于编程,用笼统的话来解释,就是用电脑可以识别的语言去命令电脑去完成某个任务。
当然这并不像我们叫孩子帮忙到楼下超市打一瓶酱油那么简单。
因为它们比较“蠢”,前期我们需要尽可能详细的告诉它如何做:
“从家门出来往右直走10步来到电梯,按往下的电梯按钮,往前走一步,进入电梯,点击电梯的1楼。等待电梯到达1楼后走往前走10步走出大门..........”
要把所有的程序都量化到一个具体的数字,这就是编程思维。
这样的编程思维对于孩子的好处是,可以让孩子拆解完成目标的流程,然后再把所有流程拆解成更小的模块。
当然大家也不要以为编程很难,或者说没必要学编程,因为它将是未来的一种趋势。
那些免费的编程资源
目前儿童编程的大环境,常见的编程语言有:Python、C、C++、java等。
对于刚接触的孩子而言(一般在5-6岁),大部分的编程班都会用“可拖拽”“现成”的编程语言来引起孩子的兴趣,一般用的是Scratch。
何谓“可拖拽”和“现成”?下面这张图就是scratch软件的截图。
你能看到这些不同颜色像积木的模块,它们都有单一特定的功能,只需要拖拽到程序框中人偶就会跟随程序命令做出相应动作。
当孩子对编程有了基本认知后,就可以转为更加专业的,需要手动写代码的编程语言了。
而Python就是需要手写代码的语言,下面这张图就是用Python做的表白图。
(部分Python代码如上)
比起其他的编程语言,Python(10岁以后)更适合孩子,从目前的行业情况,Python可谓是码农必备的技能。
孩子如果是学习编程,那么正常的规划路线应该是:
Scratch→ Python→C++
好了!说了这么多是时候进入主题:
1
网站资源
扣哒世界
适宜年龄:8岁以上
https://koudashijie.com/
Codecombat是一个编程游戏网站,利用游戏模式来激励孩子学习编程,一共有超过9000个关卡。
而扣哒世界是codecombat进入国内和网易合作后进入国内改的名字(code的音译)。
并且它还陆续承办了一些世界类的AI大赛。
(网站截图)
不过有一样东西不知道你们是否能接受,那就是它们的编程学习是以游戏为切入点,如下图用的是Python语言要求英雄躲避尖刺拿到宝石。
Code
适宜年龄:7岁以上
https://code.org
这个网站我是实实在在的把80%的关卡都玩明白了,才给大家推荐的,有图有真相。
对了!如果你家用QQ浏览器可能登录不了这个网站,用chrome可以直接登录,并且可以选择中文。
Code用的就是Scratch编程语言,不需要编写代码,直接套用就行,当然在过关卡的过程中要了解每一个模块的使用方法。
并且Code.org是微软前高管Hadi Partovi创办的公益组织,所以网站上的内容都是免费的。
Scratch社区
适宜年龄:6岁以上
https://scratch.mit.edu/
Scratch本身是麻省理工学院(MIT)设计开发的少儿编程工具,也是目前主流的少儿编程教学工具。
这个是Scratch的用户社区,供用户在上面发布作品及交流。
可是比较遗憾的是,由于在1年前,有人在社区里发布了一些不适的内容,导致我们这边已经无法登录Scratch,现在如果想要上这个网站就需要梯子才能登录。
如果想要学习Srcatch编程当然也不一定要登录网站,可以下载Srcatch3软件到电脑上,有详细教程有案例。
Srcatch3在百度上可以轻易找到下载资源,而想要系统的Srcatch3的课程资源在B站上有。
有道咔哒
适宜年龄:7岁以上
https://geek.163.com/
这是Scratch编程爱好者的交流社区,已经学会Scratch的孩子可以在社区上发布自己的游戏作品,这个网站聚集了很多少儿编程老师交流作品。
很多编程爱好者会用Scratch做一些简单的小游戏,就是我们8090后小时候玩的那种像素组成人像的简易游戏。
但别看它画面渣渣,游戏很简陋,但是当你看到那一连串代码,哪怕只是Scratch这种成品代码后,你就会恍然大悟,在计算机的世界中,再简陋的东西都必须严谨。
(这里仅仅是很少一部分的代码)
2
APP资源
下面这些app,只要是用ios系统的,基本上可以在苹果商店下载并使用,如果用的是安卓手机,我会在文末放出获取app的下载方式。
但是由于安卓手机的不兼容问题, 可能有些下载后可以运行但并不一定能玩。
比如下面这款是接下来要介绍的Think_Learn_Code_a_pillar™可以看到我是可以打开第一关的,但是我无法滑动右侧的方块到中间。
在第一局的提示中是要把右侧的前进模块拖拽到中间:
Think_Learn_Code_a_pillar™
推荐年龄:4岁+
这款app是费雪开发的一款儿童启蒙类app。主角是一只叫catepillar的可爱毛毛虫。
而我们要负责的是控制它的行走方向让它走到终点,一共有13个等级,主要训练孩子的方向感。
Lightbot :Code Hour
推荐年龄:4岁+
这款APP译为《编程机器人》或《灯光机器人》,苹果用户可直接在app store里下载,网上也有很多汉化版资源。
这也是我想要详细给大家说说的一款app,APP里一共设有20关,20关分成3大主题,分别为:基本(序列)、函数、循环。
基本序列就是教会孩子各种简单的方向及动作,如下图:
来到第二个主题,下面这一关就是函数主题的关卡,我们可以发现往前走3步然后点灯,是一个固定的公共步骤,就是所谓的函数。
假如P1代表(往前走3步+点灯)的动作,那么整个流程就是p1+左转+往前走1步+p1+右转+往前走+p1。
第三个主题是循环,所谓的循环就是把一套函数重复使用,其实上面的就是一种循环,把P1重复3次。
下图就是循环的第一关,需要让小人往前跳1步,然后点灯,只要重复这套动作6次,那就是先做好第一层的p1(前跳1次+开灯1次)。然后把p1嵌套到另一个大的p1上,大p1的功能是重复执行p1六次。
可能我这样说,大家不太懂,只要你下载app后完了才能明白。
SpriteBox_Code_Hour
推荐年龄:6岁+
国内翻译过来叫盒子精灵,是上面的Lightbot是同一个开发者,不同的是这款游戏的玩法像极了我们小时候的玩的马里奥游戏。
玩家需要完成20块小地图的搭建,150个小星星的收集。
前面的关卡相对比较简单,只需要点击右侧的代码即可。
来到后面就需要小朋友去主动输入单词指令,完成相应的动作。
Scratch jr
适宜年龄:6岁以上
ScratchJr的开发灵感来自Scratch,但与Scratch又有较大的区别。ScratchJr重新设计了用户界面及编程语言,让操作更加简单,更适合孩子使用。
孩子可以利用模块拖拽的方式,让人物发出移动、跳跃、舞蹈、唱歌,创建出互动式的故事和游戏。
甚至可以自己录音,然后做成一个专属命令。
下图这种最简单的动作动画,只要孩子学习一个星期甚至更短的时间就可以完成。
如果孩子想系统的学习Scratch,也可以在网上买一些现成的书,当然B站也有不少的教程,大家看自家的需求。
目前市场上还有很多的编程类app,我就不一一列举出来了,这里我为大家准备了8款app,大家可以自行到网站下载(ios用户可以直接到应用市场搜索下载)。
编程是不是噱头?不,我觉得它是一种未来的趋势。
在电影《头号玩家》就有这样一句经典台词:
I came here to escape from reality, but I found something far more important than myself, and I made a lot of friends, and I found love.
翻译过来的意思就是:
我来这里是为了逃避现实,但我发现了远比自己更重要的东西,我交到了许多朋友,我找到了真爱。
人工智能,看起来很复杂很玄幻,但它确确实实就从一个个小小的代码开始。也许不久的将来,就会实现了,我们拭目以待。