jerry_fuyi

导航

统计

运气一直好,就不只是运气了——记中学七年

家长视角:公办生也有春天一波N折——无悔的高中生活

 

不知不觉中我即将进入大学。从菜场小学到知名985,我也算是实现了阶级跨越了。初中高中这7年,运气始终陪伴我左右。

 

坐标上海,初中是一所优秀的公办学校。小升初时曾经纠结过另一所学校,因为它有“爹”——同名的高中,普通的市重点。后来没有选择那所初中,因为父母觉得一样能考进,没有必要借助额外的机会,何况这一所更好一点。

既然只有这点目标,那么课内就紧跟学校,不出差错的话就是这条路了。

另一方面,小学的奥数进入初中变为竞赛,我也按部就班地继续着之前的课程。预初(六年级,在上海属于初中)时新增了物理课程,也就抱着试一试的心态上了。没想到我对物理很有兴趣,考试成绩也都不错。

老师的魅力是很重要的因素,同期的数学课程作为反面更凸显这一点。到初一时,物理竞赛课的老师据说是因为收益问题离开了所在机构,我没有追随他的脚步,而是参加了另一所机构的插班考,考进了最好的班。之后一年,我以初一学生的身份上了一年的初三课程。虽然相比高两届的学生菜很多,但积极的态度让那段时间成为我进步最快的时期。

3月,我顺利进入了物理竞赛的复赛,并凭借激进的多选题策略与物理直觉获得了三等奖。初一学生参加以初三为主力的比赛,获得了三等奖,这空不空前我不知道,但应该是绝后了——现在初中竞赛已经停办了。

↑物理竞赛奖状

我很意外,这意味着原先的目标需要修正,因为这样发展下去拿个大奖不是什么遥不可及的梦想。我的野心突然膨胀,目标升级为顶尖名校的重点班。而实现目标的途径,就是“这样发展”——全力投入竞赛。

 

野心膨胀的同时我也自大起来,初二基本没学物理,机构里上的课是和前一年一样的,不过是为了各种名额而“占坑”,不去上课。于是这一年没有得奖。我有点失望,因为去年拿奖而今年没有;但并没有怀疑自己,因为没学就没奖也算情理之中,初三才是最关键的一年。

很久以后才知道我初一就能得奖的原因:每个区必须给两个奖,而我所在的快乐教育区太菜了,初二初三的除了一个以外都考不过我,于是就给了老二我一个奖。这是不可复制的运气。至于初二没得奖,那是因为比我高一届的参赛了。

忘了说了,我主攻数学竞赛。进入初三,9月开始集中刷题,备战12月决赛。11月初赛,满分而归,冲击决赛满分。

↑刷完的题

目标没有达成。考场上我体会到了久违的无力感,前一次是在四年级第一次课外班考试上。最逊的是,只有三等奖。这对我来说是一个巨大的打击,一方面三等奖对于进入名校的理科班没有帮助,另一方面即使我考前已经很努力结果也不过如此,我是否适合走这条路?近的、远的,未来充满不确定。

原定于12月开始的物理复习计划也因为数学的失利而推迟,到初赛前一个月才开始。3月复赛,最后是没进决赛的二等奖(前30名进决赛角逐一等奖15名)。

竞赛生也要中考。中考数学压轴题,众所周知,只要找对方向,算就完事了。我所学的竞赛知识可以帮助我把题目分为大步骤,大步骤中的小步骤有固定的模式,所以我一般看完题就知道方向了,这是很大的优势,尽管我并不需要优势,况且竞赛知识不能直接用。一方面我感受到了降维打击的力量,另一方面我体会到了数学的层次感,而我必须学会用课内层次来描述竞赛层次,即从低构建起高,这为我日后学习计算机时偏爱底层埋下伏笔。

 

因为一些懂的人自然懂的原因,这一届的自招有点乱。

其实数学比完就有数一数二学校打电话来了。本来三等奖是轮不上的,因为多方面的运气才有了这个机会。1月去学校与校长洽谈,谈好次好的理科班,以物理二等奖为升级条件。

数一数二学校,顾名思义,有两所,是顶尖的高中,各有侧重。谈好条件的这所,我看中它相对自由的风气。然而后来因为一些听闻,目标开始动摇,向另一所倾斜。一次物理竞赛课上,该校招生老师来宣讲。课后我主动递上了简历,招生老师说“我们已经开始关注你了”,这给了我不少信心与希望。

各校自招考安排在同一天,只能选择一所参加。考前几天,该校打来电话,承诺我平行班保底,并给我加20分。有了这样的优惠,我更加坚定了,不顾劝阻放弃了另一边理科班的约,冒着落到平行班的风险参加考试。

