戚伟慧
随着21世纪的到来,作为第三次的工业革命代表的计算机技术翻开了崭新的篇章——信息技术,正以磅礴之势进入人们的生产和生活,国内国外涌现了许多巨无霸的信息技术公司,诸如:微软、谷歌、阿里巴巴、腾讯等,各行各业仿佛一夜之间都已迈入信息时代,信息技术最宝贵的资源是人才,所以行业人才需求也出现了井喷的情况。
【关键词】编程 OGO Lego机器人
2016年1月30日,奥巴马对公众发布了”Computer Science for All”的倡议,鼓励美国中小学生尽早地学习计算机科学的知识,为未来的大学学习和职业成功做准备。在奥巴马的这次倡议里,“计算机科学”在很大一部分就等同于“编程学习”,可以说,这一次,“编程教育”从极客的讨论里,正式进入了每一个孩子的学习中。
1 少儿编程的可行性
在我们通常的印象中,编程都是在高中或大学阶段才开始接触的,而编程语言的设计也基于此,需要有较好的英语和较强的逻辑能力,随着时代的发展,这个事情逐渐在发展。
1.1 需求分析
随着科技的飞速发展,未来信息技术的人才需求必将非常旺盛,编程也成为很多职业的必修课甚至是基础能力,拥有编程能力将更好地在信息时代生活,目前很多的编程人员是其它行业或专业发展过去的,半路出家也导致这个行业里鱼龙混杂,成为了很难有固定标准和工时的行业,往往是充分尊重个性化和随意化,很难有统一的标准衡量工作的优劣和效率的高低。随着社会专业化分工的越来越明确,必将需要大量的更专业的编程人员或者具有编程思维能力的管理人员去引领信息化。
近几年,“人人学习编程”的热潮由国外刮到了国内,这不仅是因为处于信息时代下的我们处处与计算机接轨,更是因为越来越多的人意识到,“编程思维”有助于开发我们的逻辑思辨能力和问题解决能力,更可以作为学习STEM学科、探索世界本质和规律的一个入口。
1.2 少年的发展特征
少年时代正是人生开始慢慢定型的时候,许多人才的发掘和培养都在这个时候完成,随着信息技术的不断发展,少年时代的孩子已经在不断接触电子产品的过程中,逐渐有了自己的认识,再也不会是一个陌生或者模糊的东西。编程语言是人类和计算机对话的一种语言,和人们用于沟通的人类语言一样,有着相似的习得过程,越早接触,就能更好地掌握,在逐渐成长的过程中必将对编程有更好的应用和更深的理解,用发展的眼光去看待问题少儿是适合学编程的,所需要选择是那种语言和方式。
2 少儿编程语言
近五年来,信息技术时代发生了一个特点各种程序或APP铺天盖地的来袭,在少儿编程领域了出现了很多语言。
2.1 LOGO
LOGO语言是一种早期的编程语言,也是一种与自然语言非常接近的编程语言,代表图像是一个小海龟,它通过“绘图”的方式来学习编程,对初学者特别是儿童进行寓教于乐的教学方式。LOGO语言创始于1968年,是美国国家科学基金会所资助的一项专案研究,在麻省理工学院(MIT)的人工智能研究室完成。西摩尔·帕伯设计了LOGO语言,能使儿童在认知与技能上得到较大的发展,因为对于儿童来说,“画画”比“文字处理”更具有活力,充分发挥自己的想象进行创作,引起他们的兴趣和学习该门语言的积极性,达到寓教于乐的目的。
2.2 Scratch
Scratch是由麻省理工学院媒体实验室Lifelong Kindergarten小组开发的一种编程语言和在线社区。Scratch的服务是免费的,它允许你的孩子创建自己的动画,游戏和故事。你的孩子可以通过Scratch的在线社区与世界各地的其他人一同分享创造的成果,由于使用的人很多,有很多参考的作品,而且这种语言还有机器人版,所以和开源硬件结合起来真是绝代双骄。图1是Scratch的运行界面。
2.3 CodeMonkey
CodeMonkey诞生于以色列,这个国家非常注重创新,在科技上精益求精。游戏化或做中学的编程学习模式并不少见,CodeMonkey的独特之处在于它的通关模式,以及更突显的动画风格和更易上手的游戏规则。CodeMonkey的编程环境设计简洁活泼,并带有立体的大自然环境音效在后台循环播放。玩家在右边的代码窗口编写完毕后,点击运行(RUN),便可在左邊的可视化窗口看到代码的运行结果。游戏的世界观非常简单,玩家的通关方式就是通过编写代码帮助猴子吃到香蕉,如图2所示。
2.4 Lego机器人
乐高机器人分几种,低段的是WeDo,高段的是NXT,最新的是EV3,是一门集科学、技术、工程、数学、语言、艺术等于一体的跨学科课程。秉持“玩中学”的教学理念,学生动手设计、搭建模型,并通过图形化编程软件,自主编程控制机器人完成各项任务。为降低低龄孩子学习机器人编程的门槛,学生可以根据任务单进行自主学习,通过观看微视频掌握课程知识点,同时可以参考学习资料搭建模型,设计程序,完成学习任务。乐高机器人是较普及的课程,有许多案例和作业可以在网上找到,诸如:http://bbs.cmnxt.com/。
3 编程语言的选择
LOGO语言的确是一门很适合初学电脑和青少年学习的计算机编程语言,但它的学习使用它的前提条件是需要程序编写方面的技巧,在画图中直线、线段、角、正方形、长方形、圆、正多边形、平形四边形等等都是建立在平面几何的基础之上等。
小学阶段就应该从学生的年龄、心智、知识、理解能力方面出发以培养其兴趣和良好的使用习惯为着重点。有了持续不断的兴趣来激励有了良好的使用习惯为基础有了借助计算机和网络为工具的意识有了充分的责任感为保障那么信息技术在学生今后的学习、生活、工作中的影响和积极的作用是可想而知的。我们这里谈的不是竞赛,不是少数优秀学生的课外活动,而是全体学生都要学习的计算机课程,即素质教育。所以我认为用scratch比logo更能激发孩子的学习兴趣,也更适合孩子去使用,低段的孩子使用CodeMonkey也是好选择。
MIT的Scratch研究团队开始的初衷就不希望把Scratch语言复杂化,以免引起儿童的恐惧心理,我想就是这个道理。伯克利的课程团队最初开设BYOB试点课程时,主要针对的学习群体是非计算机科学专业的18岁和19岁的青年。Brian Harvey也曾在他的文章中提到不建议儿童时期就开始写递归程序、高阶函数或对象类等。如此说来,那些新添的程序组块未必用得很自如,至少在小学阶段是这样的。Scratch及其相关的特殊版本是少儿编程非常合适的编程学习语言。
4 少儿编程教学的立场
依托图形化的儿童编程软件,引导学生在学编程的过程中,锻炼思维,提升能力。否则会沦落为为教软件而教的被动局面,以前的LOGO语言是这样,现在的Scratch语言 也应该是这样。程序设计教学的要务应该是让学生感受学技术是有趣的,并从中体会技术的作用和不断发展的历程。无论是哪个版本的程序设计语言,我想明确了这一点,然后根据学生当下的水平,选择恰当的内容进行教学设计和教学实践,学生一定能学得很精彩。
大多数都侧重“做中学”,即Learning by Doing的理念基础上,对产品进行了或多或少的游戏化,从而激发学习者对编程的兴趣。
华盛顿大学西雅图分校的计算机教育研究者安德鲁·柯(Andrew Ko)说,目前我们还没法确定这一点——这是因为针对这一主题的研究少得可怜,甚至少于对传统课堂外的研究。“我们对于计算机教学方法的认识还很不成熟”,柯说道。
研究人员认为,编程app和玩具不应取代用于传统童年活动的时间,无论是玩泥巴还是学习阅读。但另一方面,较早接触这些产品能培养孩子们的热情,这可能成为他们在未来从事计算机科学的动机。对大多数幼儿来说,他们需在掌握读、写能力后才能使用编程app和玩具。
参考文献
[1]王颢.儿童编程语言十大排行榜,https://zhuanlan.zhihu.com/p/21973469.
作者单位
杭州万向职业技术学院 浙江省杭州市 310023