0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

乔布斯和盖茨教给我们的最重要的两个课程

测试测试测试 来源:网络整理 2018-02-22 07:25 次阅读

本文作者 Ben Fathi 拥有马萨诸塞大学计算机科学学士和硕士学位及心理学学士学位,在计算机行业的从业生涯长达 35 年。他曾在NeXT Computer 做过工程师,之后 曾在微软工作十二年,并任职多个岗位,最后担任 Windows 内核操作系统开发部门副总裁。离开微软之后,Fathi 又去到了 Cisco 担任高级副总裁,负责领导操作系统和网络协议团队。他在本文中对于自己的整个职业生涯进行了回顾,并就其中从乔布斯和比尔·盖茨身上学到的最宝贵的知识进行了分享。

当我 14 岁的时候,我感觉我的父亲那么无知,令我实在无法忍受,但当我 21 岁的时候,我忽然发现他在过去这七年时间里竟然学到了那么多的东西。

——马克·吐温

提醒:当我自己经历这些阶段时,我一点都不明白这句话的含义。相信我,当你经历这些阶段时,你同样也不会明白。

中肯的说,我为自己投身于计算机行业三十五年的职业生涯而感到自豪。我很高兴能与数千位优秀的人士合作,并且也有幸从他们身上学到了一些东西。多年前,我还是 NeXT Computer 的一名年轻的工程师,多年之后,我成为了微软公司的副总裁。从某种意义上来看,我所学到的最重要的两课,“授课人”就是史蒂夫·乔布斯和比尔·盖茨。

大二那年,我报名参加了第一门计算机科学课程,当时还是在我舅舅的推荐之下,他认为:“计算机这东西将来肯定会很强大。”当时我的主修专业是心理学,我也不知道为什么会选择这个专业,只是在我进入大学时,这似乎是我能想到的最好的一个专业。当时的年龄,根本就不知道自己真正想干什么。

大学课程对我来说还算轻松,我对心理学产生了严重的厌倦心理。在我看来,这就像是一种心理上的意淫一样:只是在别人的身上贴加标签,再叠加一些模糊的症状。一位精神病人看过心理学家之后,可能会拿到六个诊断结果,这足以证明心理学不是一门科学,而是艺术。而在这过程当中,我参加的第一门计算机科学课程让我有了意外的发现。

什么?你的意思是说这个问题只有一个正确的答案?你的意思是电脑会按我的指示去做?如果代码不起作用,那应该是我犯了什么错误?太棒了,我要报名!

相比心理学那模糊不清的世界来说,计算机的世界对我更有吸引力。所以我开始申请攻读双专业:心理学和计算机科学。你可能会问,这两种专业之间有什么联系吗?其实并没有多大的联系,只是碰巧我已经完成了心理学学士学位所需要的大部分课程,所以不想就这样放弃。最后,我还是按原计划 17 岁毕业,并且拿到了双学位。

有趣的一点是,现在手下管理着数千人,与数以万计的同事一起工作,我惊讶的发现自己会用到之前心理学课程所学到的知识和内容。现在,这些内容说得通了,因为我亲眼见到了很多的案例。而在大学时期,我没有这样的背景环境去理解那些内容,没有足够的经历去联想,去参考。因此,在当时的我看来,那些心理学概念就像是一堆空话一样。

当时,我还是一位手持 F-1 签证(签发给在美国政府认可的学校全日制就读的外国学生的一种签证)的外国留学生,在美国也没有任何直系亲属,所以要想获得永久居住权,我必须找一位愿意为我申请绿卡的雇主。但你需要做的还不止这些,在美国的留学生毕业之后,必须先进行为期一年的“实践培训”。如果这一年表现很好,你的雇主就会为你申请一张 H-1B 签证。只有先拿到这张签证,才能后续申请绿卡、公民身份或者是其他美国公民权益。如果运气不好,没有拿到这张签证,那你只能被遣返回国。我可不想回到那经历动荡、战乱的国家,当时我的只处于兵役年龄,回去之后肯定要去往伊朗和伊拉克战争前线作战。所以,坚决不能回去。

这样我就非常需要一份工作,当时我唯一能找到的工作就是在当地州立大学担任计算机科学实验室的管理员。这份工作对于想要进入软件开发行业的人来说,实在是有些奇怪。但这就是我当时所能找到的最好的工作,毕竟当时只是 1982 年,正值伊朗人质危机、伊朗-伊拉克战争、石油危机以及经济衰退时期。

