导读:
Joel Spolsky是一个美国的软件工程师,他的网络日志“Joel谈软件”(Joel on Software)非常有名,读者人数可以排进全世界前100名。
上个月28号,他回到母校耶鲁大学,与计算机系的学生座谈。他发表了一个演讲,回顾自己的人生经历,并总结了一些个人的体会。
我读完他的演讲稿,很受触动,觉得他的人生体会非常具有启示性。这篇演讲非常长,分为三个部分(一、二、三)。我没有时间全文翻译,就摘录一些精彩的段落,一共有四段。
大学里最有用的课程 Joel说,他在大学里上过的最有用的课,是一门他只上了一回,然后就再也没有去过的课。
由于父母都是大学教授,亲戚朋友都是学术界里的,大多有博士学位,所以Joel从小就认定自己也会去读博士,将来搞学术。可是,有一门课程改变了他的想法,使他最终没有去报考研究生院。
这门课程叫做“动态逻辑”(Dynamic Logic)。在第一堂课上,教授证明了一个命题。假定有一个程序“f := not f,” f是表示真假的逻辑值,那么结论是程序运行偶数次后,f的值保持不变。整个证明过程非常冗长,要花几个小时讲解,一共有几十步。课后习题则是,证明如果f值保持不变,那么程序必然运行了偶数次。
课后,Joel花了很多时间做题,还去图书馆借来了参考书。但是,他逐渐感到这样做没有意义:用大量琐碎的、容易出错的步骤,去证明一个凭直觉就能认定成立的命题,这不是一个富有实效的工作方法。在Joel看来,计算机更应该用来解决错误,而不是让人们陷入逻辑的陷阱,去产生错误。(I decided that this Dynamic Logic stuff was really not a fruitful way of proving things about actual, interesting computer programs, because you’re more likely to make a mistake in the proof than you are to make a mistake in your own intuition.)通过这件事,他认识到,自己不适合做纯思辨性的学术研究。因此,他就退掉了这门课,并且以后也没有选择去上研究生院。
Joel认为,就是这门只上了一次的课,恰恰成为了他在大学中上过的最有用的课,因为它帮助他选择了正确的人生道路。
所以,Joel的第一个结论是:人生中重要的是,关注那些真正的问题(real problem),不要陷入那些细枝末节的问题(trivial problem)。就像苏格拉底说的,“认识你自己”。 此外,Joel说,还有一门叫做CS 323的课,也很有用。这门课有大量的课后习题,都是关于编程的,平均每星期要花40个小时来做题。
Joel发现他能够做出大部分的题目,更重要的是,他发现自己喜欢做这些题。这样一来,他就明白自己是适合编程的。另一方面,很多其他学生对这门课感到无比头疼,觉得编程既枯燥又痛苦,每周40小时做这种题简直是一种刑罚。这些人于是明白,虽然同样是计算机系的学生,但是他们并不适合编程。这是一件好事,因为这样他们就避免了以后选择错误的职业。否则,让一个不喜欢编程的人,一生都与程序打交道,这是多么悲惨的一件事啊!
在Viacom的日子 毕业以后,Joel先在微软公司干了一段日子,然后回到纽约,进入维亚康母公司(Viacom),为这家巨型的娱乐传播公司编写软件,成为IT部门里一个程序员(in-house programmer)。
后来,Joel回忆起来,认为这是他一生中最痛苦的日子,并且劝告计算机系的学生尽可能不要去做“in-house programmer”。
原因有三个。
首先,你永远没有办法正确地编写软件,你不得不用最方便的方法编写软件。因为软件支出非常高昂,所以公司会要求尽可能节省成本,你不可能试用新技术,只能使用现有的最成熟、最保守的技术。
其次,你没有办法将一个项目做到尽善尽美。一旦程序可以正常运行,你的工作也就结束了,可以接下去干公司的下一个项目了。你的作用是解决问题,而不是将软件写得尽可能好。如果你是在一个专业的技术性公司,比如Google或Facebook,情况就完全不一样,你的软件写得越好,公司就会越成功,所以公司会支持你在一个项目上不断做下去。
最后,传统公司IT部门里的程序员,只属于公司内部的维护人员,而不是直接从事核心业务的人员。因此,你永远办法进入管理层。但是,在技术性公司,程序员会变成CEO。
因为这三个原因,Joel觉得in-house programmer不是一个好的职业,不幸的是,80%的程序员属于这一类,年复一年,很多人的生命就是这样被耗干的。(it’s frightening because this is what probably 80% of programming jobs are like, and if you’re not very, very careful when you graduate, you might find yourself working on in-house software, by accident, and let me tell you, it can drain the life out of you.)
Joel的第二个结论是:选择职业时,不要只考虑职位是否专业对口,应该尽量选择业务方向与你专业相同的公司。 本文转自
http://www.ruanyifeng.com/blog/2007/12/joel_spolsky_talk_at_yale_part_i.html
分享到:
相关推荐
### Joel_Spolsky对计算机学生的七大建议 #### 第一大建议:毕业前练好写作技巧 Joel Spolsky强调,对于计算机专业的学生而言,掌握优秀的写作技能是至关重要的。他通过举例说明了这一观点: - **Linus Torvalds*...
Joel Spolsky是一位在软件开发领域有着丰富经验的老兵,他的思想不仅对软件开发者有启发性,对于设计人员、管理人员乃至与之合作的所有人也同样具有重要意义。 #### 二、作者Joel Spolsky介绍 Joel Spolsky是业界...
《More Joel on Software》是Joel Spolsky的著作,由Apress出版社于2008年出版。这本书深入探讨了软件开发、设计与管理领域的多样性和相关问题,旨在为软件开发者、设计师、经理以及与他们合作的人士提供有价值的...
根据提供的文件内容,可以看出这是一篇关于Joel Spolsky和他的网站Joel on Software的文章,但文本中包含了大量的乱码和非中文字符,这可能是由于编码错误或原文本的特殊处理造成的。尽管如此,我们仍然可以从有限的...
美国著名程序员Joel Spolsky关于软件管理和技术公司管理精辟论述,读来受益匪浅,特别是其中给大学计算机系学生的建议。
另外,"vba-excel"和"Projectmanagement"标签暗示了VBA在提升"spolsky-sheets"效能上的作用。VBA是Excel内置的编程语言,允许用户编写宏,自动化重复任务,或者创建自定义功能。对于"spolsky-sheets",可能包含了...
对于那些喜欢在不同设备上阅读或者有特殊阅读需求的读者来说,epub版的《Joel on Software》是一个不错的选择。 pdf(Portable Document Format)文件则是一种通用的文档格式,能够精确保留原文档的布局和格式。在...
在《Joel on Software》中,Spolsky分享了他的许多核心观点,这些观点对于理解软件开发的本质及其背后的商业逻辑至关重要。以下是一些关键知识点的详细说明: 1. **软件质量**:Joel强调软件质量的重要性,主张开发...
根据提供的文件信息,我们可以推断出这是一本关于软件写作的书籍,名为《The Best Software Writing I》,由Joel Spolsky编辑选择并作序。虽然我们没有完整的书籍内容,但可以通过标题、描述以及部分版权页的信息来...
PS:以上是按照Joel Spolsky编写更好代码的12个步骤。 满分为12分,可以接受的分数为11分,但满分为10分或更低,这说明您遇到了严重的问题。安装$ npm install --save joel-test用法var joelTest = require ( 'joel...
这款插件以著名互联网人物Joel Spolsky的名字为灵感,模仿了经典的Lorem Ipsum占位符文本,但提供了更为有趣和贴近现实的内容。Lorem Ipsum通常用于在设计阶段填充文本,以展示布局和视觉效果,而Joel Ipsum则提供了...
Joel Spolsky在其著作《计算机教育:软件随想录》中,深入探讨了这一现象,并提出了针对性的建议,旨在指导计算机专业的学生在求学过程中如何更好地准备自己,以适应未来职场的挑战。 在这些宝贵的建议中,Spolsky...
(Quora) -Greg Brockman (条纹CTO)录用-Joel Spolsky (StackOverflow联合创始人) -Joel Spolsky -Jeff Atwood (StackOverflow联合创始人) Atwood-Jeff Atwood (Quora)的(四方) -乔尔·斯波斯基(Joel ...
Joel Spolsky,作为一个曾经的耶鲁大学计算机系学生和现在的Fog Creek软件公司CEO,他的建议对于面临就业压力的计算机专业学生尤其有价值。他的观点强调了工作热情和有效沟通的重要性。 首先,Spolsky提倡热爱自己...
——Joel Spolsky 当《人件》第1版出版时,我写了一篇评论,“我强烈推荐你买一本《人件》给你或你的老板;如果你是老板,那么请为你部门的每个人买一本,并且也给自己买一本。”这个建议在12年后依然有效,并且...
### 关于《Smart and Gets Things Done》:Joel Spolsky 的精炼指南寻找顶级技术人才 #### 引言 《Smart and Gets Things Done》是Joel Spolsky撰写的一本关于如何找到并评估最优秀技术人才的书籍。本书不仅为招聘...
Joel On Software 大家都知道这个东西哈。挺不错的