查看原文
其他

9岁小朋友的码农自我养成计划|BetterRead

2016-05-23 大宝妈 BetterRead

文|大宝妈

微信号 ericaychen


进入正文之前,先说几句免责提示:每个孩子的天赋特征不一样,父母往往是看到了结果才倒推过程和原因,这种个案归纳式总结从逻辑上来讲,很不靠谱。所以,下面只是一个孩子学编程的实录。


* * *


自从上了三年级,让9岁的大宝课余正儿八经学点东西,就成了我们做父母的开始关注的课题。我们基本的想法是,发挥特长,不补短板。于是我打算让他试试编程。


打开我早就注册过的coursera.org网站,当时,编程部分第一个列的就是Python for Everybody(www.coursera.org/specializations/python),这个系列共有4门课加一个毕业项目。


我早就听说过Python大名,看到这门课排在第一,从众心理发作,于是推荐大宝学这个,大宝还搞不清楚都有哪些主流编程语言的时候,就一头扎进了火坑里。学习的方式,完全靠他自学,看授课视频,完成作业,不懂就问助教(mentor),或者自己搜索相关信息。


我们做父母的完全不懂编程,我也曾想陪大宝一起学,后来发觉听不懂老师在讲什么,遂失去兴趣,改成给大宝端茶送水和开关电脑的任务。


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


学习过程中,大宝碰到了很多难题。他第一次正式接触电脑就是上coursera,至今也只会用两只食指打字,速度奇慢无比,所以他自作聪明地把电子教材里的部分代码复制粘贴到自己的作业里。偶尔被我们撞见,大宝振振有词:“a good programmer simply never types.” (好码农绝不敲键盘)。

 

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


作业出错了,网站里的程序会跳出来,提醒他错误在哪一行。大宝束手无措的时候,我告诉他可以去网站的论坛求助助教。论坛留言不许贴代码,助教可以看见所有学员的代码,然后在公开的留言区里答疑解惑。慢慢地,大宝也学会了碰到问题就先去看看其他人的问题,从他人的错误中进行学习。


作业11.1一开始就难住了大宝,他主动说“今天我不用电脑了。”


“为什么?”


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


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


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


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


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


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


最难的9.4作业,花了近两周的时间才搞定。没有学编程之前,大宝每晚睡足10个小时,那段时间,大宝每晚大概睡9个小时,于是好几个上午在学校教室里上着上着课就睡着了。


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


啰嗦这么多,其实就是说,“第7行右移两列,搞定!”


大宝说,助教不能直接说出答案,他们的回复都是启发式的,需要自己琢磨。


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


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


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

 

如今我们的账户里,只能查到第二门和第三门课程的相关信息。2015/12/18-2016/01/22,2016/03/21-2016/04/17,2016/04/17-2016/05/17,大宝分别学完了该系列的前三门课程,正在等第四门课程开新班。


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


大宝提出要配合c语言学arduino,还想用Python运行raspberry Pi,这是他学完Python系列课程之后下一步的计划。


我曾经带他去一些机构里找老师,他发现老师理解他的想法,就激动不已地跟老师讲各种语言的优势。


“这孩子像个老码农”,有老师这样说。


有一次大宝跟同学唠唠叨叨,等同学离开后,我问他,“你刚才讲那么多,某某感兴趣吗?”“他当然不感兴趣了,他又不是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 + 他想买的硬件名,经过几个链接,就进了淘宝店。


一入编程深似海,不仅是时间投入,还有银子花费,慎重,一定要慎重!


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


大宝还在学Python的路上。各位如果有合适的课程、教材或者老师推荐,请注明“编程”加微信号ericaychen跟我联系。谢谢各位。


BetterRead精选

哪些英文APP最适合小朋友?

哥哥姐姐天生是大教育家

朵拉选书:成长的烦恼

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

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