↑高中校园景色

最终考入以课题研究为方向的特色班。后来我才知道,那20分不对特色班生效。当初电话是打给我妈的,她坚持认为消息传达清楚,我当时知道这20分的生效范围,我却怎么都记不起来。如果当时就知道,我可能会改变主意。

 

插播一些轶事。

初二时被一个以数学为主题的社团挖过去救场,如果再没有人参加的话就要取消了。我担起了重任。一开始只有两个同班同学,目标自招,就讲一些竞赛知识点;后来低一两届的都进来了,只能转而激发数学兴趣。

刚刚去老电脑里考古,与社团相关的资料只有两份,一份是讲解算法,另一份是考试。

那时根本不懂算法嘛!不过是用C写了一个\(O(n^2)\)复杂度的计算根号的程序(当时不懂什么叫复杂度),从\(O(n^3)\)降到\(O(n^2)\)(差量法)再优化常数(4位并1位),最后加上输入输出,就觉得可以水一课,拿来讲了。我竭力避免放出代码因为他们看不懂,但用黑板和粉笔也很难讲清楚计算过程,最终台上台下都一头雾水。

后来又准备了一些数学性强一点的暴算题,还讲了排序、RAID等。一个从未教过我的数学老师在后门一起听,课后他对我连连称赞,说把数学讲得那么有趣,让他也学到了新东西。

考试主要是想让他们体会一下差距。80分钟14题,换我现在也做不完,内容涵盖代数几何数论组合,外加讲过的尺规作图和算法。难度适中,六年级不会爆零,八年级不会及格。

↑不明所以的题目

初三时被任命为竞赛班教练,没办法公办学校里没有老师能教这些,我是十分罕见的竞赛生。当时正在复习之前学过的所有数学,我就从外面上课的讲义里找题,每讲10道,其中6道例题,40分钟一节课根本讲不完,也只能硬讲。

竞赛班开始之前拉了每班数学最好的几个人来上,有一个外班同学不够格但是想参加,由于家长彼此认识,我就跟老师说让他进来了,初尝权力的滋味。但是后来发现该同学的水平实在跟不上,有点后悔。不过更让我失望的不是水平而是态度:大多数人学习态度差,上课时一直叽叽喳喳的,有一次我直接抄答案了(正常情况下应该一步一步讲思路写步骤,外面上课只有老师不会做时才会抄答案)。

吸取上一次的教训,竞赛班的考试题量减少至10题,都是我原创的——出题有一种别样的感受。正因如此,考试时我允许除交流以外任何形式的开卷,包括上网搜题。最后好像还是没有人及格。

区里初赛,几何大题的一半是社团考试原题,但另一半把他们都难倒了。实际上是经典老题,他们不学所以没见过。如前所述我满分,还有一个人达到分数线,又因为照顾弱校再给了一个名额,就只有3个人进决赛。这算是我预料之中的结果,竞赛班也就这样结束了。

 

物理竞赛完了以后是化学,化学我是初二才开始在学校里兴趣班学的,相比之下算起步晚的。兴趣班上认识了新来的化学老师,管实验室,这下我就去实验室刷题、问问题。后来竞赛过去了,我的自招也搞定了,渐渐地就定居在了实验室。

最开始做的是氢氧化铜实验,发现硫酸铜和氢氧化钠一个往另一个里面滴会产生分层,反过来不会,觉得是密度问题。自己配了浓度差不多的溶液,默认为密度差不多,然后可以滴出好多层。

六年级上课测定硫酸铜溶解度,耗费大量硫酸铜,被我们拿来玩结晶。实验室条件差,拿绳子作晶种,结出些不太漂亮的晶体。

↑硫酸铜晶体

后来渐渐玩开了,做了个锌粒盐酸制氢气还原氧化铜的实验。实验很成功,不过把一支试管变成氧化铜专用的了(硝酸稀缺)。做这个实验的时候老师不在,后来他说很容易爆炸,有点后怕。

还有一次用硝酸铵制笑气,就是前几天爆炸的那种物质。仓库里的硝酸铵都板结了,老师拿玻璃棒捅下来一点,有点后怕(其实硝酸铵常温下对碰撞不敏感)。由于缺少控温措施,我吸了点制取的气体并没有特殊的感觉。

实验室有一台磁力搅拌加热器,有位同学在上面放了个盛糖水的烧杯,走的时候忘关了,第二天变成了焦糖。

实验室在一楼,一楼大堂有一架三角钢琴,我就上课时去弹。当时在玩某游戏,游戏的BGM很优秀,我就扒谱下来弹。这为未来埋下了祸根。

