(中文) 你的计算机启蒙是谁?

Sorry, this entry is only available in 中文. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.

后续:两年后,我写了《记孙正威老师 | 黃河青山


感觉好像没什么值得说道的,对大家来讲。我个人觉得比较有意义的倒是有一件。在五年级的时候,有一个信息老师选拔数学比较好的人去学计算机竞赛,一共选了六个人。那个年代,不要说计算机竞赛了,就是计算机(对我来说)也是很遥远的东西。我还没有自己的电脑呢,只是偶尔会对着电脑店的广告单垂涎。

这个老师在小学很有名,叫孙正威,我经常在机房的电脑上看到以他为名的文件夹,或者是他创建的文件等。但是之前并没有上过他的计算机课,只是听说他很严厉。

不管怎么样,就是去学了。在新建成的教学楼的六楼,一个内外两间的办公室里。似乎外间有一台电脑,也许内间也有一台。然而有时老师并不总能准时到,我们几个只能在外面的走廊上等。那种焦急的心情,现在也似乎立马就能体会。但这样就变相翘课了,所以心里还很高兴。

中间的插曲有很多。比如和 5 个同学在机房一起比拼打字速度,最后 A-Z 的打字速度似乎练到了 400 多。还玩了一些 Flash 游戏,主要是《上古神器》。有一次有老师来培训 Photoshop,我听着听着就学会了,老师就让我教那些老师 – -。

中考的时候,我们依然坚持上课,甚至在中午回家时,被当成是少年而中考、并且提早交卷的人。到了暑假,新教学楼不开,我们就换到老教学楼里。想来这位老师也是很有为的人,之后我再没见过如此认真教学的老师。

学的效果还是比较好的。学的内容也比较全面,至少把那本小学竞赛书都过下来了。我自己也很有热情,去乒乓球管看球都不忘带着电脑码 QBASIC。那时候我还比较热衷 Access 的窗体设计和编程,因为买到了一本相关的书。最后为我妈做了一个保险订单管理系统,被老师夸赞说有钻研精神,还发送到了市里相关老师处。

然后就是比赛了。还记得当时的小学竞赛是发一张纸,手写答案的。现在就记得有一题是某种迷宫了。最后我也许是急中生智,脑算了一些答案填上去。当时去了 3 个人,一个人是 0 分,另一个是 10 分,我是 180 分。结果出来我还沾沾自喜,然而宿舍里一个别的学校老师表示了不屑,当然人家的学生成绩确实都很好。最后我是盐城市二等奖的第一名(哇我怎么老是记住这个),一等奖的都是盐城一小(也是当届比赛的举办地点,不过是在南校区。据说离我高中念的盐城中学很近,然而念了三年也没有想起去看看)的。

当时在竞赛获奖名单上看到的一些人,多少年后还是会偶尔关注,发现他们都去了清北,或者出国,想来也是必然的。

然而好景不长,这种学习戛然而止,因为这位老师考上了税务部门的公务员,不再是老师了。这无异于一记晴天霹雳,当然对我触动不是很大,因为我好像对数学和(想象中的)物理更感兴趣。

后来我自己买了一本职校教材,但是好像没什么有意思的内容。倒是讲了一些绘画功能,但我似乎没有去实践的动力。又买了一本什么 Visual Basic .NET 开发的书,但是我最感兴趣的内容是安装完整版的 Visual Studio 2003,因为别的内容都看不懂,什么事件之类的——我只会 Access 中的编程。

到了初中,没有老师能继续指导,我自己也很是懒惰,每年只有临考试才看看信息学,水平不忍直视,乃至连续两年都 runtime error (甚至到今天我都不知道啥原因。。。)。而且我好像确实对数学更上心,有一次在南京比赛,我就买了一本拉夫连季耶夫的《复变函数论》,虽然看不太懂。。高中学校更是不支持,好在到了市中,有了一些同侪。巧在第一年复赛,恰逢禽流感,参赛的当天我居然神秘地发起烧来,不能开出体温证明来。。之后的两年,就自暴自弃,懒得参赛了。我的 OI 生涯就这么结束了,或者说从没有开始过。

