适合不同年龄孩子的编程工具推荐
编程能力已经日益成为21世纪最重要的技能之一,而学编程的意义绝不仅仅是掌握技术,更重要的是锻炼孩子思考和解决问题的能力。今天为大家分享如何选择适合不同年龄孩子的编程工具。 在视频中,我们可以看到奥巴马都开始呼吁,人人都应该学习编程,那么这项21世纪的必备技能究竟有多重要? 受到各国重视的新技能 两年前,Code.org发起了“HOUR OF CODE”活动,旨在向全球青少年推广编程教育、普及计算机科学。在全球200个国家、用35种语言,向百万青少年发出邀请,一起挑战“编程一小时”。活动得到了美国社会从企业家到政府官员,从教师到家长的各界人士大力支持。并在全球范围内也得到了积极响应。 而在一些欧洲国家,像英国更是在2014年9月将编程课列为5岁以上儿童的必修课。英国经济增长的大约5%来自计算机相关行业。但和许多发达国家一样,英国的劳动力队伍仍无法赶上计算机相关行业的发展步伐。英国政府认为英国孩童在学校所学习的技能无法满足21世纪的竞争需要。所以要改革学校电脑课程,包括把电脑程序设计列为必修课程之一。 学编程到底有什么用? 计算机编程的一个非常大的特点就是及时反馈,当你想通过编程实现一个功能,在写完代码后必定会进行测试,而且你通常会遇到问题。问题会逼迫你对自己的前面思考进行再思考,直到找到有效的解决办法。编程有助于锻炼你解决问题的能力,而这正是应试教育的软肋所在。 一个由外部动机激励的学生容忍死记硬背的能力,或许和他的考试成绩成正比,但和他长远的成功却毫无关系。这就是为什么很多人区分“会读书”(book smart)和“会来事儿”(street smart)。总体上讲,“会读书”的人记忆课本知识的能力强,而“会来事儿”人则拥有在现实世界中解决问题的能力。应试教育所训练出来考试能力很难转化为现实生活中所需的发现和解决问题的能力。 如果一个孩子想要通过编程创作自己的作品,不论是游戏、APP还是别的什么,TA一定会遇到各种各样的问题,这样的问题可能是科学、工程、技术、艺术或是数学等领域的,这就自然会驱使TA去自主学习相关知识。自主学习是成就一个人的必由之路,在TED大会上,多位青少年淋漓尽致地展现了这一点。 中学生 Kenneth Shinozuka 介绍了他的小发明,如何帮助夜里会到处走的爷爷和照顾爷爷的舅舅……以及他帮助其他老年痴呆患者的梦想。 12岁的ThomasSuarez则自学成才,创造游戏。在成功地开发了Bustin Jieber(一款类似于“打地鼠”的游戏)等手机应用之后,他现在开始帮助其他孩子成为应用开发人员。 现实世界中,大多数孩子并没有多少机会像TED上的那些天才少年去设计核反应堆或是开发治疗癌症的药物之类的壮举,因为他们接触不到那样的资源---实验室和导师等。但是编程只需要一台可上网的电脑即可。哪怕是加上Arduino之类的硬件平台也只需很少的费用。 很多时候,当你要去开发一个项目或是做一个作品,你会发现团队协作是不可避免的。而编程也有助于培养你团队协作的能力。 孩子如何学习编程? 其实学习编程没有想象中的那么难,并不一定要写很多代码。近年来随着像Scratch之类积木化的编程语言的成熟和推广,使得编程的门槛大为降低。在不同的时间给孩子以不同工具,他们自己就能学会编程!
1.Crunchzilla Code Monster :孩子们可以从中学到 --Javascript Crunchzilla CodeMonster 是专门为小孩设计的(由 GregLinden 所设计,他想让他的孩子学习编程)。它有点像一个简单的所见即所得(What You See IsWhat You Get)式的编辑器一样,一个窗格是代码,另一个窗格是代码生成的效果。上面的 CodeMonster 是一个友善的怪物,带领大家逐课地学习。 总共有 59 课,你可以点击上面的聊天泡泡切换到下一课。课程入门简单,而且是交互式的,包括对变量和参数的介绍,一些五颜六色的物体像箱子和树都是用 Javascript 创建的,还能够捕获错误异常并给出解释。Code Monster 还可以保存你的课程的状态,你可以随时停止学习,稍后回来继续学习。只要你使用的是同一台机子的同一个浏览器,就可以接着上次的课程继续学习。 备受孩子们喜爱的原因:左边是 Javascript 代码,右边会创建一些简单的图形。孩子们只需要在左边玩几下代码,就会在右边即时地看到各种有趣的图形效果。 2.Logo:孩子们可以从中学到 -- 使用一些基本的数据类型像字,列表和数组创建自定义结构体。 Logo 是最早的教学编程语言之一。它是于 1967 年为教学使用而创建的,可以用于基础的计算机科学教学。最著名的要数海龟绘图的实现。从成立之初,它就已经能够扩展和应用到不同版本的操作系统。例如,Elica 的实现,就推动 Logo 进入到了 3D 动画的领域。The Turtle Academy 就是学习 Logo 编程语言很好的资源,还有很多其他的资源,像 Turtle Logo 和 FMSLogo 等等。 备受孩子们喜爱的原因:可以用移动和定位命令画出基本的形状和线状图形。 3.Scratch:孩子们可以从中学到:无需学习编程语法,就可以进行可视化交互编程。 从 300 多万个记录项目可以看出,Scratch 有一个可以自由发言,有丰富的学习资料的全球化社区。你可以用 Scratch 创建一些交互性的需求,动画,甚至是游戏。看看这篇《深入学习Scratch》就知道孩子们为什么喜欢它了。 备受孩子们喜爱的原因:无需学习复杂的编程概念,充分发挥想象力,拖拽一些精灵空间就可以了。 4.EToys:孩子们可以从中学到 -- 带有可编程脚本的面向对象编程的概念。 EToys 和 Scratch 非常类似,是一个具有丰富视觉体验的工具,可以用来创建很酷的计算机程序。创建项目的最终目的是培养创造性和批判性思维。EToys 可以作为一个跨平台的独立的程序单独运行,也可以作为一个插件运行在浏览器中。EToys在全球都是可扩展的,因为它支持多种语言,并且是开源的。有趣的是,它首次用于苹果开发,就已经被广泛用于 OneLaptop Per Child 项目中了。 备受孩子们喜爱的原因:2D 和 3D 图形被文字,图片和声音文件所支持,可以结合一些简单的脚本交互完成。 5.WaterBear:孩子们可以从中学到 -- 学习可编程脚本以及程序的流程。 WaterBear 是最近刚出来的一个开发工具,灵感来源于 Scratch。它和Scratch 也很类似,可以进行物体(脚本块)的拖放,理解程序流程。在后台,会生成 JavaScript,但是孩子们不必知道具体的语法。不过他们必须开动大脑,通过参数来组装程序块。跟 Scratch 有一点不同的是,WaterBear 只能通过浏览器来学习,没有提供可下载的应用。WaterBear 现在还没有正式发布(只是初期测试版),但是你想找一个可替代Scratch 的东西,它值得一试。 备受孩子们喜爱的原因:可以在浏览器中拖拽脚本块,每个脚本块都有一些简单的英语标注。 6.ToonTalk 编程环境提供了一些包含卡通和动画角色的有趣元素,完整版大小为 126M, 可供免费下载,并能够在 Windows 和 Mac(虚拟机) 的所有版本上运行。最值得炫耀的是,可以利用 ToonTalk 的动画世界构建各种各样的计算机程序。学习编程的过程中,会遇到很多挑战,你可以充分展现你的创造力,学习解决问题的新办法,也会从中收获很多乐趣。 ToonTalk3.0 版本现在是免费的。 备受孩子们喜爱的原因:可以玩拼图游戏并了解它是怎样在 ToonTalk 上进行构建的。 7.Cargo-Bot:孩子们可以从中学到 -- 学习怎么样高效解决遇到的难题,开发结构化思维。 科技飞速发展的今天,孩子们可能人手都会抱着一个 iPad,而不再是笔记本电脑。Cargo-Bot 实际上是一个免费版的 iPad,提供了拼图和逻辑游戏,是用 Codea 开发的。你得让机器人在 36 个不同的拼图游戏中去移动一大堆板块。Cargo-Bot 更多的是注重孩子们的逻辑,而不是纯粹的编程。当然你还有可能会学到很多关于结构化思维的东西,尽管这并不是件容易的事儿。如果你想学习 iOS 应用程序开发,在此推荐 Codea 应用,仅需花 9.99$,就可以学到很多知识。 备受孩子们喜爱的原因:通过游戏的方式来学习编程,这样孩子们学习起来不会感到枯燥。 8.Ruby for Kids:孩子们可以从中学到 Ruby 如果你想让你的孩子学习一门具体的编程语言,Ruby 是一个不错的选择。它是一门面向对象的编程语言,很多的 web 应用程序也是用 Ruby 编码的,像 Amazon 和 Twitter。Ruby很简单,语法比较直观,很少有命令的调用。它可以免费应用于各种操作系统,还有一个庞大的语言教学和学习社区。那些为孩子们创建的视频教程,游戏和示例对于孩子和大人们来说都是一个很好的学习资料。 备受孩子们喜爱的原因:教你如何使用 Ruby 开发网络游戏。 9.Raspberry Pi(树莓派):孩子们可以从中学到 -- 学习老式的计算机编程方式,但同时也可以理解硬件的工作原理。 对于接触编程较晚的人来说,Raspberry Pi 就是一个信用卡大小一样的计算机,可以像台式机一样用来编程。它具有成本低的优点,可以用于学校计算机科学的教学。Raspberry Pi 有很多有趣的用途,每天 Raspberry Pi 社区都会提出一些新颖的创意。Raspberry Pi 平台使用开源的硬件和软件,充分利用和发掘孩子们的一些稀奇古怪的想法。但是目前在学校是如何被使用的呢?Raspberry Pi 基金会网站为我们提供了一些线索。 备受孩子们喜爱的原因:教你如何在一小时内完成编程? 10.RoboMind:孩子们可以从中学到 -- 怎么样去编写机器人程序从而掌握机器人学的基础知识。 RoboMind 是一个编程和教学工具,并拥有自己的脚本语言 ROBO。简洁又易懂的语言不需要任何的先备知识。编程的目标是使虚拟机器人围绕一个二维网格移动并执行一些简单的动作。它会教学习者一些通用的原则,可以被应用到任何地方,还可以免费下载 Windows,Mac OS X 和Linux 版本。 备受孩子们喜爱的原因:学习人工智能的基本知识,以便以后可以应用到现实的机器人中,就像乐高的 MindStormsNXT 机器人套件一样。
____The End____
|