日前,2018年全国青少年信息学奥林匹克联赛(浙江赛区)的复赛结束了,杭州建兰中学收获颇丰。有两位学生获得普及组满分400分;获得普及组一等奖的学生共23人,在浙江省所有参赛的初中学校里是最多的。
在这样的竞赛中,获得满分是一个什么概念?
建兰中学疯狂代码社团的创始老师颜丽丹跟记者打了个比方:这就像是初中学生去考大学编程难度的试卷,结果一题没错。
记者找了几位获得一等奖的学生聊了一下,发现这些学生有一个共同的特点:他们对编程的喜爱,已经到了痴迷的程度。我们先来看看两位牛娃的故事。
A 学习编程才四个月
旁听生获得一等奖
初三学生周子竣在这次比赛中获得了一等奖,他的这个成绩让所有的老师激动不已。
“因为我是一个半路出家的旁听生,初二下学期才加入的,系统学习编程的时间,满打满算也不到四个月。”周子竣说,自己从来没有想过通过编程获取升学便利,学习编程只是因为喜欢。
周子竣是初二上学期时接触到编程的。那时,他突然想做一个迷宫游戏,于是上网搜集了一些制作方法,找了一些教程,一边自己琢磨,一边请教班里会编程的同学,整整花了两个月的时间完成了迷宫。
迷宫游戏的程序,在编程里非常普通,但是对周子竣来说,是一个进入“新大陆”的入口。
在编写迷宫游戏的过程中,他认识了许多会编程的同学。初二下学期,一次非常偶然的机会,通过同学的介绍,他走进了“疯狂代码”信奥社,颜老师看到他对编程如此感兴趣,就答应他跟着在社团旁听。
周子竣说,现在他几乎是抓住所有课余时间学习编程,因为机房就在教室楼上,跑上去只用半分钟的时间,所以他经常一下课就往机房跑,“我有九分半钟的时间享受编程,不能浪费了。做编程就好像是创作一件艺术品,我从没想过编程对我的学业带来什么好处,我只是享受一件作品完成后带给我的快乐。”周子竣说。
B 在游戏中玩出新意
年纪最小的他拿下满分
朱天煜是建兰中学初一年级的学生,这次全国青少年信息学奥林匹克联赛浙江省只有4个满分,他是其中之一,也是年纪最小的。
朱天煜从五年级开始接触编程,那时在学校社团老师的指导下,他完成了一款“炮打蝙蝠”的游戏,这种能够通过代码实现自己想法的“新玩意”,让他非常有成就感,从此他沉浸在编程之中乐此不疲。
朱天煜的爱钻研在社团里是出了名的。刚学习编程时,他自己买了一套编程入门教材钻研,结果获得杭州市中小学生scratch趣味编程挑战赛二等奖。就算有了老师的指导,他仍喜欢自己钻研,一道难题他可以思考一个晚上,直到把题目想出为止。
“在信奥社里,我认识了一群志趣相投的朋友,我们经常在一起讨论自己在论坛里看到的神奇算法,或是一些题目的出奇解题思路等。我发现进入初中后,我对编程的兴趣越来越深。”
不久前,他和社友一同参加了ACM竞赛(全球大学生计算机程序能力竞赛活动中最有影响的一项赛事),他们三个人分别擅长不同类别的算法,联手取得了团体第12名、初中组第二名的成绩。这个比赛通常是高中生参加的,所有参赛选手中,他们的年纪是最小的。
只有数学好才能学好编程
在颜老师看来,他们信奥社的一个最大优势,就是社员们的自主交流氛围。
“我们会根据学生的水平,进行梯队划分,在学习之初,主要以老师讲授为主,等学生入了门,许多难题都是由学生自己讨论,每个学生都会想出一套方法,在讨论中他们能够发现别人方法的新奇之处,以及自己的漏洞,在老师的指点下找出最优的解题方法。”颜老师说,学生们之所以会喜欢编程,就是因为它无限的创造性以及探索空间。
“我们需要学生真心喜欢编程,其次我们主要会看学生的数学成绩,数学是编程的基础,只有数学好才能学好编程。”颜老师说,她将学好编程的所有条件建立在兴趣之上,往届信奥特长生几乎都会被杭州顶级的高中通过自主招生录取,但如果学生把信奥和升学挂钩,如果学生抱着功利心进入社团学习,这样的学生通常都会因为学得太累而主动退出,因为学编程不是一件容易的事,需要学生花费很大的精力。