作者:宁静

来源:大数据文摘(ID:BigDataDigest)

最近,文摘菌经常收到读者留言,说b站上有一个10后小学生在教编程。

小学生???教编程???话说文摘菌小学时候还只知道玩儿贪吃蛇……

在感叹长江后浪推前浪的同时,文摘菌也赶紧去这位小朋友的主页看了看,这位“小老师”名叫“vita君”,的确是个10后小学生,戴着大眼镜,还挺有一副IT从业者的样子。

从视频题目来看,小朋友的主要教学内容是swift,目前已经出了6期,主页还挺热闹,粉丝已经有3.5万了。

感兴趣的读者可以先去小朋友主页看看视频?

https://search.bilibili.com/all?keyword=%E5%B0%8F%E5%AD%A6%E7%94%9FVITA%E5%90%9B&from_source=banner_search&spm_id_from=333.334.b_62616e6e65725f6c696e6b.2

如何让主角byte得到宝石?编程这么简单了吗?

文摘菌惊叹的同时,也赶紧打开视频,期待一个萌萌哒的小朋如何用奶声奶气的声音讲解各种枯燥的语法和结构。

听了几节课,课程内容跟文摘菌的预料画风还蛮不一样的。

vita菌上来先教我,如何让下图中正在招手的Byte得到宝石。

假设主角Byte距离宝石有三个台阶,那么你需要向前走三步,然后收集宝石,所以代码如下:

moveForward()
moveForward()
moveForward()
collectGem()

没有基础概念、标识符和语法。全程下来,小朋友可以跟着Vita君的讲解以游戏的方式获得编程体验。

遥想当年,文摘菌学C语言的时候,一上来就要学习算术表达式、运算符,还没编程已经望而生畏,后面还要学习什么指针,什么是编译、头文件之类的,第一个程序就是黑框框中出来一个“Hello,World!”在向你招手,现在的编程都这么简单了吗?

文摘菌查看了一下他的编程环境Swift Playgrounds,发现这是适用于 iPad 的一款创新 app,所见即所编,能让使用者以互动有趣的方式来学习 Swift。它不要求用户具备编程知识,非常适合初学者。可以先从闯关解谜开始,掌握 Swift 的基础知识,再接受一系列的挑战,走向 Apple 和其他顶尖开发者设计的更高级 Playground。

所见即所编:在屏幕左侧编写代码,轻点一下,即可在右侧看到编码效果。

看到这款APP的介绍,只能感叹:“我生你未生,你生我已老啊”。

这真的是为小孩子量身定做的一款编程APP,不需要有编程基础也可以愉快地玩耍!几行代码控制Byte就可以在3D的世界里冒险,对于小朋友来说,这是很有成就感的事情啊。

文摘菌回想起来这个年纪还在教师里背着唐诗三百首,算着1+1=2的式子,担心试考不好会被叫家长,等待寒暑假,等待长大的童年,比起Vita君,文摘菌老脸一红,这是要被拍死在沙滩上呀。

玩游戏算编程吗?

比起学习数值类型,int,float,char等和一些语法规则—循环语句和判断语句的写法,好像这种解决问题的思路更值得从小培养。

文摘菌刚开始看视频也觉得很小儿科,但是看到最后终于明白了设计者的意图,在这款通关的游戏设计中,会穿插一些让你解决问题的思路。

比如在后面的视频中,会让你找出让Byte得到宝石的最短路,视频中的例子中给出了两条路线:

一个是通过蓝色的传送门,其中的动作包括前进、向左转、转换开关、进入传送门、收集宝石,这些动作加起来总共有15条命令。

另一个路线是通过绿色的传送门,最终总共有9条命令。

所以选择第二条路线。

这在我们成人看来很轻松就能解决的问题,却也需要小孩费一番力,首先如何让Byte到达宝石处呢?这需要一些动作命令,而这些命令中又有不同的选择分支,哪个动作是先验动作,哪个动作是后续动作,这也考验着一个小孩的逻辑思维能力,最后还需要比较不同方案的命令数,找到最短路线,对于孩子解决问题的思维培养来说已经足够,更别说这只是初级的通关游戏,后面可能命令会更加复杂一些。

