R·ex / Zeng


音游狗、安全狗、攻城狮、业余设计师、段子手、苦学日语的少年。 MUGer, hacker, developer, amateur UI designer, punster, Japanese learner.

只是一个快乐的程序员罢了

注意:本文发布于 2564 天前,文章中的一些内容可能已经过时。

好久没写过这种日志了。今天突然有点兴致,就顺手写一写吧。

我是一个普通的程序员,有着一点前端的开发经验,顺便有那么一些后端和运维的三脚猫功夫。一个人的时候喜欢发呆,有时候也喜欢玩点音游。

好吧其实这么介绍并没什么意义,因为关于技术和性格方面的介绍,这个页面已经说的很详细了。我还是说一说我自己的黑历史吧。

每个人都有一段黑历史,就像绿箭侠里奥利弗的妻子、跟费玉污一个姓的IT女过去是一个桀骜不驯的黑客一样。个人感觉自己这些年来变化还是挺大的,不得不说教育实在是厉害。


接下来一段涉及到死亡。很抱歉一开始就提这么沉重的一个话题,不过我只是在讲故事而已。为了不让大家太严肃,我先用一个表情破坏一下气氛好了/_\

我能追溯的最早的事情是:五岁那年由于一个比较奇怪的病,我第一次也是唯一一次进了手术室。据说手术之前医生们没啥把握,还让我父母签了一个什么协议,大概意思就是这孩子可能在手术的时候挂了,你们如果想继续就签,我们可不负责。结果居然挺好,甚至没有落下什么后遗症,除了多了道疤而已。这是我第二次濒临死亡,第一次是在出生的时候,之所以知道这件事,是因为看了我妈的日记——记录了我从出生以来九年的成长,然而日记的事情我不太想谈。我出生的时候是大半夜,可能属于晚产因为出生的时候有7斤4两,当时情况也比较急,还刚好碰上医院停电,最后转了院,我才得以顺利降临这个世界。然而这两次我都没什么感觉上的记忆了,只是感觉自己能躲过两场劫难,也属于比较神奇的人物了。

然而我小姑和姥姥却没那么幸运。(先插一句,这段回忆并没有什么可伤感的,为了确认我再来个这样的表情好了→_→)小姑与我的交集大概在我出生到三岁,所以并没有太多印象。当时听我爸说小姑去世的时候,并没有太大的反应,只是在想:一个亲人走了。大二的时候正在合肥比赛,表妹来了条消息:你还回来么?然而我并不知道家人向我隐瞒了姥姥被撞住院的事情,于是回复:当然不回去。后来姥姥去世,欣慰的是,家人都看得很开。再后来我得知这个消息,我本来以为会落泪,但是也受家里的影响,除了略微伤心以外就没有别的反应了。姥姥跟我的交集大概是小学的暑假以及初高中假期的一小部分,属于关系比较亲的一个亲人,现在觉得当时那条回复有点对不住家里的人。但是都过去一年多了,过去的事情就过去吧。

于是有时候跟别人谈到生死的时候,我说我不怕死,也不怕别人死,有点像电影里的英雄一样,很冷酷,但我知道,该来的,躲不掉,平时生活还是开心一点好。


小时候的我,很任性,任性到一个朋友欠了两块钱不还就直接与其断绝关系的程度(于是虽然小学是同班同学,而且家就住我楼上,但已经好几年没有联系了)。不敢说我以前究竟得罪了多少人,还好没人记仇到现在,不然我可能已经没有全尸了。然而我小时候也很脆弱,性格上更像女孩子,也喜欢跟女孩子在一起玩,甚至会在跟院子里其他的小孩准备用石块对战的时候,下意识地保护旁边的女生。以前的我,没有什么心眼,也没什么力气,于是经常会被院子里大一点的孩子欺负。每次他们打过来的时候,我没有回击,只是一味抵挡(毕竟打不过)。不知道为什么,当时没想着要告诉家长。一开始还会哭,但这也是磨练心志的时候。小孩子嘛,矛盾过几天就解了,于是又跟他们一起玩,后来又被他们欺负……现在想想,当时的自己好傻。但是我还记得,突然有一天,从那以后我再被欺负的时候,再也没哭过。

后来也感谢我的体格有了明显的增长,力气也大了,个字也高了,平时面部基本没什么表情,一身黑白灰的衣服,走路速度超快,看起来就像是“至少正常人看了不会随便去欺负”的样子。(往周围一看全都是比自己矮小的人,这感觉爽爆了!)此时我想的是,想欺负我的人,你们倒是来啊,来一个我打回去一个。

