查看原文
其他

厉害了!10岁孩子用MOOC资源自学编程语言

2017-03-03 虎妈 海码爸爸



作者:70后海淀虎妈,社会学博士。育有两娃大熊小熊,大熊四年级10岁,正在学Python和Java。(此文已授权)


正文开始之前,虎妈先啰嗦几句。

1.  大熊正在学Python和Java,未来还打算学C语言,有时间他也鼓捣Auduino和Raspberry Pi,如果哪位读者在北京有合适的课程、教材或者老师推荐,请在本文留言区留言(给娃找老师是虎妈写作此文的主要原因)。谢谢!


2.  每个孩子的天赋特征不一样。


3.  父母往往是看到了结果才倒推过程和原因,这种个案归纳式总结从逻辑上来讲,很不靠谱。这一条加上第二条,所以大熊的经历没有普遍性,小熊就坚决不走这条路。


1为什么自学编程?


有朋友曾经反对小孩子过早学习编程语言,认为这会造成思维简单化的风险。虎妈急需补充这方面信息,欢迎有想法的朋友跟我联系。

关于学编程的重要性和用处,虎妈觉得不用多费口舌。


现实情况是,大熊很早就表示出了对图形化编程语言的不认可不接受,所以他才开始学习编程语言。找不到合适的老师和教材,于是只好开始自学了。


虎妈多么希望有人能够指导他!机构里,没有针对这么小的孩子设置编程语言的课程。


我们认识几个计算机专业出身的程序员,可是人家有正儿八经的工作,不可能针对大熊设计一对一的体系化课程。找不到老师,所以他只好自己学自己摸索。


2Scratch



大熊二年级下学期时,学校规定每周二下午由家长们轮流来学校给孩子们上课。一位同学的妈妈找了几个计算机专业研究生,花了5周时间,来给孩子们讲如何使用Scratch软件。每周二,大熊都会背着电脑包去学校。