相比C语言,一个分号遗漏程序编译都不会通过,这些工程的细节会消磨人的灵性,编程最终不也是解决实际问题吗?所以coding并不意味着大段大段的代码,而是解决问题的方法,想清楚了之后再去动手coding,事半而功倍。

文摘菌看完视频后,也看了看评论,有“恨弟不成钢的反手一巴掌”?

也有“恨生不逢时”的抱怨?

小学生教学编程的这段视频的确掀起了舆论的热潮,那么,我们什么时候开始意识到编程需要从小培养呢?

编程低龄化趋势,思维从娃娃抓起

最近几年,编程教育一直有低龄化趋势,那么,到底几岁开始学习编程合适呢?

文摘菌也去咨询了一下,根据教育认知学,孩子会在7岁左右开始形成抽象逻辑思维,整个7-12岁是抽象逻辑思维的最佳形成期,所以学编程的最佳时机是小学段。孩子这个阶段课业负担不重,逻辑思维也快,正好帮他们掌握这样一门技能,如果错过了这个时机,那么初中或者高中也可以从零基础学起。

早在2017年7月国务院下发《新一代人工智能发展规划的通知》?

在第六条中强调:“在中小学阶段设置人工智能相关课程,逐步推广编程教育,鼓励社会力量参与寓教于乐的编程教学软件、游戏的开发和推广。”

上海市市西中学相应国家行动于2017年引入了人工智能课程,采用的是华师大、商汤集团、上海市六所重点中学共同参与编写的教材《人工智能基础(高中版)》。课程覆盖学习范围包括:卷积、爬虫(Python)语言等课程。

到了2018年,重庆市教育委员会下发《关于加强中小学编程教育的通知》,要求小学3~6年级累计不少于36课时,初中阶段累计不少于36课时的编程教育。

同年9月19日,六年级的万海妍参加了阿里巴巴云栖大会,在蚂蚁金服ATEC小程序挑战赛中,虽然仅以一秒之差惜败,其编程实力不容小觑,成为人们口中的“编程天才少女”。

越来越多的少年编程者走入大众的视线,同时也有很多的中小学在开办编程教育课程,在现今人工智能的浪潮下,一代人终将老去,总有人正在年轻,我们需要一批AI的青年力量来为我们这个国家添砖加瓦,正如《少年中国说》所言:“故今日之责任,不在他人,而全在我少年,少年智则国智,少年强则国强”。

愿中国青年都摆脱冷气,只是向上走

在网络上对于少儿编程这个话题,网友也是众说纷纭,有人觉得觉得这种编程方式不适合小孩子学,没有变量没有数组,建议孩子先去学C/C++。

也有网友觉得这种让小学生编程的方式是可取的,毕竟编程的最终目的就是要解决问题,而在这个过程中正好可以锻炼这种能力。

天赋很重要,练习也很重要,相比这个年纪的小朋友利用手机刷一些没有营养的小视频和新闻,Vita君利用手机来学习编程的动机已经甩很多同龄人一条街,虽然他的年龄算不上青年,文摘菌还是想以鲁迅先生的话结束本文:“愿中国青年都摆脱冷气,只是向上走”。毕竟,学习和思索是一生的修行。

- 加入社群吧 -

