博士磨砺(The Ph. D. Grind):第二年,起步——阅读记录2

博士磨砺(The Ph. D. Grind):一本博士生日记——阅读记录1https://blog.csdn.net/qq_46248734/article/details/149784837?spm=1011.2124.3001.6209

上一篇是第一年的博士生活,这次是第二年的

目录

第二年:起步(Year Two: Inception)

与 Scott 的合作

人机交互(HCI)研究方法

学生编程比赛与实验室研究

与 Dawson 的实证软件衡量项目

论文投稿的困难


第二年:起步(Year Two: Inception)

我在谷歌的暑期实习是一段愉快的研究间歇期。工作压力不大,我也很喜欢与其他实习生社交。到夏天结束时,我已经从前一年的精疲力竭中恢复过来,准备好重新开始我的博士生活。

夏天结束时,我给 Dawson 写了一封邮件,重申我希望追求个人兴趣,同时也承认必须做出可发表的研究成果:“我从这个暑假和之前的工作经历中意识到,如果我对一个博士项目没有强烈的归属感和热情,我就很难推进它。所以我真的希望找到我真正热爱的事情与教授和学术界认可的‘研究价值’之间的交集。”(需要平衡兴趣和研究性,平衡自己的想法和毕业需求)

我计划继续与 Dawson 合作,推进我们在第一年末讨论的实证软件衡量项目。然而,我隐约觉得这个项目的风险在于它并不属于 Dawson 的主要专长或兴趣领域;Klee 仍然是他的首要任务。因此,我希望通过寻找另一个项目并行推进来对冲风险,希望至少其中一个能成功。我将在本章后面详细介绍我与 Dawson 的主要项目,但首先我想谈谈另一个项目。



1-与 Scott 的合作

在 2007 年 9 月开始博士二年级之前,我请了一周假去波士顿看望大学朋友。既然人在当地,我联系了几位在 MIT 时认识的教授,向他们寻求建议。他们见面时都说了类似的话:要主动与教授交流,找到双方都感兴趣的研究课题,无论如何不要把自己孤立起来。这个简单的建议,在接下来的五年中反复应用,最终让我以愉快的心情完成了博士学业。

我还在波士顿时就立即采纳了这个建议。我“冷邮件”联系了一位名叫 Rob 的 MIT 计算机科学教授,礼貌地请求与他见面。在邮件中,我简要介绍了自己是 MIT 的应届毕业生、斯坦福的博士生,想开发工具来提高程序员的生产力。我知道 Rob 也对这个研究方向感兴趣,希望他能积极回应而不是把我的邮件当成垃圾邮件。Rob 很友好地在他的办公室与我见面一个小时,我向他提出了几个项目构想以征求反馈。他似乎很喜欢这些想法,这让我感到鼓舞,至少我的思路在这个领域的教授看来是有些可取之处的。遗憾的是,我不能再与 Rob 合作,因为我已经不是 MIT 的学生了。会面结束时,Rob 建议我去找一位名叫 Scott 的斯坦福计算机科学教授,看看能否说服他对我的想法感兴趣。(学会借力,合理运用所能运用的一切资源)

回到斯坦福后,我冷邮件联系了 Scott,约了个时间聊天。我带着关于三个具体想法的笔记走进会议室,并以以下格式进行了陈述:

1. 问题是什么?  
2. 我的解决方案是什么?  
3. 我可以进行哪些有说服力的实验来展示解决方案的有效性?

我的朋友 Greg(Rob 的博士生)教会了我第三点的重要性——在提出研究项目时就要考虑实验设计。教授们希望自己的名字出现在已发表的论文上,而计算机科学会议论文通常需要强有力的实验才能被接受发表。因此,在项目初期就考虑实验设计至关重要。

虽然我的具体想法没有一个打动 Scott,但他仍愿意与我合作,开发一个与我总体兴趣相关的项目。当时,他是一位助理教授(尚未获得终身教职),在斯坦福才待了三年,因此他非常渴望发表更多论文以获得终身教职。由于我有奖学金资助,Scott 不需要用他的项目资金来支持我,这对他来说是零风险。



2-人机交互(HCI)研究方法

