上周在《看完这篇,就没有乐高机构能忽悠你了》这篇文章中开了个头,和大家聊了下机器人的学习。壮壮学乐高的路径比较奇怪,一开始就是从和我在家玩小颗粒开始的,机缘巧合碰到了一个还不错的教练后,就动力机械和wedo都熟悉了下,就直接EV3了。
这样进度是快,但于编程就学得很不扎实,基础功能和概念几乎是空白。包括后期我们想转VEX机器人,也对编程有要求,所以我开始琢磨怎么给壮壮补补编程基础。
01
关于我对编程的一点拙见
说实话,如果有人跟我说,是为了培养所谓的“编程思维”而学编程,我会持保留意见。可能连程序员都说不清楚什么是所谓的“编程思维”。
01 为什么学编程
我比较认同两点:
孩子为未来AI和信息化爆炸的时代做好准备;
对于小学生而言,它是机器人学习必要的一部分,也可以为以后走信息学竞赛路线做铺垫。
但是如果要系统学习,我建议至少是小高年级。比如,年初的时候,北大附中招募5、6年级的信息化特长生,也不是考编程语言和代码,考的是数学。因为他们默认数学这种基础学科,对思维培养的重要性,也默认真正的编程语言,不需要提前这么早学。
02 学编程≠学scratch
跟我小时候不同,现在更流行的是Python,而信息学竞赛指定的是C++。这些编程语言都要记指令,记语法,不适合于低年级小学生,所以出现了可视化编程。
比如,现在很火的scratch只是可视化编程语言中,积木型的一种。其他类似的还有谷歌的blocky、乐高wedo和ev3用的软件等等。它们都是用“砖块”代替了编程语法,帮助小朋友理解编程。
最关键的一点:这些可视化、积木化的编程语言,其实是一通百通的。
02
用好免费的资源抵得上1年上万的课程
接下来,我要上资源了!都是我亲自体验筛选后,给壮壮选的小游戏。有1个免费网站和3个小游戏。
01 免费网站-Code.org
壮壮之前的教练,是机器人国际比赛的裁判,这个免费网站就是他安利的,是美国很多小学老师会要求学生使用的。
这个网站我们用了1年半了,前2周,就把编程入门搞定了,效果确实是立竿见影。不光ev3学得轻松了很多,家里小米机器人app里面的编程,稍微琢磨一下也玩得很溜了,着实省了一大笔钱。
网站上的课程都是免费的,课程覆盖了整个K12阶段,没有广告。大部分课程都有中文,专业、流畅,学习效果完全抵得过大部分收费课程。
Code.org的学生人数有4200万,其中有46%是女孩子,他们会添加各种好看的元素,让编程效果视觉化更美好。所以,这也是个非常合适女孩子的免费工具。
“Code.org”怎么学?
网站分两部分:“计算机科学基础”和“编程一小时”。
首先,登录网站:https://code.org ,并在主页底部切换语言到“简体字”;第二步:右上角注册登录,就可以快开始为孩子选择适合的课程了。
学免费课程
也就是“计算机科学基础”,是主线课程,分为A~F六个个级别,每个级别都有比较详细的课程安排,覆盖最基础的编程概念到带有循环和参数概念的复杂程序,循序渐进,适合系统化的学习。
壮壮的启蒙就是通过计算机科学基础来系统学习编程知识的。
比如,点进去课程D,里面包含了17个主题,在开始会贴心的介绍这部分的核心学习内容。然后,孩子可以点击具体的课程按顺序学习。
如果觉得孩子有一定基础,一个一个级别学习太费时间,那么可以试试快速课程,内容包括了主线课程中的一些核心内容。有不懂的地方,再针对性的去主线课程里面进行巩固,也是效率非常高的一种方法。
总的来说,Code.org的入门编程课程,内容足够丰富、形式足够友好。
其实在我看来,入门的孩子,只要学会了顺序结构、循环结构和条件结构,熟悉了拖拽式的方法,就足够应付后期学机器人课程了。
编程一小时
“编程一小时”的版块是壮壮最喜欢的,这个板块更像是在孩子完成阶段学习后的一次奖励,主题非常丰富。
舞蹈派队和冰雪奇缘更是合适女孩子,壮壮反正是坚决不选这两个,他最爱的是过气网红《我的世界》。《我的世界》有四个主题,形式都大同小异,都是通过编程完成给出的指令,然后操作方块大叔/大妈完成各种任务。
编程一小时有自己专门的网站,直接输入网址好像默认的是繁体,加载很慢。所以我把简体中文和英文的链接都列了出来,速度快很多。
中文链接:
https://hourofcode.com/cn/cn/learn
英文链接:
https://hourofcode.com/cn/en/learn
我认为对于学生而言,编程一小时的目的是让你了解计算机科学的乐趣和创造性,几乎没有门槛。
02 寓教于乐的编程小游戏
除了上面这个网站,我还推荐只以“入门”为目标的孩子,用下面三个小游戏。兴趣培养才是应该放在第一位的。
盒子岛(Box Island)
Box Island是有100个关卡的主线闯关游戏,也有基于code.org“编程一小时”活动,分了三个难度,完了还能生成一张code.org颁发的证书。
游戏的难度逐步推进,后面的关卡应该是要付费解锁的,从开始最简单的指令,到循环和条件,都有涉及。
比如壮壮断断续续玩到了80多关,就需要用到循环和条件嵌套了,还是需要孩子仿佛尝试、动一番脑子的。
Lightbot
比起Box island浓浓的美式漫画风,Lightbot就清新很多,但是它的关卡不是很多,好像只有英文版。
同样,也是闯关游戏,但不同的是,它将子程序的概念引入其中,小朋友可以尝试先创建子程序,然后调用子程序来控制机器人达成亮灯的目标。
Swift Playgrounds
如果说,上面两个游戏“玩”的分量更重一些,那Swift Playgrounds则更适合未来想走信息学竞赛这条路的孩子,因为这时候接触的可能才正儿八经算是编程语言。其实如果只是感兴趣,Swift、Python、C++看似眼花缭乱,其实学哪个都可以的,条条大路通罗马;当然,竞赛的话还是入门后老老实实学C++吧。
系统的教学、可视化的过程,降低了孩子理解能力的要求,苹果直接把开发语言和教育结合在一起了,我只能说,这一招实在是“高”。
和拖方块不同了,游戏是直接以游戏代码进行的。
虽然初级阶段,还不需要孩子自己敲代码,在系统提供的代码中直接点选就行,但呈现方式和可视化编程已经非常不一样了,而随着学习的深入,孩子也可以选择自己来写代码。
上面这几个游戏,都是壮壮比较喜欢玩的。ios版本肯定有,Android版本我没有特意搜过,不太确定,有需要的爸妈可以自己找一下。
最后再分享一个小神童,B站一位特别火的小学生vita君,苹果的CEO都被他惊到过。不光是孩子,各位爸妈们也可以跟着一起学编程,哈哈。
(部分图源于网络)