一直都在玩一款枪战游戏,这下闲了下来,有更多时间来肝装备了。我擅长打冲锋,击杀死亡往往很高,几乎每局都MVP和ACE至少捞一个,而游戏似乎针对MVP降低好装备爆率(也可能是我氪金太少),所以我规定自己必须每天12局打完。

↑有手就行

有时学校里也玩,就在实验准备室后面的仓库里,实验室老师和同学是不会管的,除此以外没有人会进来。

游戏有各种bug和奇怪的匹配机制,导致排位满分很难维持。久而久之,打游戏不再快乐,反而成为一种负担。有一天想通了,就弃坑了。

尽管弃坑,自招结束后我整个人的状态一直是很颓废的,是之前长时间的紧张后突然放松造成的。一位黑化的好友在临毕业前跟我说“你现在已经快要变成无趣的人和讨厌的人了”,希望我“多读点书或者在喜欢的事情上继续发展下去”。能有这样一位好友我感到十分幸运。

这是我记得的最后一件事。初中完。

 

进入高中。来到竞赛强校,我理应利用资源继续竞赛生涯,但先前打击的余温仍未消退,再加上之前高中竞赛课上听不懂的感受,我决定放弃竞赛。先放弃的是数学,暑假里还在上学校的物理竞赛,开学后也退出了。

高中是寄宿制的,我并没有不适应。学校有食堂,校园里还有一家便利店,选择很丰富。

↑日常

我本想闷声发大财,但还是闷不住。开学后不久,就有学姐借初中校友的关系来邀请我加入乐队。

其实我六七年级的时候一直在学吉他,买了很多设备,还搞过乐队,甚至上了电视。后来不学了自己练,但上了初三就一下子中断了。毕业前又重拾,现在给我一个机会把它作为“喜欢的事情”“继续发展”,我当然是乐意的,于是就答应了。

初入乐队,发现里面很乱,就瞎安排了一通以后把编曲揽了下来。低年级的去领导高年级的,现在看来可真是愚蠢。

事实也证明了这一点。本来排练节目是为了上艺术节,花了很多精力以后音乐老师说不给上。排练一段时间以后我就已经不看好自己了,这下正好有理由退出,没想到先前来找我的那位学姐死皮赖脸求我留下,一来二去就成了我女朋友。

我对她一直是无感的,她对我本来也无感的,直到有一次我送给她一杯奶茶。而那杯奶茶的来历,是我一次性帮同学带了10杯奶茶后店家送的。我在班里卖不出去,同学就建议我到楼上(高年级)卖,我觉得这何成体统于是就改送了。相当廉价的手段!

↑我和我的吉他

进特色班是要做课题的,学校为我们配备了相当好的资源。每周两次,连续两三节课,作为“专门课”,给特色班学生用来完成课题。一开始是10个方向的教授前来宣讲,两个班的学生坐在大礼堂中听。都讲完了以后就分方向,此后就每个方向分开上课了。

我选择了通信方向,7个人,后来做的东西跟通信基本没有关系。指导老师是教计算机的。分方向后前6周,由上海交通大学的教授来上课,每人2周4讲10节课,分别讲了模数电子、MSP430单片机和安卓开发。据说请教授来上一次课就要几千,当然是学校出,学校很有钱。

然后该确定课题了,在此先说说我与课题的过去。初中时参加过创新大赛,课题很简单,就是把两个输出电阻高的模拟信号源短接在一起给后级可以实现音频的叠加(这些用词是后来才会的)。课题的由来是我以前学琴的时候两把电吉他只有一个音箱,我就用铜丝把3个6.35mm插头接起来,没想到真能行。真是一环扣一环(双关)啊!

所以就想着课题也是音频这块的,想了个人声处理,上知网查了点论文,完成了文献综述的作业。

后来觉得这个课题无从下手,想改做点效果器相关的,学了点模拟电子以后觉得行,开题报告就写的这个题。

↑传销式开题

 

这个课题讲的是用数字手段控制模拟电路。众所周知效果器上的旋钮本质上就是电位器加个帽,那么用数字设备取代电位器的方法有可控电阻和数字电位器等,如果可以改变原有电路那么还有可控增益放大器等,甚至还有机械方法——用舵机控制电位器。这么多现有的芯片我不用,我偏偏选择了一条最困难的路(不告诉你是哪条)。

3月开始学模拟电子,仅看书。最让我耳目一新的莫过于运放的负反馈,除此以外我也没记得什么了。尤其是共射放大电路,不在射极加电阻根本没法控制放大倍数,这是后来才知道的。