Scott 专攻一个务实的计算机科学子领域,叫做人机交互(Human-Computer Interaction,简称 HCI)。与其他子领域不同,HCI 的研究方法以真实用户的需求为中心。典型的 HCI 项目流程如下:

1. 观察用户,了解他们真正的问题是什么。  
2. 设计创新工具来缓解这些问题。  
3. 通过实验评估这些工具是否真正帮助了用户。

由于我想开发工具来提高程序员的生产力,Scott 首先建议我观察一些程序员在自然工作环境中的行为,以发现他们面临的实际问题。Scott 特别关注现代程序员如何使用多种编程语言编写代码,并大量依赖网络搜索和复制粘贴代码片段。过去几十年关于程序员生产力工具的研究都假设程序员在单一语言、同质化的环境中工作,这是一个严重过时的假设。通过观察现代程序员面临的问题,我可能能够设计出满足他们需求的新工具。

Scott 给出了高层次的目标后,我开始寻找可以观察的专业程序员。首先,我尝试在谷歌寻找机会,因为我刚在那里实习过,我的前经理同意将我的请求邮件转发给他的同事。我很快收到了几个礼貌的拒绝,因为没有人愿意让一个非员工查看他们的代码,可能引发知识产权问题。然后,我联系了十几个在斯坦福附近初创公司工作的朋友,认为他们可能不会像大公司那样受到限制。遗憾的是,他们更不愿意配合,因为竞争原因,他们对保密的需求更高。此外,他们比大公司员工更忙,因此不愿意满足一个随机研究生的智力好奇心。

我最后的尝试是去 Mozilla——开发 Firefox 浏览器的非营利软件基金会——观察程序员。由于 Mozilla 的软件项目都是开源的,我认为他们不会害怕外人观看他们的程序员工作。我没有冷邮件联系(我甚至不知道该发给谁!),而是直接开车去了 Mozilla 总部,从前门走了进去。我拦下第一个见到的人,自我介绍后,他慷慨地给了我两位 Mozilla 基金会领导人的姓名和邮箱,他们可能对这种研究合作感兴趣。我当天就给他们发了冷邮件,令人惊讶的是,其中一位回复表示感兴趣。遗憾的是,那是我最后一次收到他的回复;他再也没有回应我的后续请求。

现在回头看,我并不惊讶我的“工作场所观察”尝试失败了,因为我根本没有什么可以提供给这些专业程序员的东西;我只会打扰他们的工作日。幸运的是,几年后我成功观察了另一组(非专业的)程序员——为科学研究编写代码的研究生们——他们欢迎我的轻微打扰,并乐于与我谈论他们的工作环境。这些访谈最终直接启发了我的博士论文工作。(听上去很有意思,但确实,这得是一个互利的过程才会长久进行下去,哪怕提供的是情绪价值)



3-学生编程比赛与实验室研究

由于在专业程序员中找不到观察机会,我决定在斯坦福内部寻找机会。当我看到系里即将举办年度计算机编程比赛的传单时,我立即冷邮件联系了组织者。我向他提出了在比赛期间观察学生的想法,他很乐意地同意了。

虽然学生编程比赛并不能代表真实世界的编程环境,但总比没有好。Scott 的一位名叫 Joel 的学生(比我早一年入学)也想一起来观察。Joel 和我花了一个周六上午观察几位学生参加四小时的比赛。场面相当无聊,我们从笔记中也没有学到太多。然而,这次经历让我们萌生了一个更可控的实验室研究的想法。(idea总是这样不经意间冒出来,需要好奇心、耐性和洞察力)

此时,Scott 决定让 Joel 和我组队一起设计一个实验室研究,而不是各自做项目。由于 Joel 和我有相似的研究兴趣,Scott 可以通过让我们合作来减少管理负担。我很乐意让 Joel 主导实验室研究设计,因为我同时在和 Dawson 做另一个项目。

Joel、Scott 和我设计了一个实验室研究,邀请斯坦福学生花 2.5 小时从零开始编写一个简单的基于 Web 的聊天室应用程序。他们可以使用任何资源,尤其是搜索网络上的现有代码和教程。我们招募了 20 名学生参与,其中大多数来自 Scott 当时教授的《人机交互导论》课程。(用上一切资源,解决方案也许不在远方)

