文/憨爸
咱们今天先从那位被哈佛录取的杭州女生说起,看完她的简历后,给我印象最深刻的关键词就是:编程。

咱们看看哈佛女生的履历表,就发现她的编程造诣真的很深呢!厉害到我这个IT男都自叹不如!
高一时就获得了全国青少年信息学奥林匹克联赛(浙江省赛区)一等奖。
曾受麻省理工邀请参加比赛,获得北美编程邀请赛第二名,超过了绝大多数来自哈佛、斯坦福、卡内基梅隆的大学代表队。
2014年、2015年连续两年参加美国国家信息学奥林匹克竞赛,都夺得冠军,其中2014年还获得了唯一的满分。
……
就连哈佛大学面试官也说,“我在中国区面试6年,她是最优秀的学生之一。她的计算机水平,放在美国同年龄的女程序员中,也是最顶尖的。”

【美国的儿童编程现状】
美国这几年,对儿童的编程培养越来越重视。从婴幼儿开始,就有专门针对他们的编程书籍。
比如说下面这个网站,
http://www.csforbabies.com
这个网站专门出版了一套供婴幼儿阅读的编程书,名叫Computer Science for Babies,专门介绍计算机中AND和OR这个概念的。

扎克伯格给女儿阅读量子物理绘本想必大家都知道了,但其实除了量子物理之外,还有一些针对婴幼儿的计算机书籍,比如说下面两本HTML for Babies和CSS for Babies,都是教婴幼儿如何设计网页的。

图书馆里有很多供儿童阅读的计算机书籍,经常看到一些小朋友,捧着一本计算机书,盘腿坐在书架下,细细地品读。

编程课也是美国的课后辅导班中非常热的一门,到处都可以看到编程辅导班、兴趣小组的招生广告。

就连 玩具 也有不少和编程相结合,比如说大名鼎鼎的乐高机器人,就是让孩子先搭建个机器人,然后设计软件,最后烧录到机器人中,从而让机器人动起来!

不少叱咤风云的人物,也都是靠编程起家,比如Facebook的扎克伯格、微软的比尔盖茨、Google的佩奇、Yahoo的梅丽莎(她还是一位女工程师)等等都是编程的好手。

【学编程的好处】
从 智力 开发上来说,学编程并不意味着将来就是要从事计算机开发工作,通过学习编程能够开拓孩子的逻辑能力、思维的缜密性、提高创造力,编程好的孩子对别的学科(比如数学、科学等)也都能触类旁通。
从学业上来说,美国的常青藤名校,都会把编程纳入考量范畴,如果一个孩子有非常好的编程能力,那么对TA的学校申请来说,绝对是加分的。另外,再从功利的角度出发,华人的孩子普遍没有白人那么夸夸其谈,所以在面试上、在作文上,还是处于劣势;但是工程类学科是华人的强项(编程也是其一),那么这一项能为我们孩子增色不少,这也有了可以和白人PK的本钱。特别多说一句,女孩子如果学习编程优势更大,因为学校会考虑男女生比例,所以会保证一定比例的女生入学,而学编程的女生较少,也就意味着她们的录取机会将更多。

所以,美国的小朋友,无论白人、印度人还是华人,很多从小就开始接触编程,且无论男女。

【编程要从娃娃抓起】
很多人会问,几岁开始学编程最好?
套用美国的一句说法,“It’s never too early to develop code babies”(学编程永远都不会嫌早)。
曾几何时,我对“编程从娃娃抓起”也不以为然。要知道,编程多难啊,这个语言那个语言的,有循环、有递归、有语法……,这是一个小孩子能搞定的吗?
可是,当我接触了美国的幼儿编程教育之后,我的观点也随之改变,
编程,真的是可以从娃娃抓起的!

【对于幼童,怎么进行编程入门呢?】
有一种思想误区是,外面的编程语言太多太多,什么C、C++、Java、Python的,孩子到底应该学哪种呢?
其实编程不在于用什么语言,而是在于程序背后的逻辑和算法。语言学习起来是很容易的 ,而逻辑和算法的培养是很难的。所以,对于幼童来说,我们无需纠结于教他们什么样的语言,而是在于如何培养孩子的逻辑思维能力。
至于怎样培养孩子的逻辑思维能力呢?美国流行用游戏化的思维来进行!
这里我举个例子,

在这张图里,分左右两大块,左边是车的轨道,右边是行动指令,行动指令分为三种(前进、左转和右转)。
咱们先看左边这一块,绿色的是表示小车子,而黑白色表示终点,我们的目的是将车子开到终点去。
那怎样才能开动车子呢?这就需要在右边的行动指令框里给车提供相应的指令才行。

如果孩子在右边的指令框放入一个前进的指令,然后让车开始运行,猜猜会发生什么?对的,车会往前移动一格(红色箭头所示),所以孩子是通过在指令框内设置一系列的指令,从而让车到达终点。

最终我们需要让车到达终点的指令是什么?就是上图这5条指令。孩子在考虑车子行动轨迹的流程时,其实就是一个程序化、逻辑化思维的过程。
看起来很简单,但是如果随着地图的复杂起来,程序的难度也会越来越大,比如下面这张图,看看为了让车到终点,用了多少步骤吧!

【资源分享】
上面所说的,就是美国流行的幼童编程入门的训练。接下来就是干货时间,那么有什么好的工具来辅导孩子进行编程入门呢?
这里推荐两款非常经典的APP(都是基于苹果的平台,安卓的有没有我不清楚),APP是免费的,适合2~8岁的幼童。
1. Box Island: One Hour Coding