Scratch是MIT开发的面向儿童的图形化编程软件,软件免费,官网(https://scratch.mit.edu/)可以下载最新版本。很多机构提供教学课程,教孩子怎么用这个软件,有些机构把这个软件翻译成“魔抓”,当当卓越京东也能买到相应的辅导书。


我以为理工男大熊会对Scratch表示出很高接受度,然而没有。大熊很快就提出:“总是让我抓小猫,这太幼稚了,我想自己‘写’程序,我来设计小猫!”不喜欢,没有挑战性,大熊上课就不认真听讲。


虎妈虎爸都不会编程,根本无从指导孩子。于是他的要求被搁置被忽视,以后再说吧。


3MOOC时代,有指导地上网



三年级上学期,大熊眼睛正式近视了,配了OK镜。为了保护眼睛,他被限制接触电脑。


另外一个背景是,大熊从小不看电视,我们家里的IPAD和手机上没有一个游戏类APP,这是我们家里的习惯。所以这段时间里,他没有接触任何电子产品,时间都花在读书上了。(不打游戏,会不会影响孩子掌握编程语言?貌似在大熊身上,二者并无联系。)


OK镜的效果真是好啊!大熊的裸视非常稳定。虎妈觉得,互联网将成为孩子以后工作和生活的必然内容,与其限制,不如疏导, 40 37453 40 15288 0 0 3568 0 0:00:10 0:00:04 0:00:06 3568是开始指导他使用互联网。


大熊第一个第二个使用的网址就是谷歌和维基百科。他学会了查资料,一个链接又一个链接,他对自己找到的新资料很入迷,学到了各种千奇百怪的知识,充分展示了熊孩子的一面。


知识的海洋在他面前徐徐展开,大熊目瞪口呆,心生崇拜,感觉自己以前掌握的知识弱爆了,得抓紧时间赶快吸收。


到了年底,大熊快过9岁生日了。虎妈突然想起来,通过互联网学习知识,还可以使用MOOC啊。(不知道MOOC是什么的读者,请自行查资料。)


虎妈自己在coursera.org上早就注册过账号,申请过课程,不过没能够学完任何一门课,太惭愧了!


虎妈给大熊挑选了一门历史课,一门编程课。理工男也要有人文底蕴啊!可是,人为干预拗不过天赋,大熊的历史课很快就无疾而终,编程课一直继续了下来。


4Python



当时,coursera网站编程部分第一个列的就是Python for Everybody(https://www.coursera.org/specializations/python),由美国密西根大学提供。这个系列共有4门课加一个毕业项目,大熊已经学完了全部4门课程,毕业项目只针对13岁以上,因此他只好放弃了。


虎妈虽然不懂编程,但听说过Python大名,看到这门课排在第一,从众心理发作,于是推荐大熊学这个,大熊还搞不清楚都有哪些主流编程语言的时候,就被推进了火坑里。


学习的方式,完全靠他自学,看授课视频,完成作业,不懂就问助教(Mentor),或者自己搜索相关信息。我们做父母的完全不懂编程,我也曾想陪大熊一起学,后来发觉听不懂老师在讲什么,遂失去兴趣,改成给大熊端茶送水和开关电脑的任务。


这里必须赞扬一下coursera.org这个网站,绝对的业界良心!不仅所有视频、教材都可以免费下载,而且还贴心整理好了老师授课的笔记。上课时间根据自己需要来灵活调整,Python系列课程每个月都会开新班,如果你不能按期完成学习任务,可以转到下一个班级,跟着下一个班的进度一起走,大熊至今在这个网站上一分钱未花。


学习过程中,大熊碰到了很多难题。他只会用两只食指打字,速度奇慢无比,所以他自作聪明地把电子教材里的部分代码复制粘贴到自己的作业里。偶尔被我们撞见,大熊振振有词“a good programmer simply never types.”


大熊第一份作业只写了6行代码,后来最长的一个作业写了50多行代码。他自己总结道“其实写30多行就够了,可是我的Python版本有点问题,要多写十几行。写程序,写的越短越牛掰。”


作业出错了,网站里的程序会跳出来,提醒他错误在哪一行。大熊束手无措的时候,我告诉他可以去论坛求助助教。论坛留言不许贴代码,助教有权限看见所有学员的代码,然后在公开的留言区里答疑解惑。


这是他第一次在互联网的世界里留下信息——请教一个问题。不会表情包不会网络语言的00后,凭借二指禅,打出自己的求教问题,为了表达郁闷的心情,只好用大写粗体和标点符号。


慢慢地,大熊也学会了碰到问题就先去看看论坛里其他人的问题,从他人的错误中进行学习。作业11.1一开始就难住了大熊,他主动说“今天我不用电脑了。”

“为什么?”

“我连作业都看不懂啊,我不懂题目是什么意思!”

“那你更要问助教了,要不你永远都不会懂。”

进了论坛,他笑了:“原来这么多人连题目都看不懂!”


给助教留言需要技巧。我告诉大熊,你的诉求要准确清晰,不能说“我的第8行哪里出错了”,而要说“程序说parse error :bad input on line 8。是不是我的第8行输错了哪个命令?”


起初,大熊随意命名变量名为i、l、il、f1等等,三个助教一起批评他的工作方式增加了同伴的阅读难度,大熊没想到助教竟然连这个也管。


Python系列第二门课(Python Data Structures)里,几乎每一项作业,大熊都需要留言问助教。助教有问必答,由于时差的缘故,大熊每天晚上上床前留下自己的疑问,第二天下午从学校回来才能看见回复,修改代码之后,产生新问题,留下新留言,第三天再继续。最难的9.4作业,花了近两周的时间才搞定。


没有学编程之前,大熊每晚睡足10个小时,那段时间,大熊每晚大概睡9个小时,于是好几个上午在学校教室里上着上着课就睡着了。(感谢他的老师和同学如此宽容。)


有些错误,修正之后让人觉得很好笑。作业8.4折腾了好几天,助教苦口婆心:“Python里每一列都跟前一列存在一种逻辑关系,想想你的第7行跟之前几行的逻辑关系是什么?你现在的第7行跟第6行是并列关系,这是你最初期望的吗?”


啰嗦这么多,其实就是说“第7行右移两列,搞定!”大熊说,助教不能直接说出答案,他们的回复都是启发式的,需要自己琢磨。


几乎每周的作业都包括小测验(quiz)。每次小测验都要求80分以上才能通过,两次未通过,只能隔7小时再测试。后面每一次重复测试,都是不同的题目,防止学生靠刷题猜测正确答案。


Coursera.org的严格还体现在,每一次作业之前,大熊都要敲入类似于“我保证独立完成作业”之类的话,还要用摄像头拍下自己当时的照片上传。这既是提醒,也是承诺。


学完第一门课Intro to Python之后,我想破费银子给大熊买个证书,谁知美国法律规定,13岁以下儿童上网需要被监控,为了避免惹麻烦,coursera.org不给13岁以下学生发证书,助教还删去了我们第一门课的信息。


如今我们的账户里,只能查到第二门至第四门课程的相关信息:

2015/12/18-2016/01/22,

Introduction to Python,成绩100分;

2016/03/21-2016/04/17,

Python Data Structures, 成绩97.6分;

2016/04/17-2016/05/17,

Using Python to Access Web Data,成绩95.6分;

2016/5/23-2016/6/15,

Using Databases with Python,成绩93.3分。


大熊的成绩越来越低,可见这几门课程的难度逐渐增加。这就是虎妈所看重的课程的进阶性


5MOOC时代的资源


Coursera里更高级的课程都需要购买,虎妈倒不是心疼银子,coursera网站只开放给13岁以上的人购买课程和颁发证书。


学习是一件严肃的事情,不能让大熊一踏入网络世界,就冒名顶替他人旗号,所以虎妈迟迟没有给他买课程。


大熊因此需要自己去寻找更多免费或者开放给9岁孩子的课程,感恩节虎妈就在Udemy上趁着打1折的机会,给他买了Java课程。这是黑色星期五,虎妈唯一破费的银子。


大熊一直看可汗学院(khanacademy.org)的数学课和历史课(他向我强烈推荐里面的crash course,特别逗的历史课)视频,自从学了Python之后,他偶然发现可汗学院也有编程课,是三个女老师讲Javascript和html。大熊听了听,觉得html简单,但是Python更有意思。可汗学院的页面互动性强,学生可以用电脑打开浏览器页面,然后用键盘和鼠标操作代码运行,这一点比coursera强很多。


大熊提出要配合c语言学arduino,还想用Python运行raspberry Pi,这是他学完Python系列课程之后下一步的计划。貌似目前对raspberry Pi的兴趣超过了对arduino的兴趣。


虎妈带他去一些机构里找老师,他发现自己话音未落老师就能接上,就激动不已地跟老师讲各种语言的优势,“这孩子像个老码农”,有老师这样评价他。


有一次大熊跟同学念念叨叨,等同学离开后,我问他“你刚才讲那么多,某某感兴趣吗?”“他当然不感兴趣了,他又不是Geek!”


有个周末,编程课跟棒球比赛冲突了。大熊每周三次棒球训练,练了一年才有机会上场比赛。他犹豫半天最后说“I don’t think I have a great future in sports, while I’m sure I can make a living in computer science.”


“Make a living?你是说,我不用赚钱养你了?”


“I mean, a future, not now.”


自学的孩子,优点是想法多会提问,有很强的个人主义特质,缺点是章法很乱,兴趣太杂目标太广,我们担心网络太多的知识会让他没法沉下心来做事。筛选过滤网络信息,需要能力,也需要运气,所以给大熊找个现实生活里的导师是我们的急需啊!


大熊一贯不怎么接触BAT。某天晚上,虎妈看见他在电脑上留下的页面竟然是淘宝店铺,惊讶极了“你从哪里知道还有个淘宝?”


原来,他在谷歌上搜“dealers in China 他想买的硬件名”,经过几个链接,就进了淘宝店。一入编程深似海,不仅是时间投入,还有银子花费,慎重,一定要慎重!


6总结


如今虎妈已经不能理解大熊每天在电脑上忙什么了,我也一直信任他通过互联网在学习。


自从开始自学编程,大熊每天耗费在电脑上的时间平均达一个小时。这么长时间使用电脑,他的裸视维持在5.0/5.2,近视度数没有加深,一切有赖于OK镜的功劳。所以,虎妈强烈推荐近视的低龄孩子在合格医生的指导下配OK镜,放弃框架眼镜。


学编程的过程里,大熊用到的所有资源,书本视频网络信息,都是英文版,很多老师带有浓重口音,大熊照单全收。


大熊3岁跟我们在国外呆过一年,回国后读了英文幼儿园和公立小学,初中直升公立中学,英文一直在坚持学,也只有等到他学编程的时候,我们做父母的才意识到英文好的孩子在编程起步阶段会有优势,然而继续进行下去,英文好还会有多少优势,我们仍未知晓。


互联网渗透我们的生活,获取知识的门槛在降低,只要自己有心利用,一定可以找到免费入门级资源。将来,00后会编程,估计跟我们70后会用word一样没什么了不起。


虎妈最看重的,就是通过自学编程,大熊的自学能力得到充分锻炼,搜索信息,判断信息是否有用,跟他人交流,其中不可避免走过很多弯路。即使碰到难题,大熊知道从哪些渠道寻求援助解决困难,这已经达成了学习的目的。


人生的起点高低无所谓,持续学习才能够走得更远。接下去,虎妈希望他能够多选一点人文类的课程,不要太局限自己的视野。也许,他对人文学科的兴趣,还未到爆发的时候。


大熊有机会支配自己的课余时间,这种从容心态和自由度,是父母给予童年大熊最珍贵的礼物,希望长大以后,他能明白父母的苦心。




相关阅读: 

脱离小白家长,儿童编程你需要清楚这6件事

买Windows电脑是消费,买个树莓派给孩子才是教育

谁说在家不能教编程!他靠网络资源养出两个编程牛娃

【干货】一张图看懂孩子编程学习的成长路径








海码爸爸 一群计算机博士发起的父联组织

长按识别二维码,加关注;欢迎加入QQ群:361999832(注明“编程”)




戳阅读原文,参加少儿编程课!



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存