接下来的几周里,Joel 和我坐在系里的地下室计算机实验室里,花了 50 个小时(2.5 小时 × 20 名学生)观察参与者并录制实验室电脑屏幕的视频。起初观察学生工作还挺有趣,但很快就变得乏味,因为我们一遍又一遍地看到相同的操作和错误。我们又花了几乎同样多的时间观看录像回放,并标记关键事件的发生。最后,我们分析笔记和标记事件,总结出这些学生在完成一个简单但现实的编程任务时遇到的问题。(有意思,说的我都好奇了)

我们将实验室研究的发现整理成论文,投稿到一个顶级 HCI 会议。三个月后,我们得知论文被接受,并获得了很好的评审意见,甚至被提名为最佳论文奖。Joel 是这篇论文的第一作者,我是第二作者。几乎所有计算机科学论文都是多位合作者共同撰写的,作者顺序非常重要。第一作者是项目负责人(如 Joel),他比后续作者做了更多工作,因此应获得大部分荣誉。其他作者是项目助理——通常是年轻学生(如我)或远距同事——他们的贡献足以让名字出现在论文上。博士生通常将导师(如 Scott)列为最后一位作者,因为导师在想法构思、项目规划和论文写作方面提供了帮助。

由于我不是这篇论文的第一作者,它不能计入我的博士论文;然而,这次经历让我学到了很多关于如何做研究和写论文的知识。最重要的是,看到这个项目以一篇顶级会议论文的成功发表而告终,我感到非常满意,这与第一年那篇令人尴尬的 Klee 论文被拒形成了鲜明对比。(没错啊,得跟着有结果的人一起参与,经历整个过程,才算入门)

Joel 继续沿着这个研究方向前进,将这篇论文转化为他的博士论文的第一个贡献。在接下来的几年里,他开发了多个工具,帮助程序员克服我们在最初研究中发现的一些问题,并发表了描述这些工具的论文。与此同时,Scott 并没有积极招募我成为他的学生,所以我从未认真考虑过换导师。我的兴趣与 Joel 太相似了,而 Joel 已经在他的子领域中开辟了一个坚实的研究方向。因此,我将精力集中在我与 Dawson 的主要项目上,他仍然是我的导师。不过,这个项目的进展并不顺利。(没错,还是要尊重导师的,不能意气用事)



4-与 Dawson 的实证软件衡量项目

回想第一年末,我开始探索一个名为“实证软件衡量”的子领域——具体来说,是通过分析软件项目的开发历史来衡量软件质量。结果发现 Dawson 也对这个话题感兴趣,所以我们在第二年继续合作。他的主要兴趣是构建新的自动错误检测工具(如 Klee),但他对软件质量也有兴趣。他被以下研究问题所驱动:

  • 如果一个大型软件项目有 1000 万行代码,哪些部分是关键的,哪些不那么重要?  
  • 哪些因素会影响某段代码更可能出现错误?例如,最近由新手修改的代码是否更容易出错?在短时间内被多人修改的代码呢?  
  • 如果一个自动错误检测工具发现了 1000 个潜在错误,哪些可能是重要的?程序员没有时间和精力去逐一处理所有错误报告,因此必须优先处理。

我通过分析与 Linux 内核软件项目相关的数据集来研究这些问题。我选择研究 Linux,因为它是当时最大、最有影响力的开源软件项目,拥有数万名志愿者程序员在二十年间贡献了数千万行代码。Linux 的完整版本控制历史在网上公开,因此成为我的主要数据来源。一个项目的版本控制历史记录了项目生命周期中所有代码文件的所有修改,包括每次修改的时间和作者。为了将项目活动与错误关联起来,我从 Dawson 的软件错误检测公司获得了一个数据集,包含其工具在 Linux 中发现的 2000 个错误。当然,这些并不是 Linux 中所有的错误,但这是唯一我能获得的、包含我研究所需信息的数据源。(数据的来源也很重要,最好是有自己的数据集)

