国际国内双循环背景下国产图形化编程平台的比较与趋势展望
2020-12-08蔡荣啸项华吴俊杰
蔡荣啸 项华 吴俊杰
2020年是风云骤变的一年,这一年国际国内社会从经济到教育都在发生着或大或小的变化。在经济领域,面对“百年未有之大变局”,国家正在引导中国经济形成国际和国内两个循环体,以促进内需,做好适合中国百姓们使用的产品作为核心,进而通过质量和服务过硬的产品来打开国际市场。相比于20世纪八九十年代的技术引进、来料加工而言,中国制造2025正在试图占领国际经济地位的一个新的制高点。与之类似,软件行业也在经历着一场“双循环”的考验,毕竟在这一领域当中,我们起步更晚。但是2020年8月的一场有关“图形化编程平台”的激烈讨论,则给了我们一个契机,来比较不同的国产图形化编程平台的特点,并且从中试图分析未来的趋势。
从A-STEM创客教育的角度,编程、建模和可编程电子是这一领域当中的基础,而编程软件平台又是其中基础的基础,图形化编程软件的出现方便了编程教育的普及。而国产编程语言发展缺失是我国信息技术发展的一种缺憾,从教学的角度,存在着一种通过扶持国产教学编程语言,孕育更加专业的国产商用编程语言的可能性。教学语言需要考虑的范围更广,比如其和信息技术课程标准的贴合度,其对计算思维、设计思维培养的促进作用,还有在创客竞赛、A-STEM学科竞赛当中的应用情况,但总体上这与“让教育滋养创客,让创客丰富教育”的创客教育理念是一致的。
国产流行图形化编程平台的概述
现阶段,国产比较流行的图形化编程平台按照开发主体的形态可以分为:以大学或创客空间为主的北师大创客教育实验室傅骞教授团队开发的Mixly(米思齐)图形化编程软件、上海新车间创客开发的ArduBlock图形化编程软件。作为创业公司行为的深圳创客工厂科技有限公司所开发的童心制物(Makeblock)图形化编程平台、DFRobot开发的Mind+图形化编程平台、深圳小喵科技开发的Kittenblock图形化编程平台、盛思科教文化所开发的mPython图形化编程软件等。此外,影响比较大的团队还有编程猫、腾讯扣叮、网易卡搭等。以小团队开发为主的图形化编程平台有Linkboy、诺丁、啃萝卜等。
上述图形化编程软件平台的开发是受Scratch积木搭建程序思想影响的,其中Mind+、Makeblock等图形化编程平台则是基于Scratch图形化编程而开发的本土化编程平台。相比Scratch平台,我国图形化编程厂商所开发的图形化编程平台基本上是在继承国外图形化编程平台的基础上丰富创新的,因此,从功能上来讲,国产图形化编程平台的编程能力完全可以替代Scratch图形化编程平台。就程序教学的需求而言,虽然Scratch具有简体中文的选项,但其官方版本仍有一些可能是为了照顾入门需求而产生的编程思想方法上的缺陷,比如没有区分数据的多种形态,缺少有返回值的函数的表达方式等。从程序教学的角度,国产图形化编程平台大多克服了上述问题,将代码编程思想与图形化编程进行了统一规范化处理,将“自制积木”改成“函数”,编程猫还在Scratch基础上为函数增加了返回值的功能。像Makeblock一类的机器人教学公司,还开发了与Scratch用法类似的,基于手机端的编程APP,更适合控制机器人和在家庭学习编程的学生使用。
国产化是国产图形化编程平台共同追寻的目标,然而,作为刚刚起步的图形化编程公司,学习借鉴是快速成长的捷径,因此,大多厂商选择基于Scratch内核或Google的Blockly内核进行二次开发。从各大厂商所生产的编程平台可以看出,在国产化过程中都或多或少地增加了与教育教学相关的模块。例如,编程猫增加了“物理”模块,为展示真实世界的物理模型提供了平台支持。除此之外,大多数厂商还增加了对人工智能、物联网等模块的支持,这些模块在原Scratch中是不存在的。此外使用Blockly开发的图形化编程平台包括微软的Makecode项目、编程猫和诺丁,不使用Blockly框架的图形化编程平台有Linkboy和啃萝卜。
从教育的连续性上来看,国产图形化编程软件很好地遵循了教育的規范化表述规律,为学生从图形化编程转向代码编程提供了思维连续的基础。因此,不论从功能还是教育意义上来看,国产图形化编程软件均能替代Scratch进行图形化编程教学。因此,目前因Scratch社区而引起的教学软件更换的需求,国产平台完全能够满足,Makeblock、Mind+、Labplus、Kittenblock等平台可以直接移植Scratch的原始程序,好好搭搭、阿儿法营、编程猫等平台可以很好地提供国内安全、数据可控的学生在线分享交流平台,诺丁、Mixly可以与Scratch官方彻底脱钩,无需打开Scratch原始文件的连续教学方案,Linkboy、啃萝卜等以硬件仿真为特点的平台也正在开发软件动画编程的解决方案,其技术底层甚至与Blockly也没有关系,而当下对于国产图形化编程平台的选择,仍然处于一个百花齐放的阶段,选用标准仍然需要根据各自的具体需要来确定。
国产图形化编程软件主要亮点
1.国产图形化编程和代码编程的转换更符合国内的信息技术课程标准的要求
图形化编程平台适合低龄儿童的编程入门与兴趣启发,因此深受国内小朋友的喜爱,然而,随着学生年龄的增长与心智模式的转变,抽象的代码编程是学生编程能力实现跨越的必经之路,因此,做好图形化编程向代码编程的迁移也是编程教育需要着重关注的问题。Python成为2017年版的信息技术课程标准的语言之后,很多国产图形化编程软件都迅速响应了图形化与代码编程相互转换的这一要求。
在图形化编程软件对代码编程支持这方面,国产编程平台做了一定的突破,编程猫、Makeblock、Mixly等图形化编程平台均集成了Python编程界面,且做到了图形化编程与Python代码编程无缝衔接。
2.国产图形化编程软件对硬件连接的开放度更高
国产图形化编程的兴起得利于软件平台对更加丰富硬件的支持。Scratch官方软件仅支持乐高和Micro:bit等硬件,主要都是已经形成行业领先地位的团队或公司。而国产图形化编程软件在对硬件连接的支持程度上远远超过了Scratch,现阶段支持绝大多数开源硬件、蓝牙手柄等。
硬件的使用方式,除了对知名品牌硬件的支持以外,各平台还开始生产自主品牌的硬件,做到平台与硬件的无缝衔接,使编程教育更加顺畅。以盛思的掌控板为例,其图形化编程平台mPython可以配合硬件完成主要的物联网及人工智能等功能的编程。
国内图形化编程平台团队的国际化愿景和趋势展望
双循环结构不应仅仅面向国内市场,更长远的眼光是转向国际市场。国际和国内双重循环应相互促进,因此,现阶段的图形化编程公司不应故步自封,在做好国内图形化编程的同时具备国际视野。近期,诺丁科技、啃萝卜和Linkboy团队将其图形化编程平台源代码公开,这实质上就是走向国际市场的重要一步。仍有大量编程团队具有强烈的国际化愿景,例如Makeblock、Mind+及Kittenblock等图形化编程平台团队最初便将公司的战略定位为国际编程公司。编程猫和腾讯扣叮从底层架构上也比较容易实现国际化。
但是在图形化编程软件这一领域,Scratch平台只是为编程教育开辟了一条向低龄延伸的快速路,而国产图形化编程软件平台则在此基础上形成少儿编程的生态链,从平台到硬件,从图形化界面到代码无缝衔接,都体现了国内图形化编程平台的完备性与前瞻性。然而就像是“生产一亿件衬衫的利润可能都不能赶上卖一架飞机的利润”的经典故事一样,基于开源软件或者框架的改写,始终还是存在着在基础工具上的创新力和勇气不足的现象,在国产图形化编程领域基础编程语言领域仍然存在着“别人现成的代码挺好的,不要重复造轮子”“要走一条新的道路,必须开发自己的编程语言”“即使开发出了一门所谓的国产语言,没有应用场景,没有上下游的支持,也是没有意义的”等不同声音,这些声音都有自己的立论角度,但仍需要有人用事实来给予这些问题答案,毕竟“百年未有之大变局”不是什么时候都有的,我们仍然要相信“时势造英雄”的可能性,尤其在這样一个“抄作业”已经没有那么流行和容易受益的时代。
编程教育不应仅仅停留在针对硬件的编程及功能的实现上,在人工智能时代,数学是编程学习走向智能化生活的基础,编程作为及时反馈的表现形式,它应该承载更多的学科融合内容,使人工智能编程教育不仅仅停留在对接口的调用,而应在算法层面进行深入思考与研究,使学生从兴趣入手,着眼未来,将人工智能算法与思想理解得更加深刻。从科创融合的角度,信息科学和物理、化学、生物、地球科学等自然科学的衔接很重要。从国家层面上对于国产图形化编程平台的支持也需要提上议事日程,“三军不可无帅”但“匹夫不可夺志”,在百舸争流的国产图形化编程平台的发展过程中,我们虽然积累有限,但仍然能够看到许多优势,面对国际巨头常常表现出来的傲慢,面对优势集团垄断的布局,我们应该有这样一种积极的自信,保持一种总体上乐观的心态来面对未来。
作者单位:1.山东青岛第九中学 2.北京师范大学物理学系