我们可以看到中美编程教育普及的巨大悬殊带来的市场机会,也可以看到国家政策的鼓励——编程陆续进入各省高考考纲,并将其视为“下一个奥数级别的市场”。不过说到底,在中国少儿编程教育依然如此早期的阶段,这是一个“因为相信,所以看见”的判断。
从“小海龟”到全球最火爆的乐高编程机器人
这个“相信”来自一个追溯到半个世纪前的故事,跟一只“小海龟”有关。
大概长这样:
可能很多80后对这只“小海龟”还有印象,学名叫——“小海龟绘图”。在上计算机课还需要戴上塑料鞋套进机房的年代,教材里有专门一章介绍“小海龟绘图”的。这也是很多人接触到第一种编程语言。
“小海龟绘图”(TurtleGraphics)所使用的编程语言叫LOGO,是年从LISP语言的基础上发明的,比C语言还要早。与一般的计算机语言不同的是,LOGO语言输出的表现结果是几何图形。由于绘图的光标一开始是一只小海龟,所以被亲切地称为“小海龟画图”。
这种语言的发明者就是西摩尔·派普特(SeymourPapert),一名来自南非的计算机科学家、数学家及教育家,是人工智能发展的先驱之一。他参与创办了MITMediaLab。这是第一款针对儿童教学使用的编程语言。派普特也由此被称为“少儿编程之父”。
在LOGO编程语言的世界中,孩子可以在键盘上写下指令,让小海龟在画面上走动,无论是上下左右,还是按照一定的角度、速度或重复动作等。这虽然看起来简单,但其背后的学科知识是人工智能、数学逻辑以及发展心理学的结合。简单的指令组合之后可以创造出非常多的东西。
比如这样:
甚至这样:
有人甚至还写了一本书叫《乌龟几何》(TurtleGeometry),来教大家如何用简单的LOGO语言玩出天际。也证明了LOGO语言不仅仅只是给小孩使用的,成人也可以使用。
不过,在LOGO语言发明的年代,计算机的价位在几千美元一台,对普通人来说根本用不起。于是派普特就发明了实体版“小海龟画图“。
最初的时候“小海龟“只是一个三轮装置并安装了一个”尾巴“也就是一支笔。由MIT的TomCallahan在-年之间制作。
孩子使用简易的键盘控制器(左边),操纵“小海龟“画出图形(右边半球形装置)。这张照片是派普特的书《头脑风暴》(Mindstorms)的封面。
年,时任乐高公司CEO的克伊尔德·克里斯丁森在电视中看到了一次派普特的采访节目。当时派普特正在电视中演示实体LOGO海龟。克里斯丁森认为,实体化的海龟跟乐高的产品哲学有相通之处,二者如果能够结合起来,一定是个不错的新产品。
随后,克伊尔德访问了MITMediaLab。在与乐高接洽后,帕普特提出了一个不同以往的想法。LOGO和“小海龟”,以及MITMediaLab的其它研究都需要将实物机器人与计算机连接。帕普特的新设想是,能否创造一个能替代电脑的乐高零部件——一个具有计算的功能,又能跟乐高一样小巧,又足够便宜的零部件。在当时,这是一个巨大的挑战,然而这也将会是一个巨大的革命式的创新。
但这个设想直到年才得以实现。那年,乐高发布了全新的可编程机器人产品——Mindstorms系列。为向帕普特致敬,乐高用他年出版的书名作了注册商标。从此,乐高掀起了一场全球的机器人风暴。乐高Mindstorms在年9月发售,当年12月1日即全部售罄。时至今日,乐高机器人依然是全球最火爆的教育机器人。
为了致敬帕普特,乐高以其著作名命名了可编程机器人产品——Mindstorms系列。
Logo的发展和Scratch的诞生
在80年代,同样受到帕普特启发的还有一名青年记者。一次偶然的机会,他听了帕普特的演讲,也由此改变了他对计算机的认知。第二年,这个年轻记者拿着MIT的奖学金,参加了帕普特的研讨班。这个青年记者就是后来的“Scratch之父“——米切尔·瑞斯尼克(MitchelResnick)。作为帕普特的学生,瑞斯尼克同样也是其一生重要的合作者。
乐高公司和MITMediaLab一直保持着密切的联系和合作。年,乐高向MITMediaLab捐助了一个教授席位,帕普特也理所当然成为了第一位“LEGOProfessorofLearningResearch(乐高学习研究教授)”。在帕普特退休之后,为纪念他,这个席位名称改为LEGOPapertProfessorshipofLearningResearch,并传给了他的得意门生瑞斯尼克。
作为西摩尔理念的继承者,瑞斯尼克在LOGO的影响下,推出了更先进的面向儿童的编程语言——Scratch。Scratch首个版本在年发布,在LOGO的理念与乐高机器人编程工具基础之上,推出了更易于儿童理解的用命令图块搭建逻辑的编程方式。年,Scratch发布了可直接在网络浏览器里在线操作的2.0版本。Scratch3.0也已开放了测试版本,采用Html5的页面技术,支持横式和直式的图形式程序撰写,未来可以在iOSAndroid手机平板及桌上电脑跨平台的使用。
到今天,Scratch的在线平台已经有超过万注册用户,被翻译成70余种语言,在个国家里被使用。Scratch语言与各种硬件和软件相结合,被广泛使用在学校、家庭以及校外的计算机、编程教育等。教师也用Scratch语言服务于其数学、科学、地理、历史、艺术等教学。Scratch为儿童创造了一个低门槛的编程学习环境,也方便孩子将来学习其他编程语言。
瑞斯尼克在TED的演讲,完整地阐释了Scratch编程的操作以及学习编程的意义。
帕普特的思想遗产
派普特对儿童教育的贡献不仅仅只是LOGO编程语言而已。其背后的思想对每一个现如今每一个教育工作者尤其是少儿编程教育的创业者们都会有很大启发。
不过在阐述派普特的思想之前,必须提到瑞士著名心理学家、哲学家让·皮亚杰(JeanPiaget,-,认知发展论的提出者),今天他也被认为是伟大的教育思想家。
皮亚杰在二十世纪中叶提出了建构主义(Constructivism)学习理论,目标是