2018 年终总结

早在十月初的时候,我就在计划为我的 2018 年进行年终总结,因为早就预感到后面的日子会全部被学位论文吃掉。后来因为各种原因,一拖再拖,还是很晚才完成。相比于之前几年,今年格外的忙碌,可能这也是步入社会后的常态了吧。作为学生时代的最后一年,2018 充满了回忆。今年同去年一样,按照时间顺序来进行总结好了。

一月份,过年前的一个月,每年的这个时间由于考试基本结束,新年也还没开始,因此往往有着大量的空闲时间。正是因为这样,我也特别喜欢在这段时间开一些 side project 的新坑。不过今年一月份我的大部分时间都投入到了 sjtug/SJTUThesis 项目上。这个项目是由 weijianwen 学长维护的交大 XeLaTeX 模板,我在本科的时候有用过一次,也有过很多次想帮助维护和完善项目的想法。直到去年的 12 月份左右,项目被转移到了 SJTUG 下,我和 AlexaraWu 成为了新的 maintainer,于是开始了为期一个月的密集更新。在那段时间里我们为模板更新了编译命令,更换了一些包,添加了 Travis CI 和 Appveyor 的 CI 支持,更新了 ShareLaTeX 上的版本,增加了使用 Docker 容器进行编译的支持等。这一项目现在也在帮助我更好地完成学位论文的写作。

一月十六号的时候,我与我的女朋友,学帅,以及来自美利坚的刁宝乐同学组成了老年团,前往成都进行了为期一周的考察,考察内容主要是成都市内各景点的风景和各类餐厅的食品安全问题,我们亲切地把这次考察称为,旅游。我们一起去了不少地方,也吃了火锅。不得不说,成都的火锅与重庆的相比,辣度有了较明显的下降,我个人觉得是要更好吃一些的。期间我们也一起探讨了马里奥赛车的驾驶技巧,整体而言我是比较喜欢成都的,希望之后有机会能够再去一次。

大龙焱油碟与火锅
博物馆里的展品
草堂里的他

二月份的时候,我正式加入了 Kubeflow 社区,参与维护和开发 tf-operator,也就是 TensorFlow 分布式训练在 Kubernetes 上的控制器。尤记得,我和彼时仍在才云科技DjangoPeng 一起在讨论 Kubeflow 未来可能的 scope 以及发展,现在来看那时候想做的和现在 Kubeflow 社区做的已经近乎是两个东西了 hhh

三月份回到了交大,正式开始了学术论文的写作。如果用一句话来形容这段时间我的感受与心情,痛不欲生可能是比较贴切的。我本身对于研究性质的工作还是挺感兴趣的,但是对于论文写作实在是提不起兴致。每天到实验室坐在电脑前打开 VS Code 第一件事就是回想昨天被支配的恐惧,随后带着恐惧开始新一天被支配的生活。还好那时候有我的女朋友陪在我身边,能够在论文写不下去的时候感受到生活的善意。三月份的时候因为想着后面可能要投简历准备实习招聘与面试,因此开了一个小坑 dyweb/awesome-resume-for-chinese,适合中文的简历模板收集向的 Repo。既然是坑嘛,后续自然也就疏于维护了。

四月到了,由于实验室与才云科技的合作项目还落在我肩上,不能因为论文的事情耽搁了,于是又重新开始为 Kubeflow 的项目贡献代码。在这个月,社区又接纳了新的项目 katib,基于 Kubernetes 的,架构与 Google Vizier 类似的超参数学习系统。我在和 ScorpioCPH 一起为 tf-operator 实现 v1alpha2 版本的 API 时,也为 katib 做了一些贡献,主要是架构方面的改动与测试的完善。在此期间,我为 katib 写了一篇安利性质的文章,读者寥寥。同时我在今年担任了 Google Summer of Code 活动中 coala 社区的导师,我负责的项目是 coala Language Server。在四月的时候我主要还在宣传项目,四处拉拢对 Language Server Protocol 或者 coala 感兴趣的同学来申请这一项目。最早的时候我是觉得 HKU 的 li-boxuan 同学是非常合适的人选,对开源非常有热情同时水平也很高,而且是大陆过去的同学,会说中文。但后来因为一系列原因他去做了其他的 GSoC 项目,而我的项目交给了一个来自印度的小哥 ksdme 来实现。于是开始了英语苦手之旅。