也不知道是不是小时候在惊恐中度过的缘故,我喜欢一个人在漆黑的晚上闲逛,喜欢躲在暗处静听周围的声音,走路的时候对周围的一切都高度警惕,到了一个新地方会先熟悉地形甚至探明每个摄像头的位置,身手比较敏捷可以高速翻过一般的障碍和墙,善于隐蔽自己,对自己周围的每人建立一个数据库……最后一点我之前一直以为是当了主任之后才有的buff,因为我可以说出许多管委、部长和干事的论坛id、学院以及宿舍楼栋号,然而现在才发现不是这样,我从很久以前就开始尽可能地记忆周围的一切事物,按照人和事索引起来,现在只是恰好触发了这个技能罢了。我现在可以说出一个几年不见的、之前并不熟悉的同学跟我的各种交集。只能说,如果我去当特工的话,一定是个不错的材料。其实我是有两个性格,你们看到的我,都是被我尽力隐藏了负面情绪和许多思维之后的结果。然而现在有一个人却可以看到真实的我——不是说我把前文所述的性格都展现了出来,而是在她面前,我这些性格都消失了,只会一心一意想着旁边的她。好了,再说下去就成秀了,这个话题就先打住吧。


这一段可能会非常长,大家请做好心理准备。

在技术方面,我收到过的最高的评价就是:南航计算机系就靠你和XXX撑着了。平时别人对于我的评价无非是一个大神啊、比赛拿过奖啊之类的,当然我觉得更多的还是这个:他会修电脑,你找他就可以了,23333。

我接触电脑并不算早,大概小学三年级吧,家里花了4k多买了一台台式机,配置并不算高,运行的XP。我并不知道电脑是个多好玩的东西,然而我就是喜欢乱折腾,例如改一改文件,看一看系统设置之类的。记得最喜欢玩的是word和ppt(当时版本是2003),在里面乱打字、乱改样式然后保存(记得我把新概念英语的一段文字输进ppt之后,加了一堆特效,全都是打碎玻璃的声音)。当时有的同学家里的电脑都可以上网了,他们带我玩过一些游戏,我自己也想玩,就去借了游戏盘来安装。然而我爸是不希望我玩的,而且电脑其实当时是归我爸办公用的,所以我多了个心眼,装完之后把快捷方式删掉了。然而大家应该都经历过这件事:玩的正开心,家长回来了,于是肾上腺素一涌上来,果断踢电源装作写作业的样子,之后电源再次接上的时候露馅了。于是我爸给电脑设上了密码。我的“非技术性”破解过程如下:首先给我爸说我要用电脑看新概念英语的视频,我爸输密码也不太会遮挡,于是被我看到了,是他身份证的后六位。之后第二次被抓,我爸多了个心眼,输密码的时候不让我看,然而我听着键盘声响了十下,于是后来就去试了试身份证后十位,然后就进去了……

其实我在想,如果当年我爸能稍微正经一点,我现在可能就是个黑客了。

小学的时候班上统一订杂志(自愿的),同桌订了一套《少年电脑世界》,我当时几乎把里面的全部内容都记了一遍并试验了一遍,包括但不限于Office的特殊技巧、XP系统的常用配置、常见硬件的拆解、蓝屏原因及修复……

关于编程,其实也是一个偶然。六年级的时候在《少电》上看到了一个游戏制作软件:RPG Maker XP(简称RMXP,当时应该还是1.01版),然而我装上之后只会玩地图编辑器,于是觉得没意思就删掉了。初一的时候,有个玩的很好的同学给我说,那个软件出新版了(其实是RPG Maker VX,完全不同的一个软件,当时的RMXP应该到了1.02),于是我又试着搞了搞。由于智商的略微提高,我学会了事件编辑器、素材编辑器(甚至由于素材的缺乏,我又自己摸索PhotoShop、Flash、WaveCN等软件)以及内置的数据库(包含了角色、敌人、装备等内容的可视化操作界面),唯一不能明白的就是那个用Ruby写成的脚本系统。我开始在百度知道上回答各种关于RM的问题(回答了一百多个问题之后采纳率依旧有50%的人不知道有多少,我就是其中之一)。

20160202001915

