初学者学习编程要注意什么(春节让孩子边玩边学编程)
孩子要不要学习编程?
对于这个问题,人工智能大牛、斯坦福大学副教授吴恩达曾经在有“美国知乎”之称的Quora上,有过一个精彩的回答。
吴恩达是人工智能和机器学习领域国际上最权威的学者之一,也是在线教育平台Coursera的联合创始人
吴恩达这么说:
是的,请教你的孩子编程。更重要的是,培养她不断学习的能力。
在计算机科学领域,我们所有人都习惯于每隔5年就需要接受新的技术和思维模式(比如从互联网 >云 >移动互联网>人工智能/机器学习的变革),因为新技术以这种速度被发明出来,使得我们之前使用的技术变得过时。所以,从事计算机科学的人习惯于不断学习新事物。
但是,现在的新情况是,计算机几乎影响了其他所有行业。不仅计算机行业每隔几年就要发生变革,现在,各行各业的人都需要习惯变化。这就是为什么不断学习将是你传授给女儿最重要的职业技能。
我还认为,(几乎)每个人都应该学会编程。很久以前,人们还在思考是否每个人都需要读书认字。那时候,少数有文化的僧侣可以给大众诵读经文,大部分人都不需要读书认字。
或许,我们只需要少数人撰写畅销书籍,而其他人都不需要学习写作?
结果我们发现,随着识字率的提高,人与人之间的沟通变得更好:不仅是少数人能撰写畅销书,我们也可以只为一个人写电子邮件,这(种私人沟通)也有它的价值。
今天,我们处在这样一个时代———少数能够编程的人为普通大众编写大量代码。但是,如果每个人都可以编程,也许街角一个夫妻店的老板可以写几行代码来定制他们的LCD显示器,发布本周的促销活动。抑或,丈夫可以编写一个简单的APP,唯一的受众将是他的妻子,就像今天,(丈夫)发出的电子邮件,唯一的接收者是他的妻子一样。
教育的普及改变了人与人之间的沟通。现在,人机交流也变得同样重要,在可预见未来,编程能力将成为最深入的人机交流的基础。所以,我不同意那些认为世界只需要几百万名程序员的说法;我想,几乎每个人都应该学习编程,就像几乎每个人都应该学习读书写字一样。
怎么从0开始学习编程?既然编程应该从娃娃学起,但如果孩子和父母都对编程一窍不通,该怎么开始呢?
我给大家推荐三个杰宝亲测过好玩、有效、而且免费的编程学习工具。
针对编程小白和4岁以上的孩子,可以先学习Code.org,非常简单,有趣,在游戏中学习。
对有一定基础,比如学习过Code.org的孩子,可以使用Scratch或者Playgrounds进行进一步学习。
Scratch是一个开放的学习平台,孩子们可以用各种指令,天马行空地设计互动程序、动画等等。而Playgrounds就是各种不同主题游戏的平台,孩子们可以通过完成不同的游戏任务,学习编程。
孩子们可以选择同时用Scratch或者Playgrounds学习编程,或者按照个人兴趣选择其中一个。
这些启蒙编程工具的共同特点都是:
1、推行“在学习中编程,在编程中学习”的理念,通过可视化游戏形式,轻松有趣;
2、帮助孩子了解最基本的编程概念,比如顺序、循环、条件、函数等;
3、模块化编程,孩子就像玩乐高一样,把不同的指令模块拼起来,就能执行各种任务了。
Code.org:孩子学编程的入门课杰宝7岁左右最早接触的是Code.org,它是一个非营利组织创办的网站(注意:只有网站,没有APP),目标是让每个学生都能像生物、化学和代数一样学习编程,而且每年会组织“编程一小时活动“,号称已经吸引了全世界学生的10%参加。
Code.org还得到了亚马逊、Facebook、谷歌、微软等科技巨头的支持。
Code.org现在推出了中文版,针对不同年龄段的孩子推出了四类课程:
课程1:针对4-6岁孩子
课程2:针对6岁以上孩子,因为需要阅读一些简单的文字
课程3:针对8-18岁孩子,帮助他们深入学习编程
课程4:针对10-18岁孩子,通过计数循环和带有参数的函数等概念来建立更复杂的程序。
1-4每个课程都包涵十多个游戏环节,循序渐进地帮助孩子掌握编程知识。
那么,小孩子不会认字也可以学吗?
答案是:当然!
比如课程1的第一个游戏是拼图,就是学习图片的拖放,对4、5岁的孩子来说,应该毫无压力。
可能有的父母会很好奇,为什么一开始就让孩子学习怎么用电脑拼图呢?
答案是:所有这些编程工具都是让孩子像玩拼图一样,把不同的指令模块拼在一起,所以,怎么在电脑上拖放图片,就是学习编程的第一步。
学会了拼图,第二步就是帮助孩子理解“顺序”的概念,例如这个“植物大战僵尸”的游戏:
在这个游戏中,孩子可以用三个模块“向前移动”、“向左转”、“向右转”进行组合,让僵尸走到向日葵那里。答案是:选择连续三个“向前移动”模块就可以了。
在“蜜蜂与迷宫”这个游戏中,孩子会学习“循环”和“如果/否则”这两个概念的意义。孩子可以用几个模块,让小蜜蜂去采蜜,如果碰到花就采花蜜,否则就酿蜂蜜。
最右边是杰宝选择的模块,也是正确答案。
如果父母是代码小白,孩子学习中遇到问题怎么办?
不用担心,Code.org为每个游戏环节都准备了英文视频讲解,帮助孩子理解一些概念,其中一位“讲解员”竟然是Facebook创始人小扎。
在这个视频中,小扎解释了“循环”的概念。他说,跟人类相比,计算机非常擅于执行重复指令,比如:如果给Facebook的所有用户发送一个“生日快乐”的祝福邮件,他亲自操刀,可能需要100多年,但是,计算机只需要一行代码就足够了。
除了科技名人,Code.org还邀请了各行各业的偶像,比如杰宝有一天就兴奋地告诉我,看到了他的篮球偶像库里的视频。
当然,Code.org的课程并不是都这么简单,比如,针对10-18岁孩子的课程4就加入了稍微复杂的数学概念,比如函数。
例如:下面这个游戏要求孩子设计一个函数,让小狗根据不同的方向箭头来跳动。函数的概念对还在学习乘除法的杰宝来说,还难以理解,所以我并没有让他继续学习课程4。等他的数学学到这个概念时,再重新回来学也不迟。
Playgrounds:主题繁多学玩不停
Swift Playgrounds是苹果公司开发的针对iPad的APP (只有iPad版哦),也是通过游戏的方式学习编程的基础,非常适合初学者。
Swift是苹果公司创建的编程语言,很多开发者都基于Swift开发出热门APP。
孩子可以先从闯关解谜开始,掌握Swift的基础知识,还可以选择接受更高的挑战。
这是杰宝的Swift Playgrounds首页,上面的大图是各种学习模块,下面小图是开发者设计的游戏模块,可以下载后学习。
这是苹果公司内嵌的学习模块的界面,是一个3D的游戏背景,上面有个叫Byte的小萌物。
跟Code.org一样,Playgounds的每个游戏环节都会让孩子完成一个任务,比如让Byte去捡红色的宝石。
底部显示的是Swift指令模块,孩子们可以点击某个模块,相应的Swift代码就会出现在代码区。
举个例子:在下面这个环节中,孩子们要学习“循环”的概念,就是使用循环指令,让Byte走一圈,抓到所有的红色宝石。
需要说明的是,Playgrounds的代码指令都是英文,所以需要孩子掌握一些单词的意思,比如block、Gem、Collect、Closed Switch,否则不明白每个指令模块是什么意思。
Playgrounds的美妙之处还在于,孩子还可以下载由开发者们上传的各种主题的模块,完成不同的游戏任务,比如:模拟活细胞的繁殖或者死亡。
还有这个主题,设计石头、剪刀、布的游戏:
Playgrounds的主题游戏都会标注“初级”、“中级”,作为孩子选择的参考。
如果孩子们学习过程中遇到困难该怎么办?
杰宝说,这也是他喜欢Playggrounds的一个原因,如果你反复尝试几次还是无法完成设定的任务,会有提示帮忙哦。
Scratch:让孩子天马行空玩编程Scratch是一款由麻省理工大学设计开发的少儿编程工具,它也是一种全新的程序设计语言,孩子们用它可以很容易地创造交互式故事情节、动画、游戏等。Scratch的官方网站是:https://scratch.mit.edu/,如果上网不方便,也可以下载离线版本。
Scratch同样是通过图形化的模块组合实现,特别为8到16岁孩子设计,提供在线和离线版本。
至于Scratch和Code.org有什么不同?
打个比方,Code.org就像一副需要填色的画,让孩子在图案上自由地填上各种颜色,而Scratch就好比一块画板和颜料,孩子可以在上面自由创作。
Scratch的英文本身就有“乱涂乱画”的意思,取这个名字也许就反映了麻省理工开发这个平台的初衷:在这个开放的学习平台上,孩子们可以用丰富的指令模块进行天马行空的设计,充分施展想象的翅膀。
我们先来简单了解下Scratch吧。
Scratch网站默认是英文,但可以切换到中文界面。
Scratch的界面可以分成四个区域:左边是指令模块区,包括运动、外观等九个大类,每个大类下还有各种指令模块。
界面中间是脚本区,孩子可以把左边的指令模块拖放到脚本区,在这里进行自己的程序设计。
窗口最右边,上部是舞台区,可以随时播放脚本的效果,最下部是角色和背景区,可以查看脚本里的角色和背景。
这是一个用Scratch制作的动画,虽然看起来有点简陋,但也需要用到不少指令模块哦。
Scratch不仅让孩子自己编程,还搭建起一个分享的社区,让世界各地的孩子把自己的作品上传到网站上,与其他孩子分享。
总之,Scratch是一个非常强大的编程学习平台,适合掌握了一定编程概念的孩子。由于它功能太强大,教师的辅导会非常有帮助。这也就难怪无论中国或者美国,不少基于Scratch的儿童编程培训机构如雨后春笋一样涌现出来。
如果你的孩子对Scratch充满兴趣,也不妨考虑找一家高质量的培训机构,帮孩子深入了解Scratch。
如果你是老师,也可以考虑让孩子们小团队合作,用Scratch制作一些与学习相关的动画或者互动程序,让课堂学习更加生动有趣。
总结入门级:Code.org,适合四岁以上孩子
初级-中级进阶:Scratch和Swift Playgrounds。Scratch适合喜欢自己自由探索编程的孩子,Playgrounds适合喜欢玩游戏闯关的孩子。
其实,这些工具不仅适合孩子,也适合大人0基础学习,爸爸妈妈们也可以跟孩子一起学习编程,一起成长哦。
最后,记得关注公众号“蜗牛与鲸鱼”,杰宝麻麻会经常介绍一些帮助孩子学习和成长的新科技。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com