10后小学生都能教你学编程了!低龄编程的下限在哪?相关推荐

  1. 查生日代码_让库克亲自送上生日祝福的10后小学生,还在B站教人学编程?

    "别人家的孩子"从小到大都是父母口中夸赞的对象,但有时候人与人的差距比想象中的还要大. 前几天苹果CEO库克在微博上分享由苹果公司组织的"人人能编程"项目线下交 ...

  2. 小学生也能教你学编程了!8岁“程序猿”编程教学走红网络

    小学生也能教你学编程了! 可以前往百度查看 最近, 一位网名为Vita君的8岁上海小学生成了"网红",他在B站做"UP主",发布的"小学生教你学编程& ...

  3. 10年UG资深主管教你学模具设计

    本课程教学以命令的全面讲解为切入点,突出实际应用中的实用性.融入应用技巧并配套使用典型的实例,从简到难,一步一个脚印的学习特点: 本课程兼顾NX5.0,NX6.0,NX7.5,NX8.0,NX9.0, ...

  4. python进入小学_Python进入浙江高考?小学生都已经开始教别人学Python了!

    图为正在教一位老奶奶学编程的9岁男孩李炳南 这几天,我们都被Python刷屏了! 因为画风一直比较保守持重的教育当局在近期接连做了这样几个大决定: 浙江:2018年,浙江省高中信息技术教材将弃用VB, ...

  5. java 静态方法_80后程序员,教你学Java核心技术:用户自定义类+静态域静态方法

    用户自定义类 在第3章中,已经开始编写了一些简单的类.但是,那些类都只有一个简单的main方法.现在让我们开始学习如何设计复杂应用程序所需要的各种"主力类"(workhorse c ...

  6. 糖儿飞教你学C++ Socket网络编程——5.套接字编程步骤与函数

    TCP是一个面向连接的传输层协议,提供高可靠性的字节流传输服务,主要用于一次传输要交换大量报文的情形.为了维护传输的可靠性,TCP增加了许多开销:例如确认.流量控制.计时器以及连接管理等.TCP协议的 ...

  7. 糖儿飞教你学C++ Socket网络编程——6.控制台版的TCP通信程序

    根据图2-1的TCP通信程序的流程,下面编程实现一个控制台版的TCP通信程序,程序分为服务器端和客户端,双方可以相互发送消息,运行效果如图2-4所示. 图2-4 控制台版的TCP通信程序(左图为服务器 ...

  8. 糖儿飞教你学C++ Socket网络编程——28. 使用select模型实现一对多通信

    在项目10中,采用多线程技术实现了TCP协议的一对多通信,但如果客户端过多,就会导致服务器端的线程数量膨胀,使得服务器的资源占用过大.能不能让TCP程序在一个线程中同时与多个客户端进行通信呢?答案是可 ...

  9. 糖儿飞教你学C++ Socket网络编程——18. MFC WinSock版的TCP通信程序

    在4.2节中使用Win32 API方法制作了一个TCP异步通信的程序,本节将4.2节的程序用MFC框架重新编写,改写后程序的界面如图6-15所示,功能与4.2节的程序完全相同. 图6-15 MFC版T ...

最新文章

  1. 在java中goto是意思,关于Java中的goto语句
  2. php 分析url函数,PHP 解析URL函数 parse_url()函数
  3. iOS界面设计之基础控件的学习 --- UITextField
  4. Pycharm更改快速规整代码快捷键
  5. oracle 导入数据时主键丢失,Oracle 插入数据 返回主键
  6. 1.11 为什么使用卷积?
  7. mysql 文章 字段设计_在mysql数据库中,文章表设计有啥好的思路
  8. 简单介绍小系统车载中控导航上蓝牙模块
  9. CAPL-如何调用外部的可执行程序
  10. 面试字节跳动计算机视觉算法实习岗位
  11. 开调查公司创业,他的公司营业额达80万
  12. 使用three.js创建一个正方体
  13. vscode 使用 SDCC 开发 STM8
  14. 攻防世界---mfw
  15. GC overhead limt exceed 导致的java进程假死
  16. 小学六年级数学教案:圆柱与圆锥
  17. 抓包工具哪些好,来看这里就够了.....
  18. 高等数学Mathematica实验题——费马素数猜想(Fn=2^(2^n)+1为素数)的证伪(Verification of Fermat's Prime Number Function)
  19. 初学者学习网页设计用什么软件最好?
  20. JPA一:理论知识和入门程序

热门文章

  1. Linux系统Centos7的虚拟机安装
  2. linux基础--认识文件以及vi编辑器
  3. centos7.2php,Centos7.2之phpadmin安装配置
  4. Ipad开发课程系列目录--很好的教程,推荐给大家
  5. 运营之光:我的互联网运营方法论与自白学习总结(思维导图)
  6. 12、Decoder解码器和Encoder编码器
  7. android 广播 更新ui,详解Android UI更新的几种方法
  8. php fopen 追加,PHP文件写入或追加
  9. 关于计算机软件的研究生就业,计算机软件与理论研究生毕业就业方向
  10. python与jay的龙卷风