在这里,我无须赘述细节,相信我,不是什么美好的画面。就是在这样的时代背景之下,我掌握了最新的 PDP-11 和 Unix 编程课程,学习了如何用 LISP 和 Prolog 去编写代码,研究了时下最热门的自动机理论,你想一下,我能去做些什么?你应该绝对想不到我做的工作就是将穿孔卡放进 20 世纪 60 年代的 IBM 穿孔卡读卡机,然后在老化的 VAX 系统上更换洗碗机大小的磁盘把?这份工作会让我拿到绿卡?好的,我做,管它呢。

直到现在,三十五年后,身处一百万英里之外的我才真正为自己经历了计算机整整一代的发展而心怀感激。这一代即将逝去,但正是由于经历了这些,我才能清晰地看到当下世界与几年前的世界之间的鲜明对比。

你想,现在任何孩子都可以拿起一部智能手机或平板电脑,输入一个问题,任何问题,就能立马得到答案。回到我所处的时代,我们还不得不去公共图书馆,通过纸质索引卡来查找参考书。你能意识到,在过去这几十年的时间里,我们的世界发生了多么天翻地覆的变化吗?再过五十年,按照当下指数级的发展速度,你可以想象一下未来的生活又该发生怎样的变化。我之所以对这个行业未来的发展感到乐观正是因为我看到了这个行业长久以来发展的速度有多快。

不要误解我的意思。短期之内,你能看到的仍然会是挫败和乏味、官僚作风和各执一词、错误修复以及数不尽的会议。但从长远来看,OMG,只要你回望我们在过去十年或者二十年时间里对于人类体验的戏剧性改变就能想象未来的发展。我是在六七十年代出生于第三世界国家,我仍然记得当时我们必须要去市中心的国家电话公司办公室,排队等一个小时才能打一通国际长途。而现在,任何人都可以拿起手里的智能手机,通过语音、视频电子邮件或社交媒体与地球上任何区域的任何人联系。看,这就是进步!

当然,当时的我并不了解这些,当时我只是让自己努力跟上业内最优秀的那些人的步伐。直到现在,我才看到了这么多年来我们所做的工作(网络和安全标准、操作系统平台和生态系统、可用性和互操作性、可靠性和可扩展性)促成了怎样的成果。

虽然现在 iPhone 仍然不能使用 Google Play,但一旦平台协议达成,我们就可以从中选择成千上万部电影、数百万首歌曲以及数十种共享体验。20 年前,这些都不存在。现在,这就是进步,并且我们都可以享用这些进步。只有当你向后退一大步,对比之后发现整个行业对人类所产生的影响时,你才会为自己的贡献感到欣慰。

继续我前文所讲的故事。一所州立大学不可能为一位实验室管理员申请绿卡,所以短暂停留之后,我便离开了实验室,去寻找一个更好的工作。其间我尝试了三四次不同的工作,雇主既有初创企业,也有业绩平庸的小企业,最后我找到了一份自己所热衷的工作内容:操作系统。并且我从未为自己的这个决定而后悔。自我去年退休,我已经在操作系统行业工作了 35 年,一开始是 Unix 内核开发人员,后来做到了经理、主管、副总裁,最后是首席技术官。

我用了几年的时间在 Sun 工作站编写设备驱动程序,之后在一家多处理器高端服务器公司从事了大量的 Unix 内核开发工作。我需要使用各种不同的架构,例如 Motorola、MIPS 以及 PowerPC 等,编写系统组件、设备驱动程序、存储子系统、虚拟内存管理系统以及低级内核代码,进行系统调试,甚至有时需要在工厂车间焊接组件。最终,我一路走到了西海岸,在 MIPS 和 Silicon Graphics(SGI)公司工作了几年,负责高端服务器系统方面的工作,参与了几个超级计算机项目。

当我提到这些的时候,通常对方立马就会想到:“啊,《侏罗纪公园》!”没错。SGI 就是运用计算机图形技术来渲染许多好莱坞电影,其中就包括《侏罗纪公园》。除此之外,我们也从事超级计算机相关工作,直接与 Cray Research 竞争超级计算机领域领导地位。就是在这段时间里,我学到了关于计算机体系结构方方面面的内容,从处理器到操作系统再到整个的系统软件。

我从事过的许多体系架构最终似乎都走进了死胡同。超级计算机、UNIX 工作站、共享内存多处理器体系结构、RISC 处理器以及紧密耦合架构的服务器集群:当世界向着个人计算、云计算和分布式计算趋势发展时,所有的这些体系架构最终都落入了半途而废的境地。我曾为此而倍感苦恼,为什么我为这些艰巨的项目牺牲了很多,几年后却发现竞争对手已经对于这一领域进行了新一轮的思考,并推出了新一代的计算模式来解决问题?

