我为什么鼓励你读计算机博士

640?wx_fmt=gif&wxfrom=5&wx_lazy=1


看过《水浒传》的朋友都知道,梁山的一百单八将因为各种理由加入了水寨,走上了劫富济贫、替天行道的路。我2006年从南京大学本科毕业以后,耳闻目睹了数百位计算机专业的博士(生),他们选择读博士的理由可以说比梁山好汉更为复杂。


>>>

看过《水浒传》的朋友都知道,梁山的一百单八将因为各种理由加入了水寨,走上了劫富济贫、替天行道的路。我2006年从南京大学本科毕业以后,耳闻目睹了数百位计算机专业的博士(生),他们选择读博士的理由可以说比梁山好汉更为复杂。


就拿我自己来说,我从小就对编程不感兴趣,高中毕业时一心想报的志愿是数学或者物理专业,但被做数学教授的父亲逼着填报了计算机专业——他出于很多理由,不想让儿子走他的老路。后来我听说计算机专业居然也有一种不需要编程的职业——做教授!从此我对做教授无限向往,于是坚持读完了博士。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


我的硕士生导师倪明选教授(现任澳门大学副校长)曾经有一位及门高弟,在倪教授问其为何读博士的时候回答:“我妈妈要求我拿到博士学位,我博士毕业以后就去赚钱。”这位传说中的师兄如今已是国内某著名IT公司的高层领导。


与形形色色的读博理由相对应,这些博士(生)人生的道路也各不相同。有成为国内外大学教授者,有在公司做技术骨干者,有做一般的工程师者,也有读博期间遇到困难及时退学去工作者,也有苦苦支撑到毕业然后去工作者。当然,他们都比梁山好汉们的结局好得多了。


经常有朋友或者学弟学妹问我:“你觉得读博士好不好?”“你觉得我是否应该读博士?”这些都是相当难回答的问题。


而我们在选择是否读博的时候,往往是对这个专业还没有足够的了解,比如大三、大四时。在中国学生中有一种典型的“羊群效应”:如果周围同学(尤其是学习标兵们)都在准备出国或准备在国内读博,那大家都会效仿,觉得读博很有面子。如果大家都说读博没意义,即使对科研感兴趣的同学,也可能会因为面子问题而不去读博士。


10年前,我也曾经与同学一起去面试微软的工程师职位,甚至宝洁的销售经理职位。现在想想,那些职位既不是我所长,也不是我的兴趣所在,可当年我又如何去判断呢?


我想通过对一些博士人生道路的回溯分析,给计算机专业的学生一些建议,帮助他们选择是否要读博士,鼓励他们通过独立思考来选择自己的道路。



640?wx_fmt=png

对于读博士的一些误解

640?wx_fmt=png


年轻学生由于消息渠道不灵通,或者没有得到正确的指导,对读博士有一些误解。


1.“读博和科研只适合绝顶聪明或成绩非常好的人。”


这个看法是完全错误的,如同“演员只有非常有表演天赋的人才能当”一样是个伪命题。你如果认为大家心目中的学术大牛都是绝顶聪明的人,就好比说经常出现在新浪首页或者微博热搜的那几位明星的演技都非常好一样。


在我所认识的博士中,做出顶级科研的并不都是同辈中超级聪明的人,也不一定是平均成绩点数(Grade Point Average, GPA)最高的人,更不一定是参加ACM编程竞赛的高手们,而恰恰是那些有耐心有毅力坚持去钻研的人。


很多博士生只要选好导师,选好研究方向,肯花费时间,都能做出顶尖的研究。有很多在海外学术圈颇有建树的学者和我私下交流的时候说他们当年的学习成绩并不好。


2.“科研穷三代,读博毁一生。”


这句话在其他领域或许是对的,但在计算机领域就是错的。在计算机领域,通过读博挣钱的大有人在!计算机学科的特性就是科研与产业结合得非常紧密。尤其是最前沿的科研,对产业有很大的推动作用,并产生经济利益。


一个典型的例子就是谷歌的创始人佩奇和布林都是博士生,也出自博士家庭。虽然他们没读完博士就去创业了(布林自称现在在职读博士),但是如果他们没有读博,那将很难开创出谷歌的核心技术。