课题涉及单片机,所以我买了本书复习了一下C语言。六年级时学校给名额去学Arduino,后来自学了C语言(程序设计入门——C语言),买了点元器件在面包板上搭电路。

↑早期作品

又把单片机数据手册读了一遍,还有一本专门讲效果器设计的书,都是英文的。英文技术书初看有点累,看了一两章以后就习惯了。

除了看书学习以外,还要电路仿真。高一时间安排不紧,但也敌不过那么厚的书,白天时间排不过来。学校规定6点起床,我把闹钟调到3点(以前是5点起来练琴,有时4点起来背英语),为此室友作出了很大牺牲。为了做课题还买了手头这台笔记本电脑,本来想等Intel一屁股坐牙膏管上的,等不及了就买了(i7-7700HQ)。

这种安排下课内成绩可想而知,期末拿了两个不及格。特色班有淘汰制,好在期中考得还行,加上理科优势,我还能继续留在这个班里。

之前都是理论和仿真,而展示肯定要用实物,我就去摸索了一下PCB设计,画了几块方案验证板。网上找厂家制板,淘宝上买元器件和设备,花了好长时间焊接,逐渐学会了焊接贴片器件(现在0.8mm无压力)。

家里没有示波器这么贵重的仪器,去交大借实验室做了两次实验,均以失败告终。

↑方案验证板与波形

结果就是我把核心原理以外的结构和细节都设计完了,核心却迟迟攻不下来。按照通常的进度,高二之前课题至少得有个样子了,眼看着这个题遇到瓶颈,继续下去也无望。于是我用一个星期抄完了暑假作业,高二开始从头再来。

小结一下这个课题带来的收获:

  1. 因为缺乏相关经验又没有人来指正以至于误入歧途最终失败;

  2. 理论与实践需要结合,一步一步迭代上去;

  3. 要利用已有的层次,不要妄想全部从底层开始;

  4. 搞清楚定位,不要把相关的东西全揽进来;

  5. 让我体会到教科书上知识的力量,同时教科书有多么教科书;

  6. 让我学会了如何挤时间出来以及如何把握挤时间的度。

 

抄作业的时候当然没闲着,我在思考该换什么题。之前淘宝采购元器件时逛到过各种模块,这些东西在需要的时候是很实用的;也有直接把开发系统做成一个个模块的,但是无一例外地贵。我觉得这个想法很不错,我也知道PCB和电子元器件都是什么价格(甚至只用知道量级就够了),所以就决定是“模块化单片机开发系统”了。

一个核心问题是模块间的通信,在SPI、I²C和USART中我显然选择了I²C,尽管之前没有任何写I²C的经验,但之前就着datasheet写寄存器的经历告诉我这样做是可行的。

另一个核心问题是设计的定位,这是后来写论文时才开始重视的,并且更改过很多次。此时的定位是N/A。

第一个比赛9月报名10月参赛,此时我的PCB刚刚制作完成,程序都还没有写,尤其是I²C通信部分。我只能假装解决了通信问题(毕竟在通信方向)填好了报名表,然后努力在比赛前实现了用于演示的功能。

↑初版模块

当然,是用全部的休息时间外加早起获得的额外时间赶出来的。其实I²C通信没那么困难,说到底一方面还是自己菜,另一方面此前一些参数选得不好,比如核心模块上单片机是ATmega16A而应用模块上是ATtiny24A(两个名字可以顾名思义了),两个系列所带的I²C组件是不同的,还得分别开发。我不记得克服了多少不必要的困难,反正最后是完成了。

I²C通信的上层是一些回调之类的,除了函数指针的数组怎么写需要查一下以外都没什么难度。

初次比赛,不太顺利,被揪着定义的问题问了半天,我不知道我给系统里的功能起两个名字怎么碍着他了。最后拿了三等奖。

后来又做了一系列模块,都没啥用,当时PCB打样还老贵的说。代码也优化了一下,起码中断可以返回,不用每次进中断把SP设置到RAMEND了。

又去参加课题答辩,专家讲到I²C稳定性不行要用CAN什么的,我当时不懂CAN也没法回答。介绍的时候还很自大地说这个开发系统未来可以形成什么样的生态之类的(可见我能从过去的经历中获得的唯一教训就是我不能获得任何教训),大有一统天下嵌入式市场之势,被专家批评说要谦虚。

我渐渐明白,我的课题的核心卖点是“模块化、低成本、可扩展”,缺一不可;尤其是低成本,带CAN的单片机和CAN收发器都是很贵的。当然我也没觉得那几个会用CAN眼里就只有CAN的人有比我高到哪里去。