直到后来我才意识到:几乎每个人都可能遭受过我这样的苦恼。每个体系架构迟早会消亡,这个行业就是这样。我参与过的许多项目都具有革命性意义,至少在我从事这些项目的时候具有革命性意义,但每一个这样的革命性项目最终都进入了历史的垃圾箱中。值得庆幸的是,我们每一次都能从过往的错误中有所领悟,有所借鉴。在这个过程中,我也有机会与行业内最聪明的人一起合作,向他们学习。其中最重要的一些“课程”我用了多年的时间才学完。

举例:1992 年,乔布斯取消了我当时正在开发的项目:一个运行 NeXTStep、建立在 PowerPC 基础上的下一代双处理器工作站,当时我还是一名青涩的工程师,也因此离开了 NeXT Computer。当时,这个项目几乎已经要完成了,系统也已经备好可以出货,并且原定于下周召开的一次行业会议上就能正式对外宣布。但就是在这个节骨眼,项目被取消了,我很气愤,这样一来,我甚至都不能在简历上加上这次的工作经验。

乔布斯试图让我留在公司,但我当时只因为项目取消而气愤、头脑发热,根本就没意识到其实他做的是正确的决定。他其实是意识到了处理器架构之战已经结束,英特尔赢得了胜利。所以,他取消了 NeXT的所有硬件项目,让公司专注于软件方面的研发工作。而我,自然是愤而离开,满脑子想的都是“怎么能这样废掉我的项目”?

现在想想,当时的我正是见树不见林的状态。处理器的竞争时代已经结束,当时正确的选择就是在软件领域进行创新,而不是继续为市场份额不断缩小的处理器而战。我说这门“课程”需要投入多年的时间才能掌握正是这个意思。当时的我根本就没达到这样的思考层次,这个我投入了很多时间和精力的项目这样突然被废,我只是一味的陷入了情绪化的状态。我没办法让自己冷静下来,退后一步,看看全局。我从乔布斯那里学到的一课,当然是很久之后,在我终于冷静下来之后才学到的一课就是要为正确的战斗而战。战争已经以失败告终却还要去继续战斗只是徒劳。

职业生涯后期

在我职业生涯的后期,我在微软工作了十几年的时间,从事过各种版本的 Windows 工作。现在回头去看,你可以发现在手机领域 Windows 输给了苹果,在服务器领域输给了 Linux,在云服务领域输给了亚马逊。而在当时,我们都在忙着推出一代又一代的 Windows 版本,根本意识不到这些新发展。对于这样一个负责数十亿用户平台的工程团队,你很难用语言去形容这其中的组织惰性现象。他们几乎看不到其它的颠覆性力量,他们中的大多数人都忙于将现有的业务继续向前推进,这也是典型的“创新者的窘境”。

当然,这并不是在指责 Windows 或者是微软的领导水平。毕竟,我也是其中的“领导者”之一,负责Windows 7 所有的核心开发工作。Windows 7 可以说是有史以来最流行的 Windows 版本,我为我们团队的成就而感到自豪。我从微软学到的最重要的一点就是,要创建一个数十亿人使用的成功的平台,承载数百万应用程序和数千家公司的难度有多大。你创建的这一平台越开放,就越可编程化,围绕这一平台工作的人就越多,以后要实现这一平台的创新就越困难。

此外,在那十几年的时间里,我从比尔·盖茨那里学会的一点是对于细节要非常关注。他可以 14 个小时坐着不动,应对不间断的各种会议,一个团队接一个团队,内容多样,覆盖操作系统、生产力应用程序、互联网、手表、视频游戏、研发、电子邮件、数据库以及浏览器等等。对于每一场会议,他都能切中要害,抓住细节信息,着实令人钦佩。

我很喜欢 Sam Harris 的一句话:

所谓无聊只是因为缺乏关注。

但我更愿意用一种积极的说法来陈述这句话,这也最能概括我从比尔·盖茨那学到的东西:如果你足够关注,一切都会很有趣。

之后,从他身上,我也学到了何谓体面的人,他可以将自己强大的头脑用于解决更棘手的问题,包括教育、贫困和疾病。

我在这里细数自己职业生涯遇到的那些优秀的领导者,以及从他们身上所学到的东西,也许占用了过多的篇幅,你甚至都感觉有些乏味。更重要的是,除非你亲自体验过,否则可能用处不大。我们大都在多年之后,才意识到之前自己应该及时领悟的一些道理,这是不可避免的一件事。但是对于自己职业生涯的选择,我有一条建议,那就是选择你所热衷的事物和方向。

学习,坚持不懈的学习,这个行业发展如此迅速,有很多东西需要学习。即便你片刻偷懒,不去学习,就会被其他人甩到身后。只要你朝着正确的方向前进就很好,不要还没开始就计划好一路的旅程。只要确保前行方向大致正确即可,然后继续前进,继续学习,必要时纠正路线。这样,你最终会到达正确的目的地,一路上也会风光无限。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 乔布斯
    +关注

    关注

    0

    文章

    81

    浏览量

    15058
