From b2fe7ce009d2dc1b353d54522dd2024c64253db5 Mon Sep 17 00:00:00 2001 From: Yanxin Lu Date: Sun, 28 Apr 2024 18:06:55 -0700 Subject: [PATCH] vault backup: 2024-04-28 18:06:55 --- writing/博士经历/大纲.md | 102 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 96 insertions(+), 6 deletions(-) diff --git a/writing/博士经历/大纲.md b/writing/博士经历/大纲.md index 3caab94..688c15d 100644 --- a/writing/博士经历/大纲.md +++ b/writing/博士经历/大纲.md @@ -18,13 +18,14 @@ - 导师下达第一个项目,导师叫我上他的课 - 自动改分项目 - 还去顶级大会作了海报演讲 + - 刚开始还没有主动去申请专门给新博士生的海报演讲的资金,导师很不高兴,还好系里面新博士生都有2000块 - 特别紧张 - 没有跟chris还有导师沟通好谁去演讲,导致惹恼了chris,最后说清楚了就没事了 - 助教 - 新生活 - 一个人住,自由 - 朋友也不多,专注学习 -- peer eval项目,跟joe合作 +- peer eval项目,跟joe合作,第二年,同时在上机器学习课 - 在google web app上面搭建了给几千人用的网页,用来收集数据 - 基本上没有出什么大问题 - 有一个bug,不过因为logging足够,一个小时内就把问题解决了 @@ -32,9 +33,13 @@ - chris也指导我如何分析数据 - 我们发现如果有同行评分的话,打分的质量也会提高 - 投了KDD,没中,因为方法太简单 - - 接着投www,中了 + - 接着投www,中了,2015年5月份演讲 + - 这是我第一次演讲,导师让我先给各个老师演讲一遍 + - 准备的时候自我感觉良好,因为大学的时候上过演讲课 + - present给老师的时候一团糟,因为都10多分钟了,都不知道我在做的是啥,说的太抽象 + - 重新回去准备,导师给了大概的演讲模版,回去根据模版重新调整内容,给chris练习了一遍,基本上就没问题了 - 后来去了意大利演讲 -- 代码补充项目 +- 代码补充项目,第三年 - 导师帮忙想出来的一个算法,效果还不错 - 自我感觉良好,问了一下导师博士的进度,导师回复说不错。当时在惠水 @@ -44,6 +49,12 @@ - 然后自己还想了一些能让算法更快的小技巧 - 可是之后很快就遇到了瓶颈,不知道下一步如何走 - 开始考虑要不要从python换到C,因为这样会有更多的类型去让算法更快 +- 导师开始提出我的不足之处 + - 不主动去听别人的演讲 + - 自己反思,主要是对别人演讲的内容不感兴趣 + - 不主动去各种关于研究的活动,社交 + - 不喜欢社交,不喜欢跟别人聊我的研究,主要是对自己研究的东西热情不高 + - 开始给自己接下来的博士生经历蒙上一层阴影 - 导师突然拿到了darpa的筹款,数额很多,然后还有很多其他好学校一起合作 - 我突然读到了关于游戏研究的论文,很兴奋,给导师发了邮件说想换方向 - 导师没有马上反对,叫我开始读关于逻辑AI的书还有论文 @@ -57,7 +68,7 @@ - 没想到过了大半年alphago就出来了 - 后来实在想不到项目,导师也问我能不能换回原来的项目,XR进展也不是特别好,他打算换导师,于是我又重新接手代码补充项目 - 导师提供的指导有点少了,darpa那边也需要一些项目来证明成果 - - 拿到grammatech的实习机会,其实就是去把代码补充项目重新做一遍,目标程序语言从python换成c + - 拿到grammatech的实习机会,其实就是去把代码补充项目重新做一遍,目标程序语言从python换成c。这是第三年结束暑假,2015年 - 跟小橘子开三天车去cornell,然后开去纽约 - 花了一个多月的时间在grammatech做一个特别小的项目,同时做代码补充项目,给darpa交差 - 实习也很累,白天上班,晚上回到家还要接着做代码补充项目,但是还是给自己留一个多小时的时间休息 @@ -72,7 +83,7 @@ - 我一点想法都没有,对于我来说这个项目根本就做不下去了 - 导师也没有什么特别好的想法,他就一直问问题,估计想看看两个人能不能想出来什么好点子 - 最后决定做做human study,看看这个工具是不是到底能够增加编程效率 -- 第三年下半年,开始准备博士资格考试 +- 第四年下半年,开始准备博士资格考试,2015年12月中拿到reading list - 导师问了其他老师,然后给了一堆论文还有书籍,让我学习2个月左右 - 我也跟同学打听,同学就说你就拼命学,有的同学就说其实到时候不会很难 - 我学的很慢,知识很难,而且系里面就我一个人在准备这个领域,没有同学问,没有任何反馈 @@ -91,8 +102,87 @@ - 不就是透过现象看本质吗 - 考完试,终于可以回到代码补完项目了 - # 第三阶段 - 决定入业界,准备毕业 +- 资格考试结束,再加上darpa的折腾,决定入业界 + - 导师说毕业最低要求是要有三篇一作,master之前的都不算。 + - 现在已经是第五年了,第一篇一作还没有发,还在改,第二篇还都没有开始想 + - 看到周围去学术界的同学,他们毕业的时候都至少有4-5篇一作,而且去的地方还不一定是最好的学校 + - 自己并不喜欢做研究 + - 不聪明 + - 不喜欢社交 + - 不喜欢旅行 + - 对自己研究的东西不热情 + - 回想之前的经历,最开心的时候还是写代码 + - 决定入业界,开始找实习 +- 接着修改代码补全项目,第五年 + - 开始加入human study到论文里面 + - 特别讨厌做human study,因为要招人,给补偿,而且不一定还会有人愿意 + - 只能搭建一个特别简单的界面,一个一个办公室敲门,找同学去做 + - 最后大概找到10几个,结果的确是有工具更快 + - 也是当然,因为我已经规定好了输入输出的格式,在这个框架之下,我的工具一定会让效率提高 + - 可是这个框架并不一定反应真实编程的环境,当然,这个我没有写到论文里面 + - human study在第五年下半年做完 + - 投到了ICSE,软件工程顶会 +- 第五年下半年开始准备第二个项目, API refactoring + - 一开始完全不知道如何找下一个项目 + - 导师指导说,第一个项目能改进的地方在哪儿 + - 我想了想第一个项目的缺点,找了一些可以改进的地方 + - 代码补全如果遇到了API不一样的话,那就不能用 + - 如果能够给代码从一个API refactor到第二个API的话,这个问题就会解决 + - 于是可以做api refactoring + - 可以从一堆代码库里面学习不同api的映射 + - 然后通过映射可以做api转换 + - 于是开始分析代码库 +- 第五年也同时开始找实习 + - 投了各种大厂,google,facebook,mozilla,ibm,jetbrain + - 同时一直在刷题 + - google电面问了binary search,没有回答好,几天之后被通知没有过 + - mozilla面的是研究员的职位,过了电面,第二面的时候问了一些博士经历 + - “你在博士的时候,最有挑战性的经历是什么” + - “我在搭建代码补完项目的系统的时候,系统需要马上跑程序来判断生成的程序是不是正确的。然后我网上找了好多资料,试了很多的库,最后我还是写出来了一个很快的系统。 + - 后来就被通知没有过,后来回想了一下,估计我的答案一点都不想是做研究的,反而像是做程序员 + - jetbrain回了邮件,给了一个面试项目,目的是考核编程能力还有沟通能力 + - 我花了一个星期去准备,文档也写的很完备 + - 过了第一面,然后第二面是视频面试 + - 编程问题很简单,面试的时候面试官还不知道为什么离开了一会,让我自己在写,面试官也很放松,给我的感觉就是他很慢,感觉不是很sharp,像个老头 + - 同时facebook一直都没有消息,小橘子劝我应该找找系里面的同学内推 + - 于是硬着头皮找了一个不熟的同学内推 + - 很快简历就过了,赶紧安排电面 + - 第一面的面试官是个中国人,能听得出来,问的问题也中规中矩,基本上都答得上来 + - 第一题之前刷题也刷到过,为了不暴露,稍微多花了点时间 + - 第二面也是中国人 + - 第一题跟第一面的第一题一摸一样,我心里面高兴了一下,很快就答完,赶紧开始之后的题目, + - 最后结果也是中规中矩 + - 面完之后半个小时,面试官给我打电话,说第一题是不是之前问过。 + - 我说是的,他说为什么不提,我说我不知道是不是你们故意的,然后他说以后这种事情要说 + - 挂完电话我就分析了一下,如果他们不算第一题,那之后我也打对了之后的题,应该不会影响太多,但是还是稍微有点担心 + - 到最后还是拿到了实习机会 + - 看到包裹,一个月五六千的工资,还有免费食宿,包机票。瞬间很期待去facebook实习 + - 一开始分配的实习组是做机器学习的,不是很感兴趣,后来跟导师打听,正好他有个认识的同事做编程语言的也在facebook,可以去找他 + - 跟导师的同事聊了聊,发现挺适合,然后他帮忙把我调到了flow组,这下更加期待了 + - 最后我也拿到了jetbrain的实习机会,可是facebook的包裹实在是太好,于是婉拒了jetbrain +- 开始在facebook实习 + - 刚开始遇到实习导师很紧张,介绍的项目也有趣,也有挑战性 + - 碰到了大学的同学chiam,他来接机,还帮我开了公寓的门 + - 代码质量不错,跟组员也有一些沟通,但是不多,因为自己的作息习惯跟大家不一样,经常自己吃饭 + - 中期评估,一切都不错,就是需要加强跟组的沟通,要跟大家吃饭,只有委屈自己跟大家多吃饭了 + - 周围的一些实习同学稍微有点压力,我还好,因为我最后不是很想来湾区,拿不到转正机会也没关系 + - 到最后,项目实验不是很成功,不过导师还是很给力的让我写了一个工具出来,给组里的人演讲了一下 + - 拿到了转正机会,可是不是很开心 + - 因为转正的地点是在湾区,austin没有程序员的职位 + - 一开始不想去,还投了austin本地的公司 + - 最后小橘子说服了我接了offer,入职时间是19年初 + - 哭了一场,因为毕业了就要跟小橘子相隔更远了 +- 实习完,第六年 + - 代码补全项目终于中了ICSE的会议,18年暑假演讲 + - 接着做第二个项目,抓紧时间写第二篇论文 + - 9-10月份要做博士毕业论文的proposal + - 导师说基本上就是把毕业论文演讲一遍 + - 我就把slides都整理好,加上第二篇api refactoring一起演讲了 + - 演讲完,chris说,那你的timeline呢? + - 我当时就愣了,什么timeline? + - chris说propose的时候需要给timeline,说下一个项目什么时候结束,什么时候做毕业答辩 + - 因为我要准备毕业了,所以给了一个不是很现实的timeline,大概是18年初把第二个项目做完,然后准备答辩 # 毕业,工作