最近闲来和一位退休的小学老师聊天。他教数学,兼任信息学老师,便聊到小学阶段的计算机编程启蒙。聊的很有兴趣,也感慨科技的发展,现整理如下。

1 第一代儿童编程启蒙

改革开放之后,邓爷爷提出,计算机要从娃娃抓起。小学最早一批计算机教学,使用的是中华学习机,主要教学内容是计算机操作、打字以及简单的编程(LOGO、BASIC)。在教学实践中,考虑到学生语文、数学,尤其是英语(笔者是初一才开英语)基础都不好,基本面向的是少数5年级以上学有余力的学生。由于缺少图形化的编程教学工具,教育工作者的大部分精力用于教授基础的操作和语法。

展开来说,第一代编程教学使用的工具基于当时的工业水平,进行了可贵但非常有限的优化。LOGO、FC系列(如金字塔、后期的小霸王)图形、浮点Basic,以及少数的Z-80 Basic, 都是需要先打字,并会拼写诸如 if 这样的英文单词才能操作。编程以字符界面为代表,结果以简单图形、蜂鸣器声音、大量字符等形式呈现。部分环境人机界面也不是很好,有些只相当于DOS 3.0 之前的 Line Edit, 无法自由的跨行移动光标。

在1980-1990年代,电子线路、机械航模、计算机三者在当时的少年宫是分立的,基本没有太多交集。电子线路兴趣班主要制作鸟叫蜂鸣电路、晶体管收音机等等,面向的是初中高中生;机械航模,在省会城市比较常见,以机械小车(发条、电池)、船、橡筋动力飞机为主。回到计算机教学,对于这种实操性很强的学科,教学效果却很难提高——原因是80-90年代,能够购置学习机的家庭很少(计算机就更少了),依靠少量的课时、较为单调的UI和控制能力,很难把编程教学推广到大多数孩子。

2 翻天覆地的变化

随着科技进步与我们整体工业水平的提高,当前的小学编程教学已经从属于信息学教学,电子、机械、计算机三者的领域渗透,催生了如机器人、智能积木等等子方向。

抓住计算机编程的灵魂

计算机编程的灵魂是算法思想(这句话老爷子说的很好)。如何让小学生不用敲击键盘输入语句,就能编程?显然是图形化编程。最成功的范例是Scratch,MIT(没错,是MIT)的大作。Scratch使用积木化的流程模块,构造了通俗易懂、生动有趣的编程环境。更可贵的是,简单表象背后,其实际能力却一点也不简单。

  • 图灵完备:过程支持递归的哦!可以画出分形图案。
  • 并发:“逻辑上完全并发,程序可以任意安排多个起点,由不同的感知事件驱动。要在一般的语言上实现并发,需要较高的经验和试错——利用Scratch可以轻易构造一个打鱼游戏。
  • 事件驱动:这个字面意义已经够了。
  • 多媒体:播放叠加的素材;动画控制、图层与角色形象切换。
  • 扩展性:外部传感器、智能积木、绘图……

使用Scratch,可以通过简单的积木,实现递归算法,完成中华学习机LOGO语言进阶时的题目。

更具体有推广意义的是,结合RaspberryPI ,可以在有限的资源和场地下,实现成本控制,让经费有限的学校也能组织起有效的计算机教学。这使得计算机编程启蒙成为全民运动,而不是精英教育。仅从这一点,就可以说这是时代的进步,社会的进步。

融合机械与电子的奇迹

在步入21世纪的第二个十年后,智能积木开始全面取代单一的编程启蒙。这主要受惠于科技的进步:

  • 片上系统SoC技术的成熟:在功率、体积可控情况下的计算、控制能力跃升,允许在手掌大小的控制器中集成完整的工控系统。不管是乐高、Abilix以及其他机器人教学启蒙套件,如果按照30年前的标准,完成上述控制需要半个机柜、多个继电器组的支持。现在,传感、计算、控制、反馈高度集成并闭环在一起。
  • 深度工业化:工程塑料精密加工技术、低成本传感器与步进电机、系统工程学设计。实际上,积木的标准化设计、灵活重构,和当代真实工业领域的标准化是一致的——硬盘盒生产商不会自己生产电源模块,而是从标准化的列表中根据需求选取一种——基于相同的理念,人类的工业资源在全球科学的配置。


学习编程不再独立。教学启发学生自觉寻找解决问题的途径,依靠基本的工具设计解决方案,实现并观察结果,思考并迭代优化,这是在训练科学思维本身。

3 进步:由单人技能培养到团体方法论塑造

这30多年间,小学计算机启蒙的最大变化,就是大大降低了学生的技能学习成本,把面向个人的编程启蒙,变成面向团队的方法论启蒙。