这是我当时的百度账号。当时的百度知道还是个很好的产品,我也在上面结识了两个同道中人(刚才又去看了看他们的资料,很高兴有一个人也成了程序员),其中一个人给我推荐了66RPG这个网站,关于6R,它的历史实在太复杂,就不说了,只能说在那个大部分会员是野路子的时期,我一个初中生可以虐掉许多人。里面提供了好多可用的特效,只需要复制粘贴,然后加到脚本编辑器里就好了。但是我想写自己的东西啊!于是尝试着改。视线先瞄准了高亮成紫色的字符串,把“新的游戏”改成“新的旅程”,运行成功之后简直激动!后来我发现其实软件自带的Ruby教程还是挺不错的,我又开始模仿着系统自带的代码来写新的功能,不得不说,那是我最自豪的时期之一。由于家里的电脑实在太差,于是我开始尝试优化,别人的代码在我这里只有个位数的FPS,我的代码可以到15FPS(后来接触了当时流行的笔记本之后才发现,我的代码在笔记本上基本都是满帧60FPS的)。后来6R关站了,现在又重开,还多了个自创的橙光游戏制作工具,我还会一直关注他们的。

对了,不得不说,对于我做游戏帮助最大的一个游戏就是《全新世纪》,当时只有前两部(现在已经有3了),我的好多技术、剧情设定,甚至地图绘制技巧都是从那里学过来的。刚才特地又去搜了一下,由于1和2我都玩过,因此看到星闪、苍刃等熟悉的名字和立绘后,还是很激动,真的又回到了初中的时代。没错,那个时候,这两部游戏就是我最大的信仰。

初三开始自学VB,写过一些小程序,例如圆的位置判定、根式化简、函数绘图之类的,这个就不提了。

然而我对于RM的情怀还是太深,初中已经做完了两个游戏(其中一个叫《遗忘天际I》),还有一个做了一半(《遗忘天际II》),留到了高中。我们高中有一个校本课程,就是学校自己开的课,我报的是电脑制作。后来发现老师讲的Flash和PhotoShop都太简单,于是在课上继续做游戏,被老师发现了,于是给我的班主任和家长打电话,第二天(周五)我就被安排到了信息竞赛的小组里,以后的校本课程就用于竞赛训练了。当然,临走前我还帮老师讲了两节Flash的课。

关于竞赛的故事,如果大家觉得下面的文字不够详细的话,可以看我QQ空间里带有日期前缀的日志。我没有删日志的习惯。

我刚参加竞赛的时候,别人已经学到函数了,每周六有一次定期测验,于是周五晚上我抱着一本绿书对着电脑使劲学Pascal,第二天拿了160分——第一题满分,第二题是归并排序所以没思路乱写得了30分,第三题约瑟夫问题乱写又30分,第四题“谁拿了最多奖学金”是NOIP原题,但我对Pascal的字符串处理并不熟所以没得分。后来遇到了一个网名为skywalker_q的学长,刚好我对星战也很有兴趣,对里面的Anakin Skywalker也很痴迷,于是他建议我改网名为skywalker_z,这个网名沿用到了现在。他对我的帮助很大,我的信息竞赛前半段基本上是他带的:强迫我在各种题库上刷题(这直接导致我的刷题量大增,有时候别人问我这个题怎么做,我说这不就是XXX题库的原题么)、主动给我们培训/测试,对我们真的很好。高二后熟悉了Andy学长(以及他的妹子),跟着他在东校区进行更难的培训。但是由于种种原因,本来被认为是“全校只有两个能拿省一等奖”其中之一的我,在600分的比赛中只拿到200分,然而我不服,想参加省队选拔,还去水了一趟APIO和CTSC,在这半年里,我认识了一堆牛牪犇,然而这并不能阻止我省选挂掉(然后那堆大神都不理我了T_T)。后来高三那次NOIP,估分480然而只有300,省二第一。后来参加了南航的自招,然后就来到了南航,学了信息安全。所以我高中的这段时期,基本上是被各路大神碾压,自己只能不断提高,再提高。

到了大学才知道竞赛生跟普通学生的差别有多大。C++的考试我提前一个小时交卷,顺便帮老师指出了试题中的逻辑错误:复制构造函数的参数没有引用,导致不带参数的构造函数执行,函数中那个存储着对象总数的静态变量会+1,导致最终总数统计不正确。而这个错误,在竞赛生的眼里,只不过是扫一下就能发现的错误罢了。由于长期的训练,我们可以做到在一两分钟的时间里手打快速排序(这个我可以做到闭眼或者关屏幕),五分钟内手打SPFA,十分钟内写完线段树,而且都是一遍编译通过,然而光是第一点,普通学生就已经很难做到了。据说有人可以十五分钟写一个树套树,对于这点,我只能望尘莫及了。