我无意为自己开脱,最主要的原因还是自己学习能力太低下了。网络上什么资料都有,怎么能归咎于学校呢?当时初中参赛时,我就听到过旁边的老师谈及他们的选手都是小学生,自己在论坛上学。遗憾的是,我甚至高中才知道有 OJ 这种东西存在,然而又能怪谁呢?我初中就熟知各种色情网站,说到底还是因为动力不足。

这样的结果就是,我的电脑水平长期停留在熟练使用 Windows,对编程都一窍不通,不要说系统架构了。这样的半吊子竞赛经历对我有很大的坏处,实际上,直到半年前我才学会应用开发,这是多么的遗憾啊!之前,我对编程的印象还一直停留在一个文件,一个 main (之类的函数,其实我只能写 PASCAL)呢!

这中间唯一值得有点意思的,是初中的时候沉迷 Flash 游戏,在一个叫 Nonoba 的网站上(现已倒闭)。一知半解的情况下写了一些打飞机之类的小游戏,还加上了粒子效果的星球背景等。但是我并不了解整个的架构,而且当时用的是 ActionScript 2,对于深入理解编程并没有什么好处。ActionScript 3 出来,我顿觉无所适从,恰逢初三,搞一些别的事情的同时就停止了学习。

大二的时候(也就是 2014 年初),买了一台 MacBook Pro。2014 年暑假,获悉另一位高中同学也买了,我们就多了些交流。他也是初中时(相对来讲)长于信息竞赛的人,因为盐城中学初中的竞赛有人带。但是到了高中,就不怎么搞 OI 了,没有人带,学校也不鼓励。他有一年差点拿到保送资格,然而最终还是没有。他本来大概能考清华,高考却只去了南大,我们当时都很震惊,而且是念数学,和我一个专业。

当时他向我安利一些 Python,beautifulsoup 之类的东西,我甚是不明觉厉。他发送我的 python 源码,我似乎还保留在 ~ 目录(彼时我还不太懂 OS X 的文件结构)。我们当时讨论一些开发软件的事情,比方说 iOS App 的开发。我试图学了学,但是没有懂。不知他有没有学。

我们还交流了一些关于 ss 等网络工具的知识,但以现在的眼光看来,都很粗浅。我当即买了两个 bandwagonhost 的 vps,走上了一条不归路。

不知是那个暑假还是再一年前的暑假,为了在网页上随处渲染 LaTeX 公式,以及把 WordPress 的图片公式替换成 MathJax 的公式,我强行搞了一个 Chrome 扩展,就是这个 Axure/MathAsYouWill · GitHub。当时是用 JS 手动生成 DOM,还被异步的调用搞得晕头转向。最近改用 AngularJS 重写了一下。

在种种因素的刺激下,下一个学期,我就去修行了计算机学院的一些课,比如数据结构,但是完全不得要领。期中考试的时候,我几乎交了白卷。痛定思痛,我开始大规模翘课研究计算机,这导致我学会了一些数据结构,但是挂了很多别的课。但是转变大概都是需要代价的。我可能更多是在圆我的计算机梦,我想找回那本来(想象中)属于我的东西。

后来断断续续地和他交流过,他似乎志在计算机方面的学术,我们就无法更深入地交流开发了,真是遗憾啊。不过他也是曾经的 OI 党,自然倾向搞一些计算机方面的学术,而我学习编程,只是为了做出想象中的东西。我的兴趣,还是在数学。这样似乎很自然。

我真正开始学习开发刚刚半年(这从我的 GitHub commit 记录也能看出来),计算机领域对我来说是一个新的世界。我才刚刚启蒙,期待未来能有更多的发展。

2015-10-04 于知乎

freetiger18 :