我的日常工作流程是编写计算机程序,从 Linux 版本控制历史和那 2000 个错误报告中提取、清理、重新格式化并分析数据。为了获得洞察,我自学了定量数据分析、统计学和数据可视化的基础知识。在工作过程中,我在研究实验笔记本中详细记录了实验进展,标注哪些尝试有效,哪些无效每隔一周左右,我会与 Dawson 会面,展示我的发现(太高效了,每周都有进展可以汇报,最重要的是,有问题可以提出,好的问题可太重要了)我们的会议通常是我向他展示分析生成的图表或数据表,然后他会提出高层次的建议,比如:“哇,这部分图表看起来很奇怪,为什么?把数据这样拆分一下,再深入挖掘。”几年后我才知道,这种工作方式在各种学术领域的计算研究者中非常普遍;在我的博士论文中,我开发了工具来消除这种普遍工作流程中的低效。但在那时,我没有任何长远规划;我只想做出有趣的发现并发表出来。



5-论文投稿的困难

Dawson 和我在发表论文方面遇到了很大困难。那一年,我们投稿了两篇论文,都被拒绝了。直到又过了一年,这项工作才最终以一个篇幅较短、二级会议论文的形式发表,这篇论文几乎没有声望,也不能算作我博士论文的贡献。但那时我已经不在乎了,因为我已经转向其他项目了。

我们发表困难的根本原因是,我们并不是实证软件衡量子领域(有时也称为实证软件工程)的“圈内人”。当 Dawson 和我开始在这个子领域工作时,来自几十所大学和企业研究实验室的研究团队已经在做类似的工作。我们在竞争中处于严重劣势,这些竞争者包括专门研究实证软件衡量的教授和科学家,他们带领着大批博士生进行繁重的数据分析工作。这些人渴望发表大量论文,因为他们大多是年轻教授,希望获得终身教职。他们也是统计方法、相关工作的框架和“营销包装”方面的专家,知道如何让这类论文被接受最重要的是,他们经常担任相关会议的程序委员会成员和外部评审,因此他们非常清楚在这个子领域写出可发表论文的诀窍(看得我心酸)

每篇投稿论文都会由三到五位志愿专家(通常是教授或研究科学家)进行同行评审,他们会评判论文的价值。如果评审认为论文值得发表,就会被接受;否则作者必须修改后再次投稿。同行评审的目的是确保所有发表论文都达到学术界认可的最低质量标准。这个审查过程是必要的,因为需要有人充当“好坏”的仲裁者,过滤掉胡说八道的声称。然而,同行评审过程本身并不完美,因为尽管评审尽力做到公正,但他们也是人,有自己的主观偏好和偏见。

由于会议通常只接受不到 20%的投稿,如果评审对论文的第一印象不好,就很可能拒绝它。Dawson 和我不是实证软件衡量子领域的专家,因此我们无法以符合评审期望的方式“包装”我们的论文。于是,我们不断收到负面评审意见,例如:“最终,我对作者呈现的结果缺乏信心。我有两个疑虑:我不信任他们对指标的解释,他们使用的统计技术也不够有效。”在学术出版这个残酷的世界里,仅仅对某个话题充满热情远远不够成功你必须熟悉该子领域中担任论文评审的资深同行的偏好。简而言之,我们的数据集不够好,技术不够精细,结果和展示风格也不如该领域的资深研究者所期望的那样令人印象深刻。

相比之下,我与 Scott 和 Joel 合作的论文投稿就成功得多,因为 Scott 是该领域的“圈内人”,他之前在该 HCI 会议上发表和评审过许多论文。当然,成为圈内人并不意味着我们的论文会因此被宽松对待,那样是不公平的。但 Scott 可以利用他的经验,以最能迎合评审口味的方式呈现我们项目的动机和发现,从而提高论文被接受的可能性(没错,经验很重要,科技八股文也有不同的风格)