之后一边做下面会提到的各种乱七八糟项目,一边继续设计新模块,越发感觉先前确定的参数需要修改:模块上放不下下载器接口,需要用可拆卸的单片机,它的封装不能太大,那么它多半属于低端系列,功能受限;模块间连接器要占据一半的PCB面积,没留多少用于放器件了;所有问题都归结于模块尺寸太小。我开始酝酿新一版的硬件设计。

其间还报名了一个比赛,我初审就没过。我们老师(校内,非指导老师)就说,让你不好好写论文,花那么多时间在研究上。这算什么学术态度?合着你就先有论文后有天呗?此人的另一个故事见摇摇棒,理工男的择偶权(上),放一起看就不难理解了。我写过一篇《论文奴》作为语文作业来嘲讽她,写得不好就不放了。

同时班里也诞生了一个说法,我没有入围的比赛一定不是好比赛。忘了介绍背景了,班里40多个人就没几个人是认真完成课题的,其他人有的是教授直接塞课题,根据论文来写开题中期结题报告的,不塞的就随便混混,享受特色班的教育资源;在认真的人中,我肯定是花心思最多的。听到这个说法的时候,我有些得意,但也嗅到了一丝嘲讽,不过我已经习惯了。

挂完人顺便挂个事。各种比赛的各种申请表,填得真的头大,看似各有侧重实则千篇一律。你要是正规比赛,就去那综评网站上拉资料不就好了?我们在那点一下等一年的网站上每学期辛辛苦苦填各种信息,要你用的时候还要我们自己填?哦哦,你获取不到那些官方的信息,那不是正规比赛还不快滚?

回到正题。新版模块在3月的创新大赛之前完成了,这时报名资料已经提交了,论文里用不上新版了。我原想终评现场演示用新版模块,没想到最后只拿了二等奖没进终评,倒是同学由家长完成的课题进了。

↑新版模块

之后就是高三前最后的狂欢,也没心思继续做了。由于缺乏动力,早上也起不来了。

 

课题看似占用了我很多时间,实际上只是一部分,更多的时间被我用来以做课题的名义玩耍积累经验。

9月初开新课题,理应抓紧一切时间赶进度,我却在给女朋友做礼物。当时还没做过几块PCB,单片机编程的经验也没那么丰富,就只能做点简单的东西。但是抓住小姑娘的心仍是第一要务,于是我设计了这款心形LED。原理很简单,单片机+4片595,定时器接蜂鸣器和RGB灯。

按键消抖做不好,EEPROM的I²C不会写,甚至595的方向都搞反了,好在可以相应地改程序。这些都是次要的,她喜欢就好

↑心形LED

11月,课题那边基本成形了,我就想着学点新东西,自我提升是比较冠冕堂皇的理由,更实际的是觉得课内和课题都没有出路,不想花很多时间,但又不能浪费时间,就选择了上网课C++程序设计入门(上),现推荐C++程序设计(面向对象进阶))。没几天MOOC就上完了,但学习从未停止。

学习C++的最好方法就是用它,我把它用在我熟悉的AVR编程中。12月我设计了一块开发板自己用,意在尝试用C++和回调提供一种简洁的写法。从C升级到C++的感觉别提有多爽了,只是有点矫枉过正:工具链没有提供STL,我自己写了几个容器,里面大量使用new

单片机选择的是flash和RAM较大的,想用来学RTOS,后来一直没有学成。收获是把UART中断和定时器中断用熟了。

1月,我看手中的USBasp很不爽,想做一个它的超集,就做了一个基于ATmega16U2的工具。后来没有时间学USB了,同样没有做成。

↑尘封的开发板

2月,准备情人节礼物,做了一个6*6*6红蓝双色光立方,原理也很简单,9片595分三组加6个MOS管动态扫描,一个蜂鸣器放音乐。红蓝LED如果要亮度相同(或者说要调配出紫色),串联电阻的阻值就得不同,所以我焊了72个电阻而没有用排阻。更累的当然是光立方本体了,我没有用网上说的泡沫塑料板的方法,而是6个LED组成一列(下图中垂直于屏幕方向),6列组成一面,最后6个面焊到控制板上,再加铁丝固定。

需要在此提醒读者的是,到面这一步就必须逐个测试LED,否则后面很难更换。这是我做废一个4*4*4光立方的教训。

↑光立方

4月,忐忑不安地设计了摇摇棒,因为网上能参考的资料不多,还因为怕锂电池爆炸。没有任何调试输出,也没有任何经验,我不知道我是如何把周期检测算法调通的。最后图像成功显示的时候,连我都被惊艳到了。