所以,同学们,你们看起来技术上很难的比赛,在我们看来可能就是过去玩一玩而已。对于我们来说,ACM才是真正有技术难度的比赛。前一阵合荣杯的赛题,我看了一遍,十道题目,其中七道我在三分钟内出了思路,两道花了十分钟出思路,还有一道没解出来。我不敢说我能在五个小时内把那九道题的代码都敲出来,因为我已经三年多没有接受过专业的训练。然而竞赛思维作为一个能力,是不会消失这么快的。


从幼儿园到高中,我一共当过两次班干部:初中物理课代表与初中微机课代表。小时候我不明白这有什么意义,也对自己的能力没有信心。大一一开始也是,除了一开始稍微主动了一点,当了一个没什么卵用的寝室长以外。由于一些原因我加入了纸飞机技术部,而且凭借以前的编程基础和领悟能力,很快就把其他干事远远甩在了后面:第一次作业被评价为炫酷(虽然现在自己看着烂得要死),第二次作业我是唯一一个完全兼容各种浏览器而且没有被打回去重做的人,寒假作业我自己都不信是我自己能写出来的,稍微不谦虚一点地说,目前的部长们可能刚超过我大一寒假的水平没几个月,而且是在我的培训下(我当年接受的培训质量就不多说了)。于是好像因为技术原因我不得不成为部长,这也是我第一次当一个正规的学生干部,毕竟纸飞机在南航是一个校级学生组织,跟校会社联等其它八大组织平级(现在一共有十个)。大二一年帮纸飞机写了不少代码,也出过不少力,后来换届的时候我成了主任。具体是如何决定的我不知道,当时去竞选这个主任也没有走太多的心,这可是一级学生干部啊……以前的主任大多是活动和外联的,并没有服务器权限(估计有了也不会玩),我这一个搞技术的当主任,那就相当于有了纸飞机的全部权限。

不得不说,我这人有个比较奇怪的品质:平时对什么都不在乎的样子,真的自己到了那个节点之后,居然就这么轻车熟路地上手了。然而这么多年我都没有什么职位,所以直到现在,我这个主任还是没有什么主任的气场……在外人看来依旧是个程序员。


机缘巧合,我在大学遇到了一些小伙伴,他们之前是竞赛生,现在经常交流一些技术问题。2014年12月我跟另外两个人参加了南京的Hackathon,之后一个小伙伴把我介绍给了七牛和暴漫的人,在寒假我给暴漫写了两个demo(最后好像没有用上?不好意思……),那是我第一次接项目拿到钱。我也认识了Coding.net、SegmentFault等网站以及里面的一些人。大二二月和五月跟七牛里人称“书记”的前辈谈了一下,然后他说了一句话:“等你考试完,再来上海看看呗。”于是大二暑假就去七牛实习了,在这期间书记对我很好。后来部门变动,不允许远程办公了,我当时又在学校,只能无奈选择离职。现在看来,我在七牛学到了很多东西,不仅限于技术,还有如何与同事相处,甚至对面的道哥让我明白了如何做一个技术型的管理人员。

记得很久以前我给家里说过,去一些小公司实习的话,如果那边的水平还没我高,当然是先问薪水了。然而不管是暴漫、七牛、SegmentFault还是Coding.net,我没有什么要谈薪水的念头,因为我知道,在这些地方,我肯定能学到不少的东西。

目前我还处于失业状态,但是我现在是大三,还有半年的时间。我现在要做的就是不断提高自己的水平和项目经验,之后去一个能让自己学到更多东西的地方。


关于感情,由于涉及到一些人不方便,所以就不细谈了。只能说,我现在过得很好,每日一秀,周围有一堆单身狗,也有几对时不时教我如何更丧心病狂秀恩爱的小情侣。


嗯,只是一个快乐的程序员罢了 ^_^

版权声明:除文章开头有特殊声明的情况外,所有文章均可在遵从 CC BY 4.0 协议的情况下转载。
上一篇: 纸飞机服务器环境搭建笔记
下一篇: NUAACTF 2016 官方 Writeup

这是我们共同度过的

第 2635 天