四月份中,我收到了我的第一份,也是唯一一份实习的 offer,来自阿里巴巴系统软件部。面试官 Allen Sun 学长与叔同前辈给到的面试体验特别好,在 Allen Sun 学长得知我因为各种原因不能去实习后,还在积极帮忙协调能否采取远程与 onsite 结合的方式完成实习。真的是一个可以让人感受到尊重的组,可惜后来实在是因为太忙未能成行,各位学弟学妹未来可以考虑一下 :-)

五月份是 2018 前半年中最忙的一个月,这个月在 GitHub 上我一共有 146 次提交。一方面,我需要继续跟进 tf-operator 的实现,另一方面 GSoC 的项目我也需要定期与我的学生进行会议,保证项目的进度。最后还要兼顾自己的学术论文进度。这个时候很多同学已经开始准备实习了,而我五月份六月份基本是板上钉钉地要留在实验室里完成学术论文的写作工作和与才云的合作项目,也就是 Kubeflow 社区的实现与维护工作,因此也就在这时候决定了放弃暑期实习的机会,比较可惜。花开两朵各表一枝,GSoC 与印度小哥合作的那段时间,是在 2018 年里让我印象非常深刻的经历,他让我深切感受到了工程师对项目进度的预估有多乐观。以前自己赶 Deadline 的时候因为对自己的水平有信心,所以没感觉有多惊心动魄。换到自己做项目管理者,听到小哥在 Deadline 还有几天的时候拍着胸脯保证能把一个月落下的进度补回来的说法,心中五味杂陈。这大概就是还债吧,还好最后结果不差。现在是真的理解项目的风险管理与进度管理重要之所在了。

六月十五号是学术论文的 Deadline,所以前面的十五天基本都是在与老师交流论文写法的过程中度过的。这里也需要感谢实验室的蔡老师与任老师的指导。在这段时间里我的论文写作水平得到了很大的锻炼。不过我也发现,自己实在不是发论文的材料,主要的表现是不会讲故事,也不会套应用场景,不知如何把一件事讲的具有论文范。可能我的学术生涯也就到此结束了,发论文这样的事情,体验一下就好了,这不是我应该呆的世界。六月份的时候还开了一个小坑 dyweb/SJTUThesis-Markdown,尝试了一下能否用 RMarkdown 写毕业论文。

这里可以多聊下我对论文的看法。在准备论文的这段时间里,我读了不少相关领域的论文,加起来估计要有一百篇了吧。再加上本科与研究生一年级时读过的其他领域的论文,加起来大概有两百到三百篇的样子,真正能让我记在脑子里的少之又少。我认为一篇好的论文,要关注这么两个方面。首先就是落地的可能,当然这不是在否定落地困难的论文的价值,只是我个人觉得能解决实际问题的论文才是对我自己有帮助,对我来说值得读的。其次就是验证的充分性,我感觉这是区分顶会论文与其他会议论文的一个非常重要的方面。在看过的顶会论文中,大部分都有较为完善的验证,能够让我相信是真的可以 work 的。谷歌的论文之所以受欢迎,我觉得有很大的论文就是因为在其生产环境中经受住了考验,天生自带 evaluation 信得过的 buff。至于其他的诸如 idea 是否新颖优雅之类的,年轻的时候会关注一些很亮眼的 idea,现在已经渐渐不感冒了。

七月份的时候论文的结果还没出来,因此我的主线剧情是 Kubeflow 和 GSoC。支线剧情是准备简历以及校招面试。整个七月份零零碎碎下来刷了大约有五十道 LeetCode 算法题,难度大约集中在 easy 与 medium 中。我个人实在是反感算法题,就如我不喜欢写论文一样。我觉得把时间花费在这上面只为了找个工作着实有些不划算,于是刷的有些少了,在校招的时候也有点自食苦果的感觉,不过再让我选择一次我估计还是会选择这样。七月份我还做了一项额外的工作,就是试用国内外各个机器学习平台的产品。最终写了一篇博文:《机器学习平台漫谈》,亦是反响平平。也是在七月份的时候,我收到了论文投中的通知。那天真的印象深刻,我正在电脑前看 Kubernetes 中有关 DaemonSet 相关的代码,任老师走过来说论文中了,顿时觉得心头一个石头落了地,再也不用提心吊胆担心毕业的事情了。

八月份到了,进入到了暑假中。八月刚一开始,我就开始了校招的面试,之前也有写过一篇文章讨论各个公司给我的面试过程的体验,这里就不再赘述了。八月里代码写的很少,只有一部分对 tf-operator 的维护工作。因为相当长的一部分时间我在面试,与旅游中度过。

我和我的女朋友在八月十号的时候去了日本东京一带,体验还不错,就是花销有点大。在日本的旅游应该会在 1-2 月份的时候专门写一份游记,这里就随便放一些照片预热一哈吧