印象深刻的是有一次在黑暗中装电池,打开开关后不仅LED不亮,我还闻到一股烧焦的气味。打开灯一看,单片机上出现两个凸点——原来是电池装反了,钳位二极管烧掉了。我想这根肯定废了,没想到把电池反过来以后竟然还能亮!

一共做了两根,另一根作为520礼物送掉了。

↑初版摇摇棒

与这些并行的是C++的深入学习,买了好几本书,最喜欢《深度探索C++对象模型》,因为单片机也是比较底层的东西。为了使带捕获的lambda能用于回调,我自己实现了std::function,此为模板水平的分界点,并明显地强化了我对C++的兴趣。我确定了以单片机和C++为主要学习方向。

只是此时课题已经告一段落了,我的手机里多了几个游戏。

 

暑假作业好多啊!从中我能预见到未来一年的生活。肯定是没时间做各种项目了,那就开通个博客随便写写吧!后来事实证明,写博客一点也不比做项目省时间。

开的第一个坑是PAT甲级题分类汇编,因为当时在学数据结构,了解到PAT考试,觉得努力一下可以考出来,于是决定以写博客的方式督促自己刷题。后来只写了一点就干别的去了,集中刷题还是考前一周,也就是开学第一周。

目前本博客唯一的大型系列是AVR单片机教程,开坑于暑假,完结于线下开学前。动机是女朋友考上了交大密院,而在设计展中看到的大一学生作品让我对他们的单片机教学有些担忧(见AVR单片机教程——开发环境配置),于是设计了一款开发板并编写了一系列教程。时至今日,这仍是我用得最顺手的一块板,只可惜教程(尤其是第一期)的质量不大行。

之前学校里上课时听老师讲起过丘成桐中学科学奖,感觉很高端,毕竟是用英语的。想起之前比赛的各种乱象,我决定报名参赛。没记错的话论文9月中截止,我肯定要在暑假里完成。还好,初赛只需要中文论文。