笔者属于第一代启蒙教育的产物,在没有学英语的情况下,IF、FOR一个学期也分不清楚。学LOGO,不懂为什么前进叫“FD”。80年代末,小学阶段的计算机编程启蒙主要集中在编程本身,竞赛的方法是单打独斗。事实上,即使到了高年级,小学信息学竞赛的题型主要都是技巧性的:

字符金字塔输入行数,输出金字塔3******

为了解决这些问题,学生在没有学习英语的情况下,需要花费大量精力首先记忆PRINT、IF、FOR等语法,而后应对各种回车、TAB、换行、文件句柄的问题。——这些技能对于未来不学习计算机行业的学生来说,成本太高了,尤其对于五年级以上,等待升学考试的小学生而言,显得不切实际。

另一方面,单打独斗的训练,也影响到儿童参与团体活动的时间,娃娃编程高手都是带着眼镜、不爱说话、古里古怪的”离群小博士”,本身就是有问题的。


.现代的计算机编程启蒙,已经完全发展为不同的学科。为了制作一台垃圾回收小车,团队中的小朋友需要在规定的时间内各尽其职,并通力协作。有想法的小朋友,不但要有点子,还要会表达,能够正确的与团队同步自己的想法。当遇到困难,是互相责备还是努力寻找解决的途径?

我想,未来是乐观的。再过20年,当这一代小朋友走入社会,他们应该会比我们这一代饱含科学精神、人文精神;未来的顶级团队会越来越多,他们可以是攻克病毒的科学家、设计桥梁的建筑师、智能农场的经营者、决定资金流动的分析师……无论是什么职业,这些团队都有共同的特点,就是彼此充满信任、彼此认可角色、彼此相互支持。

4 多角度思考

除了赞美科技与理念的进步,也有一些其他角度值得思考。

工业化的过度代偿不可避免

30年前, 为了制作一个可以航行的船模,辅导老师要带领学生(往往是自己包办)动手打磨一块铁质易拉罐皮,并在铁丝拧成的龙骨上用烙铁焊接。学生使用涂满凡士林的圆珠笔作为轴套,自行车辐条作为传动轴,完成一个没有遥控能力的航模——整个过程持续一个学期。

30年后,孩子使用预制件的智能积木,可以在1天之内完成小车的搭建,并且具有智能寻向能力。但是,若搭一艘船呢? 小朋友便会要求辅导老师:" 船体的积木编号是多少?快联系厂家发几套过来“、”舵机的编号也要发过去。” 剩下的,则是等待。

工业化,是只能向前的单行道。人类不必再学纺纱织布,我们不需要DOS命令也能移动文件夹。当代生活越来越高效、舒适、方便的同时,我们要注意到,哪怕不起眼的生活小物件,从自然原料开始动辄涉及到上百个前后衔接的独立行业。保持基础的生活技能,也许是应对灾变的生存之道。

老一代人的未来——学习使人年轻
长江后浪推前浪,前浪死在沙滩上。这个命题对了一半。人不是水,是有动力的航模。保持动力,不断升级,就能够逆流而上。即使生理年龄很小,但不再学习,则会逆水行舟,不进则退,比老人更早的死在沙滩上。

作为一名教育工作者,我分享给各位父母的是,陪孩子学习和玩本身就是学习。每一代人的思考方式很不同——我是7080后,我觉得,90后、00后、10后各不相同,而且是越来越棒。对待自己孩子时,不站在威严的父母的角度,而是放低姿态,和孩子们打成一片,真正成为他们的朋友,就能发现30年时代进步不仅从物质上改善了我们,更从精神上重塑了我们。和孩子们在一起玩玩Scratch、智能积木,安静的思考,品味,你会穿越时空看到充满生机和希望的未来世界。