这款APP跟我之前举的例子非常类似,但是游戏的主角换成了一个名叫Hiro的蓝色小人,他的目的是走到终点的钟那边,因此孩子需要给小人设置指令以帮他完成愿望,指令分为上下左右,Hiro会随着指令而移动它的脚步。
游戏共有20关,越到后面越难哟!

在苹果商店搜索“Box Island: One Hour Coding”(或者“盒子岛:一小时代码训练”),美国区苹果商店的下载地址如下,
https://itunes.apple.com/us/app/box-island-one-hour-coding/id1048373739?mt=8
如果中国苹果商店没有这款APP,可以注册美国商店的账号然后下载,注册方式请点击阅读原文查看。

2. The Foos Coding

这款APP也是通过设置指令操纵小人到达终点,只不过这些指令中除了走、跳之外,还有推箱子、放炸弹等等,能提供不一样的趣味性!
在苹果商店搜索“The Foos Coding”能找到它,美国区苹果商店的下载地址如下,
https://itunes.apple.com/us/app/foos-coding-5+-make-games!/id923441570?mt=8
如果中国苹果商店没有这款APP,可以注册美国商店的账号然后下载。

教婴幼儿学编程,别说不可思议相关推荐

  1. 《趣学JavaScript——教孩子学编程》——第1章 认识JavaScript1.1 认识JavaScript

    本节书摘来自异步社区<趣学JavaScript--教孩子学编程>一书中的第1章,第1.1节,作者: [美]Nick Morgan(摩根)译者: 李强,更多章节内容可以访问云栖社区" ...

  2. 《趣学JavaScript——教孩子学编程》——1.5 本章小结

    本节书摘来自异步社区<趣学JavaScript--教孩子学编程>一书中的第1章,第1.5节,作者: [美]Nick Morgan(摩根)译者: 李强,更多章节内容可以访问云栖社区" ...

  3. 《趣学JavaScript——教孩子学编程》——2.4 Boolean

    本节书摘来自异步社区<趣学JavaScript--教孩子学编程>一书中的第2章,第2.4节, 作者: [美]Nick Morgan(摩根)译者: 李强,更多章节内容可以访问云栖社区&quo ...

  4. 教孩子学编程 python语言版_教孩子学编程 PYTHON语言版 PDF_IT教程网

    资源名称:教孩子学编程 PYTHON语言版 PDF 资源目录: 第1章Python基础--认识环境1 1.1认识Python3 1.2用Python编写程序5 1.3运行Python程序5 1.4本章 ...

  5. python教孩子学编程,教孩子学编程(Python语言版)

    教孩子学编程(Python语言版) 第1 章 Python 基础:认识环境 #NiceHexSpiral.py #运行后,挺奇特,整个作画过程,完全呈现. import turtle colors=[ ...

  6. 《趣学Python——教孩子学编程》——第1部分 学习编程 第1章 Python不是大蟒蛇 1.1 关于计算机语言...

    本节书摘来自异步社区<趣学Python--教孩子学编程>一书中的第1章,第1.1节,作者[美]Jason R. Briggs,尹哲 译,更多章节内容可以访问云栖社区"异步社区&q ...

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

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

  8. 教孩子学编程 python 下载_趣学python pdf 中文下载

    趣学python教孩子学编程pdf是一本专为想要学习python不错的朋友准备的入门教程,可以轻松的帮之你由浅入深,由难到易的学习python编程,感兴趣欢迎下载学习! 趣学python教孩子学编程p ...

  9. 趣学python教孩子学编程_[转载]学编程要从娃娃抓起——教孩子学Python

    祝家长与娃娃们编程开心! 请记住,学习本书进行编程是件让人开心的事.不要把它当成一项任务.要把编程当做是在创建有趣的游戏或者应用来和朋友还有其他人分享. 学习编程是一种很好的思维训练,效果也非常好.但 ...

最新文章

  1. 扩增子图表解读5火山图:差异OTU的数量及变化规律
  2. 了解GAN背后的设计,训练,损失函数和算法
  3. MongoDB复合索引详解
  4. 海量端口扫描工具masscan
  5. linux 安全 ***检测 杀毒 rootkit
  6. ubuntu 安装OpenBLAS
  7. ExtJS + Gears
  8. rhel 7.2 安装mysql_在rhel7.2下源码安装mysql-5.6.35
  9. 常见设计模式描术(看完就把它忘记~~)
  10. JScript中的条件注释详解(转载自网络)
  11. 如何选择云服务器与轻量应用服务器?谈谈自己的看法
  12. 高等数学,线性代数 课后题解答
  13. CSS字体和文本相关
  14. 云管平台-FIT2CLOUD CMP2.0
  15. 【PAT】 1020 发邮件(错排问题)详解
  16. emmx文件用什么软件打开电脑_我告诉你emmx文件怎么打开
  17. ED1 SoC Linux环境搭建
  18. CVE-2020-5135:SonicOS缓冲区溢出漏洞通告
  19. 耳机插入听不到声音或者对方听不见你说话问题
  20. UE4入门序列07(Unreal网络编程之Replication Roles)

热门文章

  1. android+生成控制,用 soot 生成安卓App的控制流 Day 1
  2. xp sp3安装不了matlab,装机狗u盘启动如何解决win10无法运行matlab问题
  3. VSCode + Merlin 打造 Windows 下 OCaml 开发环境
  4. QML新建QML后编译出错的解决方法
  5. 1.1 Java的基本语法格式
  6. Grafana监控告警发送通知到钉钉群、邮件
  7. ubuntu 远程桌面/自动登录
  8. 【Redis】不卡壳的 Redis 学习之路:从十大数据类型开始入手
  9. 【JavaScript】Object.observe()带来的数据绑定变革
  10. 公众号如何对接电影票cps