但这并不轻松。首先是课题内容。新版模块的硬件设计很早就完成了,但是程序始终无法写到让我满意,因为我不是一个模块分类专家,能把模块实体抽象出的类用继承关系联系起来。这时类型擦除的优势就体现出来了,最后我保留了两层单继承关系,其中只有继承树底端的类是非抽象类,同时用std::function的扩展的容器(加上object.method的形式与operator==的功能,用链表来包装,都是从C#学来的)来实现回调。

然后才是论文。我的课题是一个设计,它解决的是一个比较主观的问题,那么如何描述它的背景,如何安排对设计的描述,才能凸显出我的设计的优势呢?有了先前几稿论文的经验,我最终以“自顶向下地分析需求,自底向上地设计接口并实现”的思路写完了论文。

↑架构框图

临开学还遇到了一个问题,见C++类成员默认初始值。这个问题迟迟攻不下,我只能先凑合着写完论文(人终究要活成自己讨厌的样子),用一些硬编码手段使示例程序能正常工作,并录制了视频作为报名资料。至此报名结束,想想开学前还有什么事没做。

暑假作业?哪里还有时间!这样去上课肯定要完蛋,正好数学竞赛在集训,我就去避了一周(好歹高二时候考来一个名额),又利用物理集训避了两周(当然也有正当理由),回去以后没人认识我,也就没有人来问作业的事了。

竞赛是混混的,捞个奖而已。第一周是数学集训,在我这儿更是数据结构集训——10点熄灯,我一般刷题到11或12点。一个例外是有一天遇到了1057 Stack,原以为10分钟搞定,没想到写到凌晨1点(不愧是30分题),开了熬到第二天的先例

尽管PAT满分和数学二等奖一样没用,但前者给我带来的快乐远胜于后者。

我在上一行的链接中写道要学算法,于是我就真的报名了CCF CSP-S(原NOIP提高组),并参加了两个MOOC开始学习算法。一个只会数据结构的人如何用一个月的时间备战NOIP?靠每天22点到次日2点。学的时候想到可以写一个“写游戏,学算法”系列,至今未开。

初赛的时候同考场的几乎全是小学生,复赛的时候旁边也坐了个小学生,第二天他因为什么都不会哭了(说得好像我就会一样)。尽管不会,我还是能做出两道题再骗点分的,最后顺利拿到一等奖。我觉得弱省NOIP会敲键盘就能拿一等奖,所以一等奖的快乐还是不及PAT满分,尽管两者也是一样没用。

一开始不知道丘奖还有半决赛,等到CSP考完有时间准备的时候距离比赛只剩两周了,此时最关键的问题是前面提到的那个bug。在一个所有人都在教室自修的下午,我在熄灯的寝室里敏锐地发现了这个bug,此后就没有什么技术问题了,只有在C++方面有一点技术含量,这是我后来强调的。

然后是PPT。高二结题答辩的时候做过PPT,但那时是上一版模块,后来接触的多了又有了些概念上的修正和增补,已经大不一样了。论文是没时间改了。

去浙江大学参加半决赛。学校非常不重视这项赛事,半决赛和总决赛的所有安排学校都不参与。到半决赛现场看到参赛选手都西装革履的,还有老师带队,非常重视,与我形成鲜明对比。

比赛在一个会议室中进行,我进去以后因为要用自己的电脑而耽误了一点时间,导致不得不跳过几张PPT才勉强在15分钟内讲完。专家问出的问题也都跟外行似的,几乎没有落到课题的特色上。不过毕竟是相关方向的,能估计到我这课题的工作量不凡,结束后有一个专家追出来问了几句是否是独立完成、是否影响学习之类的。

后来顺利进入总决赛,我有大约一个月时间准备,这一个月是有史以来我最累的一段时间——英文论文、英文PPT与讲稿,还有我为课题添加的一些筹码,比如设计了一块与Arduino兼容的板子(这再次证明我还是吸取不了教训,尽管这块板挺好用的),增加了兼容性这一特色。

↑MEDS-UNO

英语方面,既得益于平时用Google和Stack Overflow的习惯,也得到了在密院的女朋友的帮助,先后完成了论文和讲稿。代价仍然是睡眠,这段时间可以到凌晨3点,如果电脑还有电的话可以更晚。以前玩游戏时看到男主兼职到晚上27点才睡觉,睡4个小时第二天还能赶上第一节课十分惊讶,现在看来不过如此。这还不够,白天时间还要拿来背稿子,一边在校园里转悠一遍背,一天下来能有一万多步。

去清华参加总决赛,组委会报销路费。校园很美,但这美不属于我,我参加比赛对进这所学校没有任何帮助。组委会为学生和指导老师提供住宿,我是和我妈去的,只能住在外面的小宾馆里面。我被安排在上午比赛,前一天晚上就背背稿子,想想可能被问到的问题。

比赛在一个小教室中进行,只有一个外国人,但大家都讲英语。比赛要求参赛选手穿西装,我感到双重不适。更糟糕的是我无法用我的设计如何给人带来方便打动CS的专家,导致很多点都没有凸显出来,准备的问题更是一个都没用到。我非常失望。

第二天颁奖典礼,我获得了优胜奖(我称之为“铁牌”),怕是评委可怜我工作量大才给我的。晚上还有个晚宴,我心情不好就没去。

↑奖杯

此后就不再有什么deadline了。寒假里写AVR单片机教程第二期6篇,一篇比一篇长,一开始还能一星期两篇,后来两星期都未必能更一篇,一直拖到线下开学前。长度与难度是一个原因,更主要的是因为当时我在玩一个经营类游戏。游戏很氪,我一分没氪,但服里有几个几单几单氪的老玩家,都是事业有成的成功人士,其中一个说我既然要高考就不应该玩游戏,我觉得确实太浪费时间了,后来就卸载了。

我赶在等级考之前调试出了摇摇棒,它和前一版的背景都在文章里有描述。考前交给班主任让他在考场外应援,在办公室里引起一阵骚动,把隔壁办公室的老师都引来了。年级组长甚至说要考虑量产,虽然这事没有下文,但我作为一个存在感又低又高的学生应该就和摇摇棒绑定在一起存在于他们的回忆中了吧。

再往后的事,就可以在新开的文章里写了。

 

十一

课内学习本应是我的“主业”,但至少在我心里它不是。关于这方面,我想旁人应该看得更清楚,详见文首的“家长视角”。

本文主题为“运气”,写到这里我并没有忘记。进入高中以来,我的运气主要体现在课内,因为我花了相对很少的精力获得了在我的圈子里中规中矩的成绩;其他方面,我所轻视的奖项甚至有些对不起我的付出,至于我获得的知识与能力,I deserve。

众所周知上海是高考综合改革省份,具体的我就不介绍了。高二考地理和生物,我选择了生物,平时分数一直在均分以下一点。高中生物是一门花工夫就一定能学好的学科,我的成绩上不去的原因很容易从前文中推断出。

考前一个月,前所未有地感到高考如此临近,再不在乎的人也会有紧迫感的。于是我开始划书、刷题,没多久就把生物学成了一个自成一体的知识体系,除了那种吸入氧分子到呼出二氧化碳要穿过多少层磷脂分子之类不会考的问题以外都不在话下。

理科自古以来就是要冲满分去的,查分时我能接受的最低分是A,后来查到是A+,信心增强了不少。

高考英语成绩是春考秋考两次取高分,丘奖总决赛结束后只有3周就是春考了。这回是课内直接得益于课外,翻译论文那段时间我的英语翻译分数都很高,写稿的时候也学到不少新词,都是可以用在作文里的。考前一周,晚上照旧晚睡,不过不写代码而改写作文,同样得到密院学生的帮助。

最初定的目标是130,后来考了134。尽管今年考卷简单,这也已经是超常发挥的成绩了,我很满意。从此和计算机英语以外的英语说再见了。

疫情原因,我被强行充值了一个月。等级考另两门我选的是物理和化学,都是拿手科目,但高三以来成绩一直在下滑。考前我把教科书看了几遍,又去办公室待了几天,有问题就问,没问题就听别人问题。教科书是真的对考试有帮助,办公室提问更多的还是心理安慰。

考完发现理化都有错题,但好在今年考卷偏难,还是拿到了双A+。有人说我复习节奏慢半拍,我觉得我慢的有一个小节。我就像龟兔赛跑里的兔子,先冲一把,然后睡一觉,最后再冲一把。在别人看来我在睡觉,实际上我在另一个次元里跑得可卖力了;最可气的是,在赛跑的次元里最后我还是比乌龟快。

然后就是高考了,我只剩语文和数学两门。高一高二时候数学的地位就没有撼动过,进入高三一下子变得很菜,主要是因为之前很忙的时候不做数学作业被减少30分钟考试时间,后来考试时间恢复了但分数也回不到从前了。数学这玩意儿对我来说就考一个状态,到了正式的场合状态自然就好了。至于语文,没办法,随缘吧。

最后语文109,数学145(我觉得我没有任何错),总分598,清北去不了,复交稳稳的。语文算很差了,如果这三年更用功一点,我相信会有更好看的分数,但是如果给我机会重来一遍,我也不会这么做,因为不值得。退一步讲,要了也没用。

该选择专业了。了解我的人都以为我会去读计算机或电子,但我却选择了物理。我不是要就此放弃这些已经入了门的学科,我会继续自学下去。至于为什么是物理而不是别的,只是因为兴趣而已。

出于各种原因,在复旦和交大中我选择了后者。综评面试很顺利,应该是这一年中最顺利的事了。自我介绍主要就是本文第十段的传奇经历,故意给自己挖了几个坑,后来被问到一些。最后面试分137.5,喜提理科试验班

↑两届校门3D卡

 

十二

最近在玩Physics Balls,一款弹球游戏,很解压。

↑有尺就行

玩法很简单:选择射出的角度,然后球就开始弹,反弹有一定随机性。有重力,球落到底部后返回。每轮上移一行并新增一行,形状与数量随机。到顶上还未清除,则游戏结束。有多少行取决于屏幕宽高比。

站在我的层次上,我认为玩这个游戏有三个境界:

  1. 小球运动路径因重力而弯曲,玩家瞄准了却打不到,靠运气打到哪是哪;

  2. 玩家能瞄准,能计算一次甚至两次反弹后的路径,精准消除特定的块;

  3. 能从多个块的形状与排布中发现模式,从而克服甚至利用随机性。

为什么突然讲这个呢?因为我觉得这款游戏和人的奋斗是同构的

屏幕宽高比是人的先天条件。我从1920*1080的手机换到2400*1080,分数有显著提高。

而玩法的三个境界则象征着人努力的方式。很多人觉得我一直都是靠运气的——他们以为他们看到了第二层,把我想成了第一层,而实际上我是第三层。

我承认我不努力,至少在他们的主业中。有人说,我们还没有到要拼天赋的程度,所以努力就对了。但是努力之外有运气,还有天赋。努力的确带来产出,但天赋能从另一维度提供帮助——它提高“性价比”。况且我不觉得利用天赋有什么可耻的。

与天赋并列的是学习方法,对应前述“模式”。这些学习方法是在学习过程中逐渐获得的,甚至受益于“元学习”,即如何规划学习路线之类,都是我自己为自己完成的,我想这是同龄人中少有的。我的学习方法,所谓总结、归纳,听起来是很虚的;如果我能把这些模式描述得清清楚楚,那么我应该立即去学人工智能。

我唯一承认的运气就是本文的第一张图。但是,如果没有那张奖状,以至于后来继续竞赛或从未学过竞赛,考进清华北大或华师大——走了完全不一样的路,我也会殊途同归地用不一样的内容写一篇《运气一直好,就不只是运气了——记中学七年》。

posted on 2020-08-16 21:43  jerry_fuyi  阅读(2739)  评论(4编辑  收藏