文/憨爸
( n' e k' U% p$ s- _8 m5 j咱们今天先从那位被哈佛录取的杭州女生说起,看完她的简历后,给我印象最深刻的关键词就是:编程。! v0 w/ Z3 G9 O; d: T" n
* c8 g6 v9 B" Z咱们看看哈佛女生的履历表,就发现她的编程造诣真的很深呢!厉害到我这个IT男都自叹不如!
& e% H1 u" v* {5 }高一时就获得了全国青少年信息学奥林匹克联赛(浙江省赛区)一等奖。
' S4 v4 K) T% `5 D% K! H' X* s曾受麻省理工邀请参加比赛,获得北美编程邀请赛第二名,超过了绝大多数来自哈佛、斯坦福、卡内基梅隆的大学代表队。( K# x& h4 G5 T0 ^/ B9 e& r. e* W
2014年、2015年连续两年参加美国国家信息学奥林匹克竞赛,都夺得冠军,其中2014年还获得了唯一的满分。
) S; [0 e5 W& O3 c0 h, ]- c……" k! \6 y& C: u6 R* k7 @7 ^7 Q1 @: S; j
就连哈佛大学面试官也说,“我在中国区面试6年,她是最优秀的学生之一。她的计算机水平,放在美国同年龄的女程序员中,也是最顶尖的。”
4 z" T* @8 B0 {6 T) `
2 A& \) g1 _- V' |. O2 {% d& \& H【美国的儿童编程现状】
. `4 f. i0 _& K& j0 Y美国这几年,对儿童的编程培养越来越重视。从婴幼儿开始,就有专门针对他们的编程书籍。
: U& l$ x$ @9 t- R7 m$ p6 K比如说下面这个网站,& ]! x: q3 b7 K' Q+ O/ L
http://www.csforbabies.com
1 U; B6 o6 m. b- |) _这个网站专门出版了一套供婴幼儿阅读的编程书,名叫Computer Science for Babies,专门介绍计算机中AND和OR这个概念的。1 z$ q! s- j( W! Z8 t/ U# A
) ?9 C4 d2 X& g: K
. j" ~5 E3 T' X$ o% D$ Z
扎克伯格给女儿阅读量子物理绘本想必大家都知道了,但其实除了量子物理之外,还有一些针对婴幼儿的计算机书籍,比如说下面两本HTML for Babies和CSS for Babies,都是教婴幼儿如何设计网页的。
& d( _) m4 h, X1 }4 J2 w+ C1 v" h
- A! l, K( F9 l& [$ k 1 V, P0 z8 P. K# p& t
图书馆里有很多供儿童阅读的计算机书籍,经常看到一些小朋友,捧着一本计算机书,盘腿坐在书架下,细细地品读。7 h4 `$ k+ i4 ]& _
. Z; C0 f, m1 ^: b2 g0 u* e
3 ^( I6 c2 `6 m8 w' @& w( Y. e编程课也是美国的课后辅导班中非常热的一门,到处都可以看到编程辅导班、兴趣小组的招生广告。8 D8 t, z( h. |1 R5 }
6 E3 }6 i, v; R/ N + N6 S6 f5 V0 Q4 y t
就连玩具也有不少和编程相结合,比如说大名鼎鼎的乐高机器人,就是让孩子先搭建个机器人,然后设计软件,最后烧录到机器人中,从而让机器人动起来!8 x5 a9 |; s! y) {, U! g
7 S5 X: U- V- Z: c( c. o8 p
: ?( i6 ^( a4 \6 e/ n: H; F0 W不少叱咤风云的人物,也都是靠编程起家,比如Facebook的扎克伯格、微软的比尔盖茨、Google的佩奇、Yahoo的梅丽莎(她还是一位女工程师)等等都是编程的好手。/ s( q+ k( g% R6 x4 `4 r
' }, ?2 ?! Z/ @0 J# X7 i) F/ C
Q0 o3 o: h2 ]% p- U【学编程的好处】
3 W: k% M- c4 F! k从智力开发上来说,学编程并不意味着将来就是要从事计算机开发工作,通过学习编程能够开拓孩子的逻辑能力、思维的缜密性、提高创造力,编程好的孩子对别的学科(比如数学、科学等)也都能触类旁通。# E. o- C: g' @4 k
从学业上来说,美国的常青藤名校,都会把编程纳入考量范畴,如果一个孩子有非常好的编程能力,那么对TA的学校申请来说,绝对是加分的。另外,再从功利的角度出发,华人的孩子普遍没有白人那么夸夸其谈,所以在面试上、在作文上,还是处于劣势;但是工程类学科是华人的强项(编程也是其一),那么这一项能为我们孩子增色不少,这也有了可以和白人PK的本钱。特别多说一句,女孩子如果学习编程优势更大,因为学校会考虑男女生比例,所以会保证一定比例的女生入学,而学编程的女生较少,也就意味着她们的录取机会将更多。
$ W- ?. i$ V- S& l/ }3 I: `$ |6 T3 P3 R9 `1 N* K
& q5 n% E% [/ ]; q) q
所以,美国的小朋友,无论白人、印度人还是华人,很多从小就开始接触编程,且无论男女。: C5 q' p4 ]5 O' f; `1 B- \
* N) O t2 l/ ?3 n【编程要从娃娃抓起】
5 Q0 _/ D9 e# b" Z- F9 _很多人会问,几岁开始学编程最好?6 P% Y; c' h, Q* j
套用美国的一句说法,“It’s never too early to develop code babies”(学编程永远都不会嫌早)。
4 j6 l$ G* l% ~9 E曾几何时,我对“编程从娃娃抓起”也不以为然。要知道,编程多难啊,这个语言那个语言的,有循环、有递归、有语法……,这是一个小孩子能搞定的吗?
. \- r& U/ m6 l( f5 J; o可是,当我接触了美国的幼儿编程教育之后,我的观点也随之改变,4 a/ G$ L. c+ d$ T. ^# g3 k; V8 L
编程,真的是可以从娃娃抓起的!
. z3 P8 b1 e( v) q5 E# L2 R* W* B$ c v/ F) `) R0 v+ U: S
( i2 u+ S/ g `4 R# z$ G【对于幼童,怎么进行编程入门呢?】2 q6 K1 {: _- Y; X/ K; k7 I
有一种思想误区是,外面的编程语言太多太多,什么C、C++、Java、Python的,孩子到底应该学哪种呢?
C3 j0 z5 n# C ]" p7 o其实编程不在于用什么语言,而是在于程序背后的逻辑和算法。语言学习起来是很容易的 ,而逻辑和算法的培养是很难的。所以,对于幼童来说,我们无需纠结于教他们什么样的语言,而是在于如何培养孩子的逻辑思维能力。
" _% d y5 H9 t9 [2 g, V: J5 ]+ w5 K至于怎样培养孩子的逻辑思维能力呢?美国流行用游戏化的思维来进行!0 b# w5 C! w' W9 A6 h0 m/ V
这里我举个例子,! X( z( L* _# l2 j% R1 ]
7 g: Q9 J7 T3 z7 y# o
. u5 A, n5 [$ n; n! `在这张图里,分左右两大块,左边是车的轨道,右边是行动指令,行动指令分为三种(前进、左转和右转)。
$ F# ~0 t. s1 {/ o/ L8 P6 O咱们先看左边这一块,绿色的是表示小车子,而黑白色表示终点,我们的目的是将车子开到终点去。
5 H& f; W3 U3 j- G5 t那怎样才能开动车子呢?这就需要在右边的行动指令框里给车提供相应的指令才行。
4 W z o- R; `; r) y如果孩子在右边的指令框放入一个前进的指令,然后让车开始运行,猜猜会发生什么?对的,车会往前移动一格(红色箭头所示),所以孩子是通过在指令框内设置一系列的指令,从而让车到达终点。
4 }9 F4 v0 e: L
! t# s7 v( A6 e7 v8 a( K$ ~
$ e O3 L Z) ]7 n U最终我们需要让车到达终点的指令是什么?就是上图这5条指令。孩子在考虑车子行动轨迹的流程时,其实就是一个程序化、逻辑化思维的过程。
8 Y4 Q5 T5 L- t- Q7 X D, z看起来很简单,但是如果随着地图的复杂起来,程序的难度也会越来越大,比如下面这张图,看看为了让车到终点,用了多少步骤吧!- l2 y: J- i& m' n/ F/ N- [
$ b1 w0 ^) v$ U* p + b# [4 m& T7 |' Q' f
【资源分享】
+ N; G' V1 ?7 Q5 E上面所说的,就是美国流行的幼童编程入门的训练。接下来就是干货时间,那么有什么好的工具来辅导孩子进行编程入门呢?
: \+ @7 K4 C$ V* d这里推荐两款非常经典的APP(都是基于苹果的平台,安卓的有没有我不清楚),APP是免费的,适合2~8岁的幼童。# H* j$ }, J# Y$ R1 v4 j& ^# w
1. Box Island: One Hour Coding
5 L# x1 F( A0 e5 H) p7 O/ }3 c. C1 B+ H# @: T. k* y4 t6 T5 j: V
3 l& a/ p* }4 G6 m7 ^& x, v
这款APP跟我之前举的例子非常类似,但是游戏的主角换成了一个名叫Hiro的蓝色小人,他的目的是走到终点的钟那边,因此孩子需要给小人设置指令以帮他完成愿望,指令分为上下左右,Hiro会随着指令而移动它的脚步。0 ^+ j0 A5 @% j/ n* k$ v' p% Z- I
游戏共有20关,越到后面越难哟!
4 Y1 M7 P/ h0 J& R: H5 G: o4 T& C
; n }: ^1 ?! l# J/ a; X
在苹果商店搜索“Box Island: One Hour Coding”(或者“盒子岛:一小时代码训练”),美国区苹果商店的下载地址如下,! B3 `5 k( c) L0 C: }
https://itunes.apple.com/us/app/box-island-one-hour-coding/id1048373739?mt=8
+ j* j' k$ W( B* a1 z. ]% I如果中国苹果商店没有这款APP,可以注册美国商店的账号然后下载,注册方式请点击阅读原文查看。6 x n1 l. K+ ?$ c- r1 `4 D$ e: P1 B
7 |3 T% a5 X% w9 g I% q; N2. The Foos Coding
; p. y9 s' b" U3 j' G
" D2 \' K/ @9 t- y% {* t
+ F7 V$ F' _2 [; N' [1 I这款APP也是通过设置指令操纵小人到达终点,只不过这些指令中除了走、跳之外,还有推箱子、放炸弹等等,能提供不一样的趣味性!( E8 a1 Z% t& y! ~1 X9 g1 y
在苹果商店搜索“The Foos Coding”能找到它,美国区苹果商店的下载地址如下,2 ^0 L2 e# O* K: Z, y
https://itunes.apple.com/us/app/foos-coding-5+-make-games!/id923441570?mt=8+ X P7 H/ |/ E( N* y
如果中国苹果商店没有这款APP,可以注册美国商店的账号然后下载。 |