小学阶段计算机编程启蒙闲谈相关推荐

  1. 图形化编程与python的区别_计算机编程启蒙为什么要选图形化编程和python

    以前人们学习计算机编程,大多是从敲代码开始的.因为上大学之前大多没有接触过计算机,打字速度很慢,计算机课时又比较少,每节课基本上都是敲完程序代码就下课了.课程没什么趣味,所以对计算机编程大多是比较抵触 ...

  2. 为什么现在小学生都学计算机编程了,为何要在小学阶段开展编程教育?

    Code.org是一个非营利性组织,他们曾在2016年发表过一个报告--Anybody can learn (任何人都可以学编程),在报告中他们指出,在美国境内,与计算机学科相关工作的工资支出只占新增 ...

  3. 计算机算法对程序设计的作用,计算机编程中数学算法的优化策略

    李钰 摘要:在计算机编程中,合理地运用数学算法所拥有的优势不但可以完好地针对所拥有的问题进行总结分类归纳,还可以将其归纳作为基础从而进行针对性的统一计算,并且能够将非常复杂的问题进行整体的简化并且将其 ...

  4. 儿童 计算机知识启蒙教育,儿童编程启蒙教育中的可视化设计应用探究

    摘要: 2016年AlphaGo的出现让人们意识到人工智能时代已经不远,人工智能是计算机学科发展的产物,它的出现让人们意识到编程的重要性,并将编程看作是数字时代的基本素养,从而促使儿童编程教育逐渐被重 ...

  5. GoC编程(C++画图) 小学C++编程启蒙、入门、学习路线推荐

    少儿编程C++画图之GOC编程 视频和资料集 少儿编程C++画图之GOC编程 视频和资料集-CSDN博客 GoC编程(C++画图) 视频和资料集 -- 2022.07.26 GoC编程(C++画图) ...

  6. 小孩学python有意义吗-少儿编程启蒙阶段有必要报班吗?看团妈的测评

    原标题:少儿编程启蒙阶段有必要报班吗?看团妈的测评 文 | 团妈 但凡关注几个育儿号,总能看到不少关于学习编程的推送,"未来几十年,具备这种能力才能成功""不会这种技能, ...

  7. 如何把计算机课讲得生动些,谈小学阶段如何上好计算机课(5页)-原创力文档...

    PAGE PAGE 1 谈小学阶段如何上好计算机课 [摘要]<中小学信息技术课程指导纲要>指出:"中小学信息技术程的主要任务是:培养学生对信息技术的兴趣和意识,让学了解和掌握信息 ...

  8. 崇寿小学计算机编程,宁波第一!崇寿这个学校的孩子们棒棒哒

    原标题:宁波第一!崇寿这个学校的孩子们棒棒哒 前不久,宁波市中小学信息学能力水平展示上 慈溪市崇寿镇中心小学 拿到了12个优秀奖 13个良好奖 获奖总人数 又一次位列宁波第一名 第33期宁波市中小学信 ...

  9. 致敬我在深圳大学的C++启蒙老师,跟着他学计算机编程就对了 (文末赠书5本)

    致敬我的C++启蒙老师,跟着他学计算机编程就对了 摘要 讲述了一个故事,介绍了一位良师,一段因C++而续写的回忆,希望对各位看官有所帮助和启发. 文章目录 1 写在前面 2 我的C++启蒙老师 3 谈 ...

  10. 武清小学计算机课,武清计算机编程课,萝卜向上技术锻炼

    武清计算机编程课,萝卜向上技术锻炼 编程是一个强调"逻辑思维"的学科:当我们面对复杂繁琐的步骤头疼不已时,编程锻炼出来的思维能够效率地将问题化繁为简.这就是编程不仅被广泛应用到各行 ...

最新文章

  1. 【BFS宽度优先搜索】
  2. 15个精心挑选的 jQuery 下拉菜单制作教程
  3. ASP.NET技术的学习顺序
  4. 最新emlog程序仿小刀模板源码
  5. 辨别Python中load和loads的小技巧
  6. ART艺术作品相关公开数据集
  7. python解决八数码问题_python八数码
  8. 关于 TJA1043 休眠和唤醒一点使用方法
  9. 注册公司的基本流程 version_1.0
  10. WordPress采集插件推荐都是免费采集插件
  11. 【Hexo搭建个人博客】:yilia主题配置(三) - 评论系统
  12. 性价比打过折的故宫紫禁城
  13. 本题目要求读入2个整数A和B,然后输出它们的和
  14. MySQL MGR 安装
  15. 基于Hbase和SpringBoot的分布式HOS文件存储系统
  16. 打开Visual Studio Community 2017 报出“许可证已过期”
  17. Vulkan【1】介绍
  18. notepad++ 使用JsonView来格式化json字符串
  19. 大规模太空资源开采,在未来十年将成为现实
  20. 1.1 硅、玻璃和石英微流控芯片的制作

热门文章

  1. 好家伙!微软苏州 M365,上班时间打王者荣耀?
  2. 头条 上传图片大小_无锡抖音巨量运营培训南天值得选择——鹰手营子矿头条...
  3. 抖音图文人物故事音乐任务实操短视频运营课程,手把手教你玩转音乐任务
  4. 相机存储卡不小心格式化怎么恢复呢?
  5. 原来没有网络也能扫码支付,都是因为它啊!
  6. 两种方法模仿支付宝进入到后台界面模糊
  7. esir openwrt x86_惠普 小欧S01 伪开箱及爱快 虚拟机+openwrt 软路由安装教程
  8. 财务数据人一定要懂的分析方法——杜邦分析法
  9. 笔记本电脑键盘个别键失灵的修复方法
  10. c语言中eof的作用,C语言中EOF是什么意思?