收藏 人收藏

    评论

    相关推荐

    STM32MP157两个A7核能跑两个系统吗?

    请问STM32MP157的两个A7核,能像其它双核CPU一样运行AMP模式:一核跑Linux、一核跑RTOS(或禅机)吗?虽然有一M4核可以跑RTOS,但计算能力有点弱,不能满足
    发表于 03-21 06:50

    苹果暂缓自动驾驶电动汽车研发,贾跃亭否认库克为乔布斯第二 

    另外,法拉第未来品牌创立者贾跃亭在今天下午发布了一份长文,表示“库克并不具备乔布斯般的能力,苹果半途而废的转向是个严重失误”。
    的头像 发表于 02-29 15:18 108次阅读

    ADXRS453能同时检测两个方向吗?

    ADXRS453的介绍中说可以检测两个方向X或Y,但是手册中只提供了一套速率寄存器RATE0和RATE1,只能用于一方向。我的问题是ADXRS453能否同时检测两个方向的速率?如何读取这两个
    发表于 12-29 06:30

    AD9269在AD两个通道的入口输入峰值相同的差分信号,为什么AD两个通道的输出不同?

    在AD两个通道的入口输入峰值相同的差分信号,为什么AD两个通道的输出不同,最高位的符号位为什么不同
    发表于 12-12 06:55

    最重要的参数:陀螺仪机械性能

    电子发烧友网站提供《最重要的参数:陀螺仪机械性能.pdf》资料免费下载
    发表于 11-22 11:53 0次下载
    <b class='flag-5'>最重要</b>的参数:陀螺仪机械性能

    两个AD8222B的通道差异很大是什么原因?

    最近我用了AD8222B 类的双通道仪表放大器,我们搭建了电路,并测试了一下两个通道的共模抑制能力,发现单个芯片的两个AD8222B的通道差异很大(7dB差异),而片AD8429B差
    发表于 11-20 06:08

    接任苹果CEO已12年 预计库克仍将担任三年

    作为乔布斯选定的接班人,库克经常被拿来和乔布斯作比较。外界公认,善于供应链管理的库克在产品革新能力方面与乔布斯相去甚远。他带领的苹果在产品革新方面也与乔布斯时期“明显差异”。
    的头像 发表于 08-28 10:42 481次阅读

    人工智能能给我们提供什么?

    人工智能能给我们提供什么
    的头像 发表于 06-30 16:34 711次阅读

    比尔·盖茨抵达北京

    比尔·盖茨抵达北京 比尔·盖茨抵达北京;根据比尔盖茨微博透露,比尔·盖茨昨晚达到北京,这也是比尔·盖茨2019年以来的首次访华。
    的头像 发表于 06-15 15:15 399次阅读
    比尔·<b class='flag-5'>盖茨</b>抵达北京

    PCB板上两个LFPAK器件的热性能介绍

      4.3 两个LFPAK器件  第4.3节考虑了安装在PCB板上的单个器件的热性能。这个实验设计的复杂程度是安装在PCB上的两个器件,我们将在其中观察器件间距对Tj的影响。为了将变量的数量限制在
    发表于 04-21 14:55

    MPC5777C有两个重叠的MMU条目,MPC将如何解释这两个条目?

    我有一关于 MPC5777C 中 MMU 设置的问题。如果我们两个重叠的 MMU 条目(*),MPC将如何解释这两个条目?他们会被视为签约条目吗?或者他们会以某种方式被 MPC 合
    发表于 04-14 08:00

    三相电机用两个倒顺开关两个位置控制怎么接法?

    三相电机用两个倒顺开关两个位置控制怎么接法?
    发表于 04-04 11:22

    LPC55无法将两个端口用作此USB库的主机吗?

    亲爱的,我们实际上正在开发一使用 LPC55S28 的两个 USB 端口(HS/FS)作为主机控制器的项目。在 MCUXpresso IDE 中将两个端口配置为主机时,
    发表于 03-31 08:48

    PID控制中的积分时间和微分时间这两个设定值是什么意思?

    我具备一定的微积分数学知识,能够理解微积分的数学和几何含义,但最近学习工控书上对PID控制器的微分时间和积分时间这两个参数的介绍轻描淡写,让我很糊涂,请哪位高手给我介绍一下他们的具体意义是啥,最好举例说明比如用PID 方式控制温度,或者转速等。
    发表于 03-30 16:49

    三相电机用两个倒顺开关两个位置控制怎么接呢?

    三相电机用两个倒顺开关两个位置控制怎么接呢?有哪些接法呢?
    发表于 03-30 11:54