博士磨砺(The Ph. D. Grind):一本博士生日记——阅读记录1_研磨记 phd grind-CSDN博客文章浏览阅读980次,点赞28次,收藏13次。《博士磨砺》第一章"第一年:低谷"记录了作者攻读博士初期的艰难历程。2006年加入斯坦福后,作者本想研究提高程序员效率的工具,却被安排参与导师的Klee项目——一个自动检测软件错误的工具。在四个月里,作者耗费近1000小时处理Klee本身的漏洞,仅发现少量Linux驱动程序错误。团队在截稿前72小时仓促完成的论文因质量差被拒。这段经历让作者身心俱疲,随后十周陷入孤立无援的研究探索,直到发现与导师共同感兴趣的研究方向才重燃希望。这一章生动展现了博士初期面临的挫折、孤独与自我怀疑。_研磨记 phd grind https://blog.csdn.net/qq_46248734/article/details/149784837?spm=1001.2014.3001.5502博士磨砺(The Ph. D. Grind):一本博士生日记——阅读记录0-CSDN博客文章浏览阅读875次,点赞33次,收藏17次。《博士磨砺》是Philip Guo撰写的个人回忆录,记录了他2006-2012年在斯坦福攻读计算机博士的完整历程。全书采用编年体结构,逐年记述从低谷、起步到最终产出的完整心路。作者强调这不是一本指导手册,而是通过真实经历展现博士教育的复杂面貌 - 包括父母影响、实习体验、学术初探等形成读博决策的深层因素,以及奖学金获得、论文发表等关键节点。不同于成功教授的理想化描述或辍学者的痛苦控诉,作者以平衡视角呈现这段需要高度自我驱动的创造历程,为考虑读博者提供珍贵的个体样本。本书特别适合对学术研究过程感兴趣的学生、教 https://blog.csdn.net/qq_46248734/article/details/149748680?spm=1001.2014.3001.5502How to Read a Paper——如何阅读一篇论文:三遍阅读法-CSDN博客文章浏览阅读821次,点赞27次,收藏20次。摘要:本文提出了一种高效的"三遍阅读法"来帮助科研人员更好地阅读研究论文。第一遍(5-10分钟)快速浏览标题、摘要等掌握论文概况;第二遍(约1小时)重点关注图表和主要内容;第三遍深入理解论文细节,尝试"虚拟重现实证"。作者还介绍了如何应用该方法进行文献综述,包括通过关键词搜索、追踪关键论文和作者等步骤。该方法已在作者15年的科研实践中得到验证,能有效提高论文阅读效率,避免陷入细节而忽略整体。最后作者提供了相关资源链接,并邀请读者共同完善这一"活文档"_how to read a paper https://blog.csdn.net/qq_46248734/article/details/149542849?spm=1001.2014.3001.5502ChatGPT 在学术写作中提供的三种帮助——《nature》-CSDN博客文章浏览阅读909次,点赞17次,收藏12次。生成式人工智能(AI)可以成为写作、编辑和同行评审中的有力助手——只要你负责任地使用它。 https://blog.csdn.net/qq_46248734/article/details/149537979?spm=1001.2014.3001.5502向上管理你的导师:关怀和维护——《nature》-CSDN博客文章浏览阅读882次,点赞10次,收藏25次。摘要:研究生与导师的关系对学业成功至关重要。研究表明,65%的博士生将导师指导视为完成学位的关键因素,但导师往往缺乏系统指导能力。学生应主动管理导师关系:定期安排专门会议讨论论文,制定具体议程;明确反馈需求,而非笼统要求;带着解决方案而非单纯问题请教。这种"向上管理"策略能改善指导效果。双方共同努力才能建立高效的工作关系,确保研究生获得所需指导。 https://blog.csdn.net/qq_46248734/article/details/149668191?spm=1001.2014.3001.5502学生发声:人工智能在教育中的角色——《nature》-CSDN博客文章浏览阅读926次,点赞22次,收藏20次。《AI教育应用的双刃剑:学生视角下的机遇与挑战》 随着生成式AI的普及,高校学生对AI工具的广泛使用引发了教育模式的深刻变革。伊利诺伊大学毕业生Johnny Chang观察到校园内ChatGPT已成常态,反映了AI在教育领域的快速渗透。学生们通过组织讨论发现,AI能帮助克服语言障碍、提供个性化学习支持并促进教育公平,但同时也面临准确性不足、隐私风险及数字鸿沟等问题。卡内基梅隆大学的研究显示AI在科研中存在"幻觉"风险,而麦吉尔大学学者则担忧技术会加剧教育不平等。教育界正探索建立AI使用规 https://blog.csdn.net/qq_46248734/article/details/149747525?spm=1001.2014.3001.5502

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值