- “徒劳之举,你为什么要坚持?”
- “因为我必须如此。”
暑研
套磁
20年寒假的疫情期间,基本确定不可能去美国暑研,但线上暑研的机会还是要争取。对着CS Ranking给不少教授发邮件,主要是系统,编译方向的,不知道是清华邮箱没收到还是确实没有回复,最终收到回复并交流过的教授屈指可数。那段时间没什么事做,人也非常消沉,每天早上打开邮箱看一下,对回复既期望也害怕,我认为没有这封推荐信我就不太可能找到国外好一点的项目,但也认为自己没有必要的能力,害怕和教授进一步交流。
有次一个教授的几个学生和我约早上的面试,但那天我完全忘记了,一小时后在邮箱看到一大堆询问的邮件。第二天再来一次,我表现的很差,说话磕磕巴巴,对他们的方向也不了解,面试后就一点联系都没有了,我不敢也不想再发邮件问。这基本上是那段时间的一个缩影。
最终确定是UChicago的Prof. Shan Lu,做系统,程序分析方向,她回复说可以申请官方的暑研项目,我就去申请了。
暑研
主题是分布式系统中的数据格式bug。一头一尾两篇日记,基本可以概括我的感受。没有什么例外,这次又失败了。
他们好像并不是很在乎我的进度,本来就和这些学生没关系,又不是为他们争取推荐信。跑跨版本的实验,基本能复现结果。他们让我看看是不是分析工具汇报的问题引起的,但代码量实在太大,完全没有头绪,我想加点log。首先花了很长时间才成功编译,Ant这套工具链真的是反人类,每次都能遇到新问题。编译好了没法启动,我问为什么,目前还没有结果。他们让我在服务器上跑,又遇到Docker的问题,我问他们,应该是在他们的工作时间,但是一觉起来,也还是没有回复,这应该不是很难的问题吧。我真的担心自己能不能做出点东西,现在卡在一个任务上就没法做下一个,完全是在浪费时间。 - 节选自《2020.07.04》
整个下午都在写,中间太困在床上躺了不到半小时,六七点才写完,还要写报告。肚子非常饿,而且感觉自己做的事情很无聊,真的做不动。开会时别人先讲二十分钟,教授问我有没有要讲的,我就讲了,但完全没说清楚。她好像很不满意,一直强调我们要分析general的情况,而不是关注这一个bug。我觉得这就是唯一的情况,但没法用英语表达我的想法,很难受,就一直听她讲。终于说完,这好像是最后一次会,我长舒一口气,折磨终于要结束了,之后还说有任务什么的,我没听清。结束后一个学长还找我聊了一下,安慰我,说我做的工作还是有价值的,我其实也没什么意见,因为我知道我做的确实是没有价值。 - 节选自《2020.08.26》
选择
我说过很多遍,我从来没有在研究项目上取得过任何成果,暑研进一步验证了这个想法。从之前的种种经历来看,如果一定说我有什么过人之处的话,应该是中短期的记忆力,这简直就是为考试而生的能力,我能考上清华应该也是因为这个能力,但我不认为它在研究或工作上有什么意义。即使是考试,有些需要智力,想象力,或者托福口语,我的能力也没什么用。
返校前我纠结了几天做出最终的决定,本校硕士,本校博士,国外硕士,国外博士。我不太记得那时我为什么排除本校硕士,这看起来好像是最容易的一条路,也许是觉得这样浪费了我的成绩,或者是害怕短短几年后就要面对中国的社会,很多我一直觉得很遥远的东西一下子涌到眼前,我接受不了。跟清华几个教授联系问有没有位置,但我心里也清楚博士名额应该早就确定了,别人都是早早定下明确目标并为之努力,我这几年都干了什么。国外博士更不可能,在国内都做不了研究,凭什么在国外就能做。我完全无法想象自己用英语对着一群教授讲解和辩论。
只剩下唯一的选择,国外硕士,之后大概会留在国外继续工作。但至于那时具体怎么决定,要取决于我看到的另一个社会究竟是什么样的。
申请
托福
听说很多学校要求入学时有效的托福成绩,所以九月末考了托福。我本来想线上考,可以省去很多麻烦,复习时间也会多一点,但我妈一直坚持说也许有学校不认网考,我确实不能肯定,而且出去考试能顺便旅个游,所以勉强接受。线下考位很难找,我写了个简易的脚本来爬,GitHub上有些开源的查考位工具,但速度太慢。放考位那天爬到一个宁波大学的考位,准备一个多星期,去宁波考试。
周末计划去六教复习托福,也确实去了,但是效率低的难以形容。每天主要的时间,可能都花在百无聊赖地翻GitHub,知乎,找没人的教室上面,一天可能只做了一个阅读和一个听力。我纯粹是在打发时间,或者说是故意浪费时间,可是时间真的很多吗?我感觉以前那个我的状态,再也找不回来了。大一我可以坐在六教一整天,只是看数学分析习题,甚至不是在考试之前,只是平时的积累。现在做一两题就非常烦躁,做不下去,急切地想放松。 - 节选自《2020.09.20》
成绩30+28+24+21=103,比上次还低,这也是应该的,本来准备就没有上次充分。主要问题是作文只有21,也许是因为我用的还是19年寒假用的模板,可能是被检测出来了吧。这种场合让我自由发挥是不可能的,我只能依靠记忆力,记的倒是没错,可惜记下来的不是什么有用的东西。
考完一个人在宁波转了两天。
在路上想着,这是不是我以前在追求的生活呢。高二下期末考试后去南京玩,短暂地体会了自由的感觉,回武汉后坐在回学校的地铁上,心中长久没法平静下来,这样自由的生活和现状格格不入。后来设法重新适应和习惯了高中的生活,到现在这么久也没觉得有什么不对。现在我又一次自由地在城市里闲逛,找到什么有意思的就凑近看看,但心里也知道这样的生活不可能永远持续下去,不管未来是更好还是更坏,都必须往前走。 - 节选自《2020.09.27》
选校
在中介指导下选了二十多所学校,因为我害怕,很多学校看起来都差不多,既然申请了一个,为什么不申请另一个呢,万一最后只有没申请的那个有机会录取呢?我完全没有目标,听起来耳熟的学校就申请吧,甚至那些学校在哪我也不知道,我到现在都分不清楚江浙一带哪个城市是哪个省的,要我了解美国的地理实在有点强人所难。选了两所英国的和两所加拿大的作为保险,以免美国整个出问题。我对欧洲那些国家没有任何好感,现在感觉即使只有英国的录取,可能也不想去。
网申
做申请相关的事情我都很消极,按照我看到的说法,我能准备的一切材料似乎都没有太大意义,最终还是要看教授的推荐信和已经无法改变的成绩。因为疫情,我最引以为傲的GRE成绩在很多学校都是optional,甚至直接说你交了我们也不看。也许也和疫情有关,申请时才发现多数学校都只要申请时有效的,要求入学时有效的那几个不申请也没太大损失,这意味着九月的托福基本也算白考了。
所有这些事情,每时每刻都在提醒我,我做的一切都没有意义。
没有意义也得做,毕竟材料总得交齐。几乎所有学校都是拖到接近ddl才提交,申请季从ddl最早的12月初拖到2月。
在路上悠闲地走,顺便看看比赛,Xiaohu节目效果实在太好了。这是旅游的最后一天晚上,路边响起纯音乐,旁边的西湖吹来凉风(只是随口一说,不要纠结风向),脑中浮出四个字“完美谢幕”,这确实是个不错的结束。但这时收到中介的微信,发来几篇改好的文书,我早把这事忘了,原来还有些ddl 1.15的学校没有申请。只能回宾馆去看文书填申请,这悠闲就戛然而止了。还要做Columbia的video interview,今天才发现有这东西,也不知道允不允许ddl后做,不敢冒险。 - 节选自《2021.01.14》
三维
- GPA: 3.83/4.0 | 8/205
- TOEFL: 30+30+23+25=108,对于要求入学时有效的学校提交103那份
- GRE: 166+170+3.5
清华在我们这届中间进行了GPA改革,A和A+保持4.0,其余等级+0.3。这对我不利,因为我对感兴趣的课投入很多时间,当然也可以说是很卷,基本都是A或A+,我有10个A+。但不感兴趣的课就一点时间也不想花,比如四节英语课,还有D+,C-级别的体育课,这些课很少有能到A-的。知道这个改革时我沮丧了相当长一段时间,这应该是我大学的转折点之一,在此之前我总觉得未来是充满希望的,但是看到我珍视的东西别人可以如此随意地改变,我第一次意识到“我做的一切都没有意义”,后面就都是下坡路了。
排名8/205是按照旧算法得到的,按照新算法我大概排在16(非官方)。我们这届保研仍然使用旧算法的排名,我后来问辅导员,确认教务提供的就是新算法的GPA和旧算法的排名。
教务不会提供新GPA的排名,即使是在申请出国的时候。所以也许我可以同时以这个比较高的GPA和比较靠前的排名来申请。如果在GPA改革的时候我知道这一点,当时是不是就不会那么失落,后面的故事是不是又会不一样? - 节选自《2020.09.08》
现在国外大学都越来越不重视GRE,这就对了,我早就知道我的能力在未来没有用处,不应该往这上面考。大二下准备GRE,每周末去上次课,但一直没有很用心地背过单词,一学期也没什么长进。期末只有两门考试,就在两周内把单词书好好地背了一下,后面就很简单了,单词都认识就不需要做题技巧。当然,现在我应该已经忘记其中90%以上的词了,这是只对考试有用的中短期记忆。作文这分数应该算比较差,我用的还是托福模板,差也正常。
文书
CV
用n+e的CV的模板做了一个。写了堆成绩比较好的课程,还特意写Junior Year Rank: 1。没办法,成绩是我最大的优势,必须仔细描述。放了几个项目:编译比赛的作品 TrivialCompiler,我造的Parser Generator lalr1,图形学课的光线追踪器 ray_tracer,这种课程项目我还真敢往上放。
放了三段研究经历:
- 从2018.10到现在都算跟着cy在做,我的成果应该只有decaf-rs和编译助教的经历,我对rCore的贡献非常小(如果有的话),但我还是写上去了
- 暑研。如我上面描述的,没有任何成果
- 跟着中科院某副教授实习一个月,没有任何成果,这我也真敢往上放
还写了答疑坊志愿者的经历,不然实在填不满一面。
PS
大概就是讲讲做过什么,心路历程,为什么选这个学校之类的。
- P1: 我为什么对系统方向感兴趣
- P2: 跟着cy的研究&助教经历
- P3: 编译比赛经历
- P4: 暑研经历
- P5: 未来规划,我想进工业界
- P6: 我很适合贵校,且对贵校的某课程/某教授很感兴趣
多数学校要求1k词左右。有些学校要求500词以下,就删掉P2,其余几段再简化一点。在中介指导下第一遍写好之后基本就没怎么改,只是语言上做点润色。不过每个学校写的课程/教授不一样,申请的主要工作量就是去学校网站找这个“某课程/某教授”,但也一直怀疑这种东西对申请是否真的有任何帮助。
有些学校还要求一篇讲diversity的文书,我没有什么diversity,就随便扯扯。讲高中做VPL,助教经历,答疑坊经历,说我希望用我的知识和技术帮助他人,这是实话,不过也算不上什么diversity。
RL
推荐信找cy,cwg和Prof. Shan Lu写的。cwg其实和我没太多关联,基本只是一个课程推,勉强和编译比赛有点关系。大四上我跟着zjd在实习,现在看让他写推荐信可能更合适一点,但是决定谁写的时候还没有做过什么事,其实也没什么可写的。
整个申请过程我最担心的就是Prof. Shan Lu的推荐信,我只问了能否帮我写推荐信,没加strong之类的定语。暑研前中期我们交流还是比较顺畅,但是最后阶段她对我的评价应该不是很好,因此我对她会给我什么样的推荐信心里完全没数。
多数学校都允许申请的ddl之后再提交推荐信,只有少数学校有明确的推荐信ddl。UToronto是第一批ddl的学校,推荐信ddl也很近,当时我好几次发邮件给cwg都没有回应,无奈只能加他微信,他说不好意思没看邮件,幸好我加了微信,最后赶在ddl前交了。
结果
前期记录的比较仔细,后期就很少关注了,我也懒得为写篇总结再去考证。
2021.01.08 收到UToronto教授的邮件,说想和我交流,但要先问清我要读MS还是PhD。我模糊地记得有人说UToronto不招国外MS,但还是回复MS,在我心中PhD是比全聚德留在国内工作优先级更低的选择。一天后收到回信,说培养一个国外MS要花太多钱,所以不考虑我了。虽然交的钱是浪费了,但至少传递了一个信息,我的申请材料没有太大问题,尤其是我最担心的Prof. Shan Lu的推荐信。
2021.02.13 REJ @ CMU MRSD 上午看到拒信,有个瞬间我真的想了一下如果全聚德,未来应该在哪里,但很快打消这个念头,现在即使是在清华应该也有不少只收到拒信的人,我不应该这么担心,这不是我能考虑的。
2021.02.13 AD @ CMU MSIN 下午收到MSIN录取,虽然不是正统的计算机系的项目,但我完全可以接受。按照25天前(2021.01.19)的设想发条朋友圈,分享这段歌词:
我是星
利剑开刃寒光锋芒的银星
绝不消隐
不回顾
永难再折返的故园的光阴
– 夜航星(Night Voyager)· 不才/三体宇宙
当然我得声明这“不代表本人想法”,不然该怀疑我有移民倾向了。
2021.02.25 AD @ UChicago 没有什么意外,也并没有很想去,只是因为暑研在这里做的,一封推荐信是找Prof. Shan Lu要的,觉得如果不申请会显得很奇怪。
2021.02.26 REJ @ CMU MCDS 前一天晚上和人聊天,剩下的项目里我最期待CMU剩下两个还没拒我的计算机系的项目,MCDS和MSCS,我觉得前者机会相对大一点,但也不大。遗憾的是一语成谶,早上醒来看到一封20分钟前发来的拒信。
2021.03.01 REJ @ Princeton 这是啥学校,我啥时候申请的?
2021.03.02 AD @ Purdue 这是啥学校,我啥时候申请的?
2021.03.02 AD @ Columbia 这是啥学校,我啥时候申请的?
2021.03.02 AD @ UCSD
2021.03.06 REJ @ CMU MSCS 至此申请的三个CMU SCS项目全部被拒。擅长考试的人已经太多了,尽管我很自信,我应该是他们当中相当优秀的,但也许整个群体都已经不被认可了。
2021.03.30 AD @ UCLA
可以开始最后的选择了,CMU MSIN和UCLA。为什么不是UCSD?因为UCLA我读着比较顺口,所以也许更有名。
我已经思考了好几天,在CMU MSIN和UCLA中做选择。第一反应更倾向于UCLA,我想去享受生活。翻了很久论坛,我寻求的并不是建议,而是认同。在各种比较帖子中,主流的言论都是不推荐CMU,比如MSIN的牌子没多好,找工非常卷之类的。这是我关心的核心问题,如果承受了更大的压力反而找不到好工作,只是学到些所谓硬核的知识,就像这几年我一直在做的一样,那实在没有什么意义,学来干什么,继续考试吗?
但我仍然没法做出最终选择,也许国内很多人都没听说过UCLA,如果是UCB就好很多。之前中介说它不招大陆硕士了,所以没申请,但我没验证过这个信息,现在报UCB offer的人很少,也许确实如此。突然想起2.20说的“我要为自己而活”,这样看是要不在意别人的看法,为了快乐轻松的生活选UCLA吗?依然不是,对于我来说这句话的意思和其他人理解的大概不一样。我个人能获得的物质和精神享受都非常有限,所以为了自己心理的满足,为了“为自己而活”,我必须时刻考虑别人的看法,这一点从未改变。
这确实是个艰难的决定,后来又想到,我努力这么久到底是为了什么,我如果要让最初的自己觉得这些努力没有完全白费,应该选CMU吧,它是四大,那时的我也应该听说过。其实四大这个概念我已经很长时间没有想到了,但对大学低年级的我这应该是清北级别的名词。 - 节选自《2020.04.09》
卷就卷吧,不然我还能干什么呢?
课程
之前的每次学期总结,课程都是唯一的主题,这次终于只是一个个副标题了。
嵌入式系统(A)
课程安排是前八周上课+后八周project,只给了一个project做。课的内容和project没关系,也不考勤,所以并没有去的必要,工作量可以说是相当小了。
这一年和前一年都是在树莓派上使用摄像头,前一年好像是识别人的石头剪刀布的动作,这次是用摄像头正对屏幕上的图像的一部分进行拍摄,计算拍摄到的部分位于原图像的实时位置。感觉这个简单不少,前一年的怎么也得用点AI的技术,这个调OpenCV就完事了。
最困难的部分是调摄像头焦距,给了我一个很好的生日礼物。
试着把助教的代码跑起来,准备先把树莓派的摄像头焦距调好,它是一个正方形孔中的塑料环,怎么调也扭不动,而且刮花了。问老师怎么做,他说有些凹槽可以发力,我再试一下,还是调不动,一用力,结果胶水脱落,把摄像头排线拆下来了。把它拆开,要拧开螺丝才能把摄像头装回去,一开始拧反了,后面改过来,螺丝几乎被固定死,而且十字被抹掉,完全拧不动,像是之前装电脑一样。后来勉强通过微操把相机装回去,这时已经十点多,一上午就花在这种完全没有意义的事情上面,而且还没有任何成果。 - 节选自《2020.11.08》
后续还是有点意思。有识别率和效率两个评价指标,但没有严格的评分标准。我完全不管识别率,只用最基本的OpenCV,因为这个指标太模糊,也不是我擅长的领域。效率就很容易衡量,响应越快,系统越小越好。把助教的Python版本改成C++,用musl静态链接,最后反复尝试,用Buildroot裁剪出一个能运行识别程序且尽量小的树莓派Linux系统。用到一些OS课相关的技术,勉强算是锻炼了点系统能力,至少我是这么觉得的。
最后检查时老师说我做的很好,把系统裁剪到8.1MiB,这是他见过最小的。
宗教学基础(A)
我差一个RW课,所以就选了,很幸运工作量不算大。如果放到现在,在CMU的环境中,非计算机相关的课都被认为是水课,是用来调节工作量的,但对任何时候的我,这些课都是折磨。
主要评分是小组展示和写一篇相关的小论文,课还是没有听的必要。
晚上就要做宗教学基础的展示,但是直到吃完晚饭ppt都一点都没看。六点多开始随便看了大概半小时,也没确定到底哪些地方要讲什么内容。我们第四组讲,前三组ppt上都只有很简短的内容,仔细看才发现他们在对着手机读稿子,我还以为他们真的能脱稿长篇大论那么一段。我认为这纯属个人风格,没有必要为了形式的优雅而追求简洁,展示的目的是传递信息,又不是炫耀演讲能力。
我们组在九点左右开始,调试ppt花了点时间,我第一个讲,基本没遇到问题,只是到最后感觉“可能”说的有点多。第二个人也差不多,但是后两个感觉做的连我都不如,讲的很卡顿,时间也拖的很长,ppt还经常出问题,没想到即使我准备的这么不充分,队友还是能更拉跨一些,我所在的组永远是做的最差的。 - 节选自《2020.12.06》
“我所在的组永远是做的最差的”,这个想法从小学开始伴随我到现在,之后的总结里还会经常提到。
论文就东拼西凑,从根本上就不可能指望我对计算机以外的领域投入热情,深入研究。
晚上差不多抄完改完,用PaperPass查重,结果是34%,比我想象的低不少,我几乎80%都是抄的。这个结果已经够好了,尤其是考虑到很多我引用《坛经》的内容也算重复,但老师应该不会介意这个。 - 节选自《2020.12.26》
网络安全工程实践(W)
配置环境太困难了,我怀疑我可能任何一次lab的环境都没配置好过,结果都是强行照着往年的说。现在想如果有14760的虚拟机,做起来应该会方便点,不必陷在毫无意义的尝试中。到退课前已经出的分数都不理想,还有些一直拖着不出,我担心成绩不好,也实在不感兴趣,就退了。
未来
宗教学课上想起来问zjd毕设的事。他说GN优化,还有Tensor Core优化。我对GPU编程还算有点兴趣,但是真的不希望毕设做这样的项目。我只能算刚入门,可能很多时间都得花在学习上,即使这样最后还是比不上本来就熟悉它的人,可能就是这导致结果不好。优化一个东西的性能,那要是我没能成功优化,这个毕设又怎么办呢?别人做的东西可能有一个明确的进度,要是到中间的什么时候我还一点改进都没有,要靠什么尚未想到的创新才能成功,我到底算做了多少呢,前面的那些工作有什么意义呢?我害怕,我对清晰地看到未来有一种执着的渴望,就是在现在一切都还没开始的时候,我就迫切地希望看到结果。 - 节选自《2020.11.20》
但是对安稳的未来如此看重的一个人现在要去面对完全未知的未来了。