目前业界大数据系统的宠儿Spark,就是由加州大学伯克利分校的教授和博士们开发的。首席开发者马泰扎·哈里亚(MateiZaharia)即使有挣大钱的机会,也没有完全放弃麻省理工学院的教职。


在网络技术领域,目前业界关注的核心“软件定义网络”也是教授和博士们在大学里开发出来的。谷歌、威睿(VMware)、 Databricks (Spark)、Nicira (OpenFlow)以及无数顶尖技术公司雇佣了数以千计的计算机专业毕业的博士,因为博士通常比其他雇员更接近核心技术。


如果你想实现自己的技术梦想并挣大钱,读博士是一个很好的选择。“读博就得走清贫的人生道路”是没有任何道理的。


3.“科研做的东西大部分都是废纸,对实际一点帮助都没有。”


这种观点在计算机领域也是不正确的。计算机科学并不是屠龙之技。今天几十亿人都离不开的计算机网络的原型就是从加州大学洛杉矶分校发展起来的,我的师爷(我导师的导师)莱昂纳多·克莱洛克(LeonardKleinrock)教授在阿帕网(ARPANET)项目中开发了互联网的雏形,并在1969年发送了互联网的第一个数据包。


20世纪70年代,我的导师、美国工程院院士林善成(Simon Lam)教授在他的博士论文中分析了解决链路层冲突的方法,最后被以太网采用,融入到我们的生活中。


林教授在90年代开发了安全套接层(SSL)的第一个实现系统,如今安全套接层被运用到每台电脑和手机的浏览器中。不仅是计算机网络,几乎每个计算机领域的技术都被科研引领着。


按照加州大学伯克利分校博士后研究员钱学海博士发表在《中国计算机学会通讯》(CCCF)上的文章1所说,计算机体系结构这些年的发展,都与该领域四大学术会议上的论文密不可分。


另一方面,虽然很多论文在现实世界不一定能体现直接价值,但是在写文章的过程中,你能学到很多东西,比如提出问题、解决问题、语言表达的能力,这些都让人受益无穷。


4.“博士毕业还不如本科生和硕士生好找工作。”


其他专业可能会出现这样的情况,因为很多事情并不需要博士学历的人去完成,本科学历便绰绰有余,但在计算机领域这种观点是错误的。


美国的先进科技公司往往对计算机专业的博士求贤若渴,因为博士掌握着先进的科技,能为公司带来经济利益。


我最近访问英特尔总部时,英特尔的研究人员便提到,在20年前英特尔还招聘硕士进行研究,然而最近英特尔基本只招聘博士。在美国,如果一位博士的科研领域正好是公司所需要的,那么很多公司会开出15万美元的年薪和公司股份来求贤。


这种情形目前在国内还并不常见,原因可能是国内的一些公司目前还处在模仿阶段而不是创新阶段。随着国内技术水平的不断提高,越来越多的公司也会渴求掌握科研本领和核心技术的计算机专业博士,估计在五年以内情况就会好转。



640?wx_fmt=png

读博士能学到什么

640?wx_fmt=png


读博士不仅是学习知识和技术,也能培养其他职业技能。读博所收获的并不仅是那几页论文,还有写论文过程中学到的东西。对于中国学生来说,工作中并不缺乏解决问题和编程的能力,而是欠缺表达和沟通能力。


比方说你有一个想法能让公司某软件的性能提升一倍,那么你需要说服公司高层领导,让他认为你的想法是有意义的、值得投入资源去开发。实现这个目标所需要的能力是中国学生一直欠缺的,但是可以通过读博得到锻炼。


1.把握公司高层领导和用户的需求的能力


如果公司高层领导对某软件的性能完全不感兴趣,你当然就不能提出提升软件性能的想法。你要知道公司目前最需要什么技术和产品。这个能力并不是天生就有的,而是慢慢揣摩、锻炼出来的。


在读博过程中,你必须知道你的导师喜欢和擅长的课题,摸透审稿人喜欢的表述方法和结果。这都是你极好的锻炼机会,因为在读博的时候,允许失败;但是在职场上,失败的代价非常高。


2.语言表达能力


我在香港学习期间,与我相熟的刘云浩教授(现任清华大学软件学院院长)反复强调表达能力的重要性。作为一个科研工作者,你要写出能说服别人的论文;作为一个软件工程师,你要写出能体现你贡献的技术文档;作为一个项目负责人,你要写出好的项目申请书和总结报告,让公司知道你的价值。