羡慕卡丁车
送命题:哪个更可爱
扎心广告
这是在看莫奈么
很贵的日式房间里的椅子
第一次坐飞机,怎么装作经常坐的样子

九月份,到了捉促织的季节。我开始着手实现 caicloud/ciao,这是一个 Jupyter 的 Kernel 实现。通过 Ciao,用户可以在 Jupyter Notebook 里直接发起 TensorFlow/PyTorch 分布式训练任务。这是一个比较实验性质的工作,花费了我大半个月的时间,以后会通过某种方式集成到 Kubeflow 社区中。除此之外,在这个月我也开始为我在 KubeCon China 2018 的 Session Talk 做实验方面的准备,感谢才云提供的实验环境。九月中,我在实验室里换了一个靠窗的位置,我把它称作海景房座位。可惜换了之后没有几天好光景,就进入了时常下雨的天气。九月的某个周末,我和女朋友一起去了混凝草音乐节,这也是我们第一次一起参加音乐节。两个肥宅最后遭不住阳光的暴晒,选择了坐在草地上玩王者荣耀,太过真实。

十月份,我和女朋友一起被一款游戏圈了粉,那就是《太污绘卷》。我俩在国庆的前三天里怒肝了 38 个小时,基本上每天起来除了吃饭洗澡就是在其中练功、捉促织、生孩子、选道侣、养家、看 NPC 的八卦。可能是肝的有点太过了,国庆过后就再也没打开过这个游戏,目前它也是抢先体验版本,希望等正式发版本后能再次带来惊喜。在十月,肉肉入手了乐高的哈利波特大城堡,这是乐高历史上第二大的城堡,总共有 6000 多块,拼好之后目测占地都要五平方米,希望以后家足够大吧。十月份我的工作主要还是在 caicloud/ciao 上,另外在十月份我开始了学位论文的未雨绸缪,在努力完成文献综述一类的工作。

十一月份是下半年里最忙碌的一个月。这个月里我基本停滞了对 Kubeflow 的关注,专心处理学校里的事情,其中包括学术论文的演讲,KubeCon China 2018 的演讲,学位论文的写作。学术论文投的是会议 ICA3PP,因此需要到场进行英文演讲。在 KubeCon China 2018 的会议上,我与思科美国的高级工程师 Xinyuan Huang 进行了一个关于 Kubebench 的分享:对 Kubeflow 上的机器学习工作负载做基准测试。因为两件事在时间上有重叠,因此我在进行完在 KubeCon 上的分享后立刻赶去虹桥机场飞去广州参加论文的会议,当天到广州时已经是凌晨 1 点了。在广州的那几天,因为学位论文进度有些落后了,因此基本大部分空闲时间都在写学位论文,只有一天晚上去广州一家比较有名的店里吃了一次鱼生。从广州回来的时候,带了一些老婆饼和其他的糕点给实验室的同学们。本来以为带的够多了,结果没两天就被吃完了,我自己只吃到一块 = =

KubeCon 演讲(感谢拍照的義洋同学)

在十一月末的时候,我与我的女朋友又迷上了另一款游戏,分手厨房2。这款游戏相比于太污绘卷更零食向,是休闲游戏。随着年龄的增加,我对游戏的审美也发生了变化。之前我对竞技类的游戏,比如王者荣耀,三百英雄等,更加感兴趣一点。自从本科时在 B 站关注了王老菊逆风笑等独立游戏的 up 主后,我对游戏的爱好逐渐偏向了像素风的 roguelike 独立游戏,这样的游戏往往具有比较高的可玩性。还有就是类似于 Minecraft,太污绘卷这样自由度比较高的比较沙盒向的游戏。现在也越来越可以 get 到如分手厨房2这般休闲游戏的点了。我的 Steam ID 是 gaocegege,欢迎一起玩耍。

十一月我也正式确定了毕业入职才云科技,主要关注在基于 Kubernetes 的机器学习工作负载支持上。希望与各位同行多多交流。十二月估计主颜色会是学位论文,因此会非常忙,所以提前把总结写好发出来,在这里也提前祝各位同学新年快乐 :-) gaocegege 终于眼看着就要毕业了!

最后,来一波图片攻击吧!

俯瞰上海纽约大学
贴纸的遗照
第一次参加同学的婚礼
才云的吉祥物与 Minecraft 的蜘蛛玩偶

往年总结(公开处刑)

License

  • This article is licensed under CC BY-NC-SA 3.0.
  • Please contact me for commercial use.

评论