小朋友编程,是近年来美国投入力度越来越大的方向。谷歌在六月底推出了Project Bloks,称能帮助甚至不会读写的小朋友学习编程。
作为一个理工学校毕业的妈妈,我很感兴趣这是啥东西。让我们来看看Project Bloks的工作原理和怎么玩。
Project Bloks的目的,是提供一个开放的硬件平台,帮助开发者、设计者和研究者为孩子们建立一个实体的编程体验。
教孩子编程的一个有意义的事是,他们可以通过编程表达出用语言表达不出的思想。平日,孩子们是通过社交、合作、玩东西、用手探索来进行学习的。
Project Bloks是基于实体编程(tangible programming)的原理的,实体编程已经有一段历史了,始于70年代麻省理工学院的Seymour Paper教授。
其后有不少其它种类,例如Tern、Topobo和可程式化积木(tangible programming bricks)
实体编程通过授于孩子们自然的方式,再加入新技能,例如计算机和编程技能,让孩子们学习编程技巧。
孩子们可以通过触摸和操纵实体,而不是仅仅是显示在屏幕上的一段代码,来完成编程。
Project Bloks是谷歌的Creative Lab和斯坦福教授Paulo Blikstein合作的结果。它提供了一个实体编程的开发平台,帮助小朋友们学习编码。
下面的视频有原理介绍。建议看过全文后再回头看看此视频的演示。
Project Bloks的组成有三个部分。
主板(Brain Board),象大脑一样负责所有的信号处理、电力提供,以及和外界的各种接口,例如蓝牙、WI-FI。
功能小块(Puck),是单块代码的物理载体。
其代表各种指令例如“向前走”、“转右”或者重复之前的指令。
基板(Base Board),作为一个连接器和框架,接收从功能小块来的指令。工作的时候,需要把功能小块放在基板上。
基板们和主板链接在一起,形成一段代码,把指令发回主板。
三种组件们组装在一起,功能小块通过基板传送指令,主板处理这些功能小块们组成的一串指令,并把指令发给附近的被操作物,例如机器人,用以控制其运动。
各组件还能重新各种组合,并增加包装,得到新的功能块,获得各种编程体验。
例如下面这个组件是为了产生音乐。
下面是谷歌此前推出的的scratch编程效果界面
可以像搭积木一样,把逻辑通过积木式的表达逻辑呈现出来
实体编程非常神奇,一群不会读写的小朋友,也能不需要一堆语法错误完成自己的编程。而且可以很快从结果纠正编程错误,用不同的方法反复尝试,最终有愉快的“解决问题”体验。
看看下面的视频,一群小屁孩是如何用实体编程完成“自动绘画”的。
Project Bloks把重点放在平台上,可以让有创作天赋的开发者,减少输入,把注意力放在真正的功能发明上,创造出更多神奇的东西。
世界的发展,要从小屁孩抓起。
推荐阅读:长春热线