很多中国学生的语言表达能力很弱,这与外语水平并不是非常相关,而是由于没有经过写作的准确性和逻辑性训练。而读博写论文的过程就能培养逻辑表达能力。


3.克服困难的能力


被别人拒绝很伤自尊。作为天之骄子的大学生,除了追求异性,恐怕很少遭受被人拒绝的经历。而残酷的职场里到处充满拒绝的情形。如何能够以正确的心态来面对这些事情,也是可以通过读博来训练的。


当第一次投稿的论文被无情拒绝后,很多学生都非常愤怒和羞愧。甚至有不少聪明的学生在论文被拒几次之后,一气之下放弃了搞学术。


其实,论文被拒稿原因并不一定是你的工作做得不好,很可能只是差了一点运气和工作的完整性。在职场里,求职和升职也可能会被拒绝,原因也并不一定是自身的不足。读博能帮助你认识和理解这些事情,并以平常心来面对挫折。


640?wx_fmt=png

什么人适合读博士

640?wx_fmt=png


我认为读博士并不需要天生的特殊能力或者后天的条件。我们平常所说的能力,诸如编程、数学和英语,都只能叫做读博士的催化剂,而不是发生化学反应的“反应物”。所以,问题并不是“什么人适合读博士”,而是“什么人不适合读博士”。


1.没有耐心的人不适合读博士


一个计算机专业的博士,需要在自己的研究方向上成为世界级的专家。


没有人能在短时间内成为专家,即使我们看到有些博士生在第一年或第二年就发表了顶级论文,但他们其实并没有从总体上完全理解该方向,选题有可能是靠导师帮忙,甚至就是导师指定的。


大部分重要的工作,尤其是涉及系统的领域(比如操作系统、网络、分布式系统、体系结构、编程语言),并不是在短时间内就能做出成果的。一篇重要的系统方面的论文,通常需要花费近一年的时间去做实验与写作,而之前知识的积累则需要更久。


文章发表之前的一段时间是最难熬的,大部分失败的博士生都是跌倒在了这个阶段。而能够熬过这个阶段的,不论之前的背景如何,大部分都能继续发表更多的论文。“耐心”是读博最重要的条件。


2.不欣赏科学和技术的人不适合读博士


一个成功的计算机博士要懂得欣赏(或者至少愿意欣赏)他人发表的优秀成果,欣赏教科书上的经典设计,欣赏自己或者导师提出的重要问题和解决办法。如果你对科技完全不欣赏,那么是不可能做出好的科研成果的。



640?wx_fmt=png

读博士需要注意什么

640?wx_fmt=png


1.选择合适的导师


导师与一个博士生的命运休戚相关。相同条件的两位博士生如果遇上不同的导师,可能会产生截然不同的命运。


每个导师的背景不同,手上的资源也不同,而他愿意给学生的资源数量也不同。


假如某资深教授A的资源为10,某年轻教授B的资源为5。但是A教授有一个10个学生的庞大实验室,能给你的资源只有1;而B教授仅有你一个学生,给你的资源可以是5。显然B教授是更理想的选择。当然实际情况并不是如此简单。


比如在美国,通常资深和年轻教授的资源差距不大。在中国,资源差别可能很大——当然目前这种差距在逐渐缩小。也有可能你在同门中表现突出,资深教授特别中意你,能给你8个资源。


还有可能年轻教授长袖善舞,与许多同行和工业界的关系非常紧密,这时他的资源反而超过资深教授。因此如何选择导师,绝对不是看资深与否或者脾气好不好这么简单。



2.选择合适的课题


同领域里可以选择的课题有天壤之别。有些课题没有研究价值。有些课题很难,即使认真做了,也不一定能做出好的成果。


我的建议是,博士生应该经常阅读顶级会议的论文。即使课题组历史上从没在顶级会议上发表过论文,即使导师不做要求,即使你不在顶级会议上发表论文也能毕业,你还是要去了解。否则研究容易和现实脱节,自然不会得到认可。



640?wx_fmt=png

博士之后的职业选择

640?wx_fmt=png


我认为读计算机专业的博士是一个“进可攻退可守”的选择。因为在计算机领域,学术界和产业界联系紧密,任何一行都离不开计算,读博士的职业选择相当多样化。


我在德州大学的博士师兄师姐们有的成为常青藤大学的终身教授,有的成为贝尔实验室的主任,有的成为谷歌公司的项目负责人,也有的成为初创公司的创始人。


我在香港科技大学的博士师兄师姐们有的成为摩根大通银行(JPMorgan Chase)的副总裁,有的成为国内名校的新贵,有的在公安部研究所担任重要职务。计算机专业的博士即便职业选择再不如意,也很少有为生计烦恼的,在其他专业的人看来这些人都是各行菁英。


如果你没有虚度光阴,在读博士过程中学到的知识在未来的职业生涯中都会发挥作用。


如果你的优势是写论文,你可以选择成为大学教授;如果你的优势是解决技术难题,你可以选择成为公司的研究员;如果你的优势是编程,你可以成为软件工程师;如果你的优势是建模,你可以加入金融公司等。


计算机专业的知识都是实用性的,这是计算机专业一个得天独厚的优势。即使读博的过程非常不如意,也可以及时跳出“止损”,社会不会把你当成一个失败者,公司依旧非常欢迎博士退学者——因为他们也学到了技术。


如果说一百零八位好汉在踏上梁山的那一刻就注定了此生命运坎坷,那么与之相反,读计算机专业的博士却可以保证你未来的生活,并且在此基础上会有多样性的选择来发挥你的优势。


来源:科研大叔

文章版权归原作者所有,转载仅供学习使用,不用于任何商业用途,如有侵权请留言联系删除,感谢合作。

640?wx_fmt=png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/303876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一日一技:在Ocelot网关中统一配置Swagger

概述Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。在Ocelot网关中,我们提供给前端的直接是Swagger,如果Swagger分布在各个API中,前端查看Swagger的时候非常不便,Ocelot与Sw…

Oracle Solaris 11 Express发布了

甲骨文Solaris 11 Express操作系统在Solaris 10的基础上进一步加强了各种功能,Solaris 11 Express将为关键的企业系统环境提供最佳的UNIX体验(与之相对应的是Oracle Enterprise Linux,将提供最优的Linux体验)。举例而言新系统中基于网络的包管理工具(pac…

自从我上了数据结构课之后……

在 Reddit 上看到一个英文帖子,问:上了数据结构课后,还有正常生活么?有人引用了 Quora 上的一个英文回答,大意如下:嗯,没有!你看东西的眼光,不可能和以前一样了。不管你信…

如何在 C#9 中使用 static 匿名函数

匿名函数 在 C# 中已经出现很多年了,虽然匿名函数用起来很爽,但代价是不小的,为了避免不必要那些你意想不到的内存分配,这就是为什么 C#9 中引入 static 匿名函数的原因,这篇文章我们将会讨论如何使用 静态匿名函数 以…

Linux 远程桌面 rdesktop 软件

为什么80%的码农都做不了架构师?>>> 众所周知XP下有"远程桌面连接"用来远程登录桌面,设置也非常简单。那有没有什么办法在linux 下远程登录到XP呢?有。用rdesktop这个linux下的软件就能实现。 发现新立得也有下载&…

linux进程的高级管理,Linux高级程序设计(第2版) PDF扫描版[94MB]

Linux高级程序设计(第2版)以Linux操作系统(内核为2.6版本)为开发平台、GCC 4.0/GDB 6.3为开发调试环境,详细介绍了Linux系统下编程环境及编程工具、文件管理(文件类型、ANSI以及POSIX标准下文件读写操作)、进程管理(创建、退出、执行、等待、属性控制)、进程间通信(…

人工智能的算法黑箱与数据正义

前段时间,《终极算法》作者、人工智能著名学者、华盛顿大学教授 Pedro Domingos 在社交网络中写道:“自 5 月 25 日起,欧盟将会要求所有算法解释其输出原理,这意味着深度学习成为非法的方式。”一石激起千层浪。人们不禁要问&…

快速了解C# 8.0中“可空引用类型(Nullable reference type)”语言特性

Visual C# 8.0中引入了可空引用类型(Nullable reference type),通过编译器提供的强大功能,帮助开发人员尽可能地规避由空引用带来的代码问题。这里我大致介绍一下可空引用类型的基本内容。刚开始接触这个语言特性的时候&#xff0…

为什么软件工程师找不到工作?我想分享四个“恐怖故事”

编者按:作为一个程序员,如果没有收到心仪的工作offer,你是不是会对自己失去信心?对接创业者和程序员的网站coderfit.com 的创始人Iwan认为你无须担心。他分享了四个“恐怖故事”,告诉我们——那些厉害的工程师被拒绝的…

使用GZipStream实现压缩和解压缩

概述之前做项目,涉及到存入到数据库或者http传输的数据量比较大,这个时候,就需要考虑在存入数据库或者发送传输之前,将数据压缩下,当从数据库中取出时,再解压还原数据。特地找了下发现有GZipStream可以实现…

linux 核显驱动程序,支持下代核显 Intel放出Linux图形驱动

【IT168 资讯】虽然Ivy Bridge处理器的发布因为策略原因被推迟到2012年3-4月份,但是Intel在硬件、软件的开发上进展颇为顺利,近日还放出了新款Linux开源图形驱动,已然支持Ivy Bridge中的整合图形核心。▲Intel新款Linux开源图形驱动Chris Wil…

看完此文再不懂区块链算我输:手把手教你用Python从零开始创建区块链

导读:如果你还没有听说过 3 点钟区块链群,说明你还不是链圈的人;如果你还没有加入 3 点钟区块链群,说明你还不是链圈的大佬;如果你还没有被 3 点钟区块链群刷屏,说明你还体会不到什么是“币圈一天&#xff…

过于在意别人的看法,怎么办?

大家好,我是Z哥。你有特别在意别人的看法吗?如果从别人那里听到对自己不好的评价会不会导致一整天都闷闷不乐,做事都没心思?如果从别人那里听到对自己好的评价会不会做起事来都像打了鸡血一样?我相信每个人都会在意别人…

linux 虚拟机挂载本地,CentOS 在VMWare中挂载本地yum源

准备工作虚拟机 VMWare系统 CentOS 7 镜像一、挂载镜像操作之前点击 虚拟机设置 CD/DVD处勾选 设备状态[x] 已连接[x] 启动时连接挂载镜像mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdrom二、创建yum配置mv /etc/yum.repos.d /etc/yum.repos.d.back mkdir /etc/yum.repos.d三、创…

干货整理:处理不平衡数据的技巧总结!收好不谢

文:Rick Radewagen译:李萌在银行欺诈检测,市场实时竞价或网络入侵检测等领域通常是什么样的数据集呢?在这些领域使用的数据通常有不到1%少量但“有趣的”事件,例如欺诈者利用信用卡,用户点击广告…

MongoDB,凉凉?

英国《卫报》正式告别 MongoDB,完成了向 PostgreSQL 的迁移;RedHat 移除 MongoDB,Fedora、Debian 亦在其列;再加上前不久刚因程序员爬虫而扣上的一口 2 亿简历泄露的安全事故大黑锅——比起 “Hello World”,一只脚刚踏…

linux ubuntu 开启ssh服务,开启SSH服务远程登录ubuntu

Ubuntu系统(14.04 LTS)ssh–secure shell,提供安全的远程登录。从事嵌入式开发搭建linux开发环境中,ssh的服务的安装是其中必不可少的一步。ssh方便一个开发小组中人员登录一台服务器,从事代码的编写、编译、运行。方便代码的共享及管理。ssh…

兄dei,Python数据竞赛和5万现金奖励了解一下

“少年,我看你骨骼精奇,是万中无一的技术奇才,维护世界和平就靠你了,我这有一个拯救世界的机会(还有50000大奖,美滋滋……),见与你有缘就免费告诉你了!”剧情是这样展开的…

聊聊自驱团队的构建(四)

本文聊聊一个议题,构建知识型组织。1 背景研发团队最重要的一件事莫过于重视知识工作的开展了,尤其是以.NET为主要技术栈的企业,随着招人成本的不断提高,依托团队组织建立的知识型队伍,定期开展培训,促进团…

别再提程序员应届年薪20万了,人工智能已经年薪60万了!

对人工智能而言,2017是不平凡的一年:AlphaGo再胜人类腾讯宣布进军AI百度无人驾驶汽车上五环AI教育要从娃娃抓起寒武纪成全球AI芯片首个独角兽阿里巴巴成立达摩院类人机器人Sophia首获公民身份国家正式公布人工智能四大平台..........近年来,人…