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

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

3天内不再提示

一名天才工程师从Apple II到Lisa,再到Macintosh经历

zhKF_jqr_AI 来源:未知 作者:李倩 2018-07-20 09:15 次阅读

编者按:Andy Hert***eld是一名天才工程师,他也是硅谷的一个传奇。当大多数人还不知道计算机是什么的时候,他所在的苹果团队为我们带来了Macintosh;当大多数人连手机都没听说过时,不同的团队,同一个他,第一次把智能手机产品带到世间。虽然有诸多光环加身,但当时这些成就带给他却是一个又一个的困境:失去奋斗目标、创业公司破产……面对波折的命运,Andy Hert***eld依然保持豁达:是困难造就了革命性创新。

Macintosh初期团队

本文是Tools&Craft对Andy Hert***eld的专访,虽然和人工智能关系不大,但它介绍了先进创意从无到有的过程,也讲述了先行者在奋斗过程中的艰辛。近几个月来,围绕人工智能寒冬将至的传闻骆驿不绝,在AI成果落地初期,从业者是在迷茫中彷徨,还是坚守本心,一切取决于你自己的选择。

创新始于死胡同

Macintosh是1984年苹果发布的一款PC,它是继Lisa后第二部使用图型用户界面的电脑,也是将图形用户界面广泛应用到个人电脑上的首次尝试。但是谈及它的开发过程,Andy Hert***eld直言这不是一件简单的事:

如果你没有真正遇到过死胡同,你就做不出具有革命性意义的大事。确实,事物是不断变化的,即使是我本人再去做同样的事,结果可能也会不一样。

刚开始的时候,大家都不知道计算机是什么,它根本没有商业市场,人们也想不通,究竟什么样的人才会买计算机软件。尽管如此,当时还是有这样一批人,他们会在周六跑去商店偷看Apple II(苹果第一代微电脑),一看就是一整天。这些人后来成了第一批用户小组成员,我也是其中之一。有一次,我正沉迷研究Apple II,一个人突然递了一张纸条过来:嘿,我们成立了一个用户小组。

说实话,像这样既能跟别人分享程序,又能第一时间得到新消息的机会是难能可贵的。

活动前一晚我失眠了,不停起床打磨自己近一个月写的项目,为的就是把它们分享给俱乐部的其他成员。在当时,大家做这件事完全无关商业目的,也不指望别人能理解自己在这种东西上花这么多钱,我们只是被一腔热血所驱动,热情没了,就什么都没了。

这是我对计算机产生兴趣的契机,但我并不知道,在成为一名工程师后,自己居然会从一个完全不清晰的概念起步,走一步,算一步,直到最后到达某一点。

1984 Apple Macintosh计算机

从Apple II到Lisa,再到Macintosh

Apple II确实让一代黑客为之着迷,1977年,Byte Magazine曾这样形容它:“这是第一款符合‘家用电脑’概念的产品,是一种从零售货架上搬走带回家,插上电源就能直接用的完整系统。”但苹果不会就此止步,一年后,公司开始研究Lisa,目标是实现用鼠标驱动图形界面。

相比Apple II,虽然Lisa因其创新设计饱受赞誉,但它的问题是太贵了。它的最终定价是10,000美元,这还是1983年的物价,换算到现在差不多得4万-5万美元。像这样的价格,大众是消费不起的。但这件事也带来了有利影响,一是我们受到Apple II价格启发,二是Steve(乔布斯)经历失败后决定用一个小项目东山再起,他的选择是Macintosh。

从某种程度上来说,Macintosh是Apple II和Lisa的结合。

当时Lisa受到管理层高度重视,公司在上面投入了大量资金和人力。其中参与Lisa图形用户界面设计工作的有Bill Atkinson(同样是Macintosh团队核心成员),我的工作是把他为10,000美元机器设计的东西移植到2,000美元的计算机上。一言以蔽之,Macintosh=Lisa(可访问性、用户界面)+Apple II(价格)+黑客精神。

一切都要感谢早两年开发的Lisa,它为Macintosh提供了大量发明,从某种意义上来说,我们甚至可以把Macintosh称为“平民版Lisa”。我们对Lisa有很明确的目标,把它的价格从10,000降到1500,这一直是我们工作的核心。当然,这个目标的具体实现方法有很多,至于哪些功能是必备的,哪些功能很好用,随着我们日复一日、周复一周的工作磨合,一切都会达成共识。

Andy和它的Mac,Macintosh内部

Macintosh的黑客情怀

Lisa的软件主要是用高级语言Pascal编写的,我们摆脱了Pascal,因为如果用汇编语言编写代码,它的效率可以提高三倍。在硬件设计方面,Macintosh没有像Lisa那样中规中矩地使用行业标准设计,Burrell Smith受到Woz启发,在各个角落疯狂精简耗材。

由于是公司大型团队按正式流程设计的,我们一直觉得Lisa没有Apple II那么接地气,它不能被称为真正的“黑客机器”。更重要的是,它也不是真正意义上的第三方平台,因为按照当时的想法,公司负责Lisa应用程序开发,不允许第三方编写软件。至少初代Lisa的7个应用都是Lisa团队开发的,没有他人插手。

鉴于Apple II的经验,我们希望第三方团队可以为Macintosh制作一些有趣的东西,所以Mac的早期设计就是一个开放软件平台,为了招募第三方团队,我们也投入了相当多的精力。开放性,这才是Macintosh和Lisa之间的本质区别。

前《连线》编辑Leander Kahney在点评Lisa时曾说:“这是一个注定会失败的产品,因为它作为原型,价格过高,技术拼凑严重。而Lisa教会了Mac团队,让他们的工作目标更具明确性。”但这样的表述并不准确。

在团队内部,大家其实不知道Macintosh最后会变成什么样,我们只是不断地痴迷和兴奋,在无形中增加了Macintosh的可能性。Lisa更像是大多数公司的产品,而Macintosh包含着我们倾注的满满的爱。这是一个巨大差异。

Andy的家

没有爆发式的成就,只有渐进式的里程碑

Macintosh是通过原型设计实现的,我们没法真正相信写在纸上的想法。这意味着我们的理念也是渐进式发展的,用今天的话讲,就是灵活的编程风格,但这种做法几十年前就有了。

如果我们一开始就把它定位成一个经典平台,我们应该可以做得更好。很可惜,我们不了解Macintosh,也不清楚自己想把它做成什么样,更缺乏对平台的足够认知。当时大家只是觉得自己在打磨一件精致的产品,而且认为自己几年后能做出更好的、全然不同的东西。没有人意识到这个架构能被沿用5年,更别说10年、20年、30年。

结果是出人意料的。就好比我们都喜欢Apple II,然后用Macintosh取代了它,这个迭代周期是5年。当时我们想当然地觉得5年后,别人会开发出新一代产品完全淘汰Macintosh。事实证明这是一种误解,因为渐进式的精益求精,Macintosh跳出了硬件优化的循环,它已经成为一个强大基础,一个更具工业实力的基础。

我们正在创建一个平台,但那时没人真正意识到了这一点。

虽然缺乏宏观见解,但我们为软件改进还是做了不少微小工作,比如mouse scaling。为了让光标能在计算机屏幕上移动,我们想过让它按像素一格格挪动。当然,这个想法有点天真,如果真的这样做,用户把光标从顶部移动到底部该有多慢!

一个偶然的机会,我们发现可以往里面加入一个因子:光标在像素间的移动速度越快,它经过的像素就越多。这就是mouse scaling,现在所有基于图形的系统都在用它,如果觉得难以理解,你可以在控制面板里把鼠标移动速度拉到最小,然后感受一下那种令人绝望的的操作。

我认为做任何伟大的事业都有一个基本方法,就是你必须有一些渐进发展的开发理念,因为你不会在发展的路上遇到同一个错误。

Andy的书架

早产于90年代的iPhone

上世纪90年代初期,Macintosh的成功让我开始感到迷茫:做完PC,我接下去还能做什么?于是我和几个苹果同事一起创办了General Magic,希望能生产一种新型手持设备。

现在回头看,那时我们靠谱的地方就只是提出了一个概念:能装进口袋的交互工具。如今这已经是全球各地消费者的共同需求,但在1990年,这不是一个主流想法。想象一下,天空中飘着小小的明信片,这些图形明星片会自动落进人们的口袋,那是General Magic的创始愿景。

显然,General Magic拥有正确的想法和出色的团队,但缺乏正确的时机和执行力。产品失败一方面可以归因于一些常规问题,比如我们没有选择最适合的处理器架构,ARM芯片非常适合便携式设备,但我们没有用它。我们也把PC行业18个月性能提升一倍的想法照搬过来,但它们并不适合装在口袋里的设备。

另一方面是团队对于概念存在战略性错误。当时我们聘请了Jim White,他是一名非常有成就的通信架构师,早在70年代就提出了远程过程调用架构,被认为是RPC的发明者。依靠他在网络可编程上的经验,我们发明了一种可以运行网络中所有服务器的编程语言——Telescript,它能让程序访问不同服务器,抓取需要的内容,然后返回自己的服务器。

历史证明我们错了,RPC已经很高效了,我们不用把代码注入web,等它自动完成任务然后返回结果,向服务器发送HTTP请求完全可以取代这个复杂过程。这只是众多例子中的一个,但我们为此投入了大量资源,还创建了新型通信基础设施。25年过去了,现在这些东西都已经不在了,所以,我们一定错了。

这是艺术家、工匠的工作方式,你一直想要打造一个东西,但眼前的成果总是处处不对。这也是一切事物的发展方式,就像当年开发Macintosh,我依然记得自己开发的每一个程序,但如果你问我它们是什么时候开始写的,我不记得了,我们始于一个契机,然后走一步算一步,直到最后到达某个地方。

如果你没有遇到一些死胡同,那么你真的不会做一些非常具有革命性的事情。

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

    关注

    66

    文章

    18433

    浏览量

    179866
  • Apple
    +关注

    关注

    1

    文章

    925

    浏览量

    52754
  • 人工智能
    +关注

    关注

    1791

    文章

    46868

    浏览量

    237593

原文标题:对话Andy Hertzfeld:不经历困境,无以成就硅谷传奇

文章出处:【微信号:jqr_AI,微信公众号:论智】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    求协议栈开发工程师一名

    我司求一名协议栈开发工程师,需要DSP开发经验,工作经验3年以上。工作地点在深圳南山区科技园,公司规模1000多人,薪酬具体详谈。我的联系方式是13025445563,欢迎大家用于自荐或者推荐朋友,谢谢各位豪杰。
    发表于 08-05 10:06

    如何成为一名高级电子工程师

    我是学点子的本科生,想请教各位电子工程师你们的学习之路是怎样的,要想成为一名优秀的高级电子工程师该学什么,怎么学,具体的学习路线是什么样的……
    发表于 01-06 00:32

    如何成为一名合格的电子工程师

    如何成为一名合格的电子工程师,需要学习那些知识
    发表于 11-16 23:33

    如何成为一名测试工程师

    如何成为一名测试工程师
    发表于 05-10 06:37

    如何才能让自己成为一名嵌入式开发工程师

    成为一名优秀的嵌入式开发工程师有哪些要求?随着国内嵌入式行业的迅速崛起,嵌入式人才严重紧缺,企业对嵌入式人才更是求贤若渴。尽管是在就业难的今天,但是各大人才招聘网站上,高薪招聘嵌入式开发工程师的信息
    发表于 11-08 07:40

    一名数据工程师的自白

    2011年,我作为一名商业智能工程师加入 Facebook。到了 2013 年离开的时候,我的职称是数据工程师
    的头像 发表于 10-08 09:36 1w次阅读

    怎样成为一名合格的算法工程师

    成为一名合格的开发工程师不是件简单的事情,需要掌握从开发到调试优化等系列能力,这些能力中的每
    的头像 发表于 02-15 11:39 3536次阅读
    怎样成为<b class='flag-5'>一名</b>合格的算法<b class='flag-5'>工程师</b>

    一名Linux系统运维工程师的自述

    我是个IT从业者,接触Linux也有几个年头了,慢慢的成为了一名Linux运维工程师,经过这几年的努力,我觉得我应该写点东西记录下这几年的心血,从
    的头像 发表于 02-18 14:20 3627次阅读

    一名全栈工程师的成长经历

    这是发生在我身上的个故事:从个零起点学习编程的小白,成为Udacity的一名全栈工程师。(Udacity是
    的头像 发表于 03-07 13:41 2888次阅读

    一名算法工程师的转行经历

    作为一名从传统行业成功转行算法工程师的老人,经常会有想转行互联网,或者是算法工程师的朋友询问我转行的经验。为了能够帮助更多希望转行的朋友,特在此记录下自己的转行历程及心得。
    的头像 发表于 06-17 17:14 3.4w次阅读

    一名高级开发工程师的工作总结

    在CM工作了6年11个月,见证了公司发展壮大的历程,自己也从一名初级Android工程师成长为一名高级开发工程师经历过痛苦和迷茫,收获了知
    的头像 发表于 07-24 11:12 4609次阅读

    一名合格电源工程师,至少要了解那些知识?

    想做一名电源工程师,努力奋斗!
    的头像 发表于 08-12 16:11 5045次阅读

    如何成为一名优秀的Linux工程师

    的个人能力有所不同,想要成为一名优秀的工程师是需要我们往相应的方向努力的。那么,如何成为一名优秀的Linux工程师呢?本文聊聊如何成为
    的头像 发表于 08-21 15:40 3068次阅读

    一名高级工程师的工作经历

    这是发生在我身上的个故事:从个零起点学习编程的小白,成为Udacity的一名全栈工程师。(Udacity是
    的头像 发表于 09-30 16:10 4156次阅读

    成为一名工程师是什么样的体验?

    !在科学探索的道路上,从来不乏伟大的女性,她们活跃在各个学科领域,从事着前沿的科学研究,推动着人类文明的进步,那么成为一名工程师是什么样的体验呢?小明借着节日契机,对明治的女性工程师进行了专访,来
    的头像 发表于 03-18 09:53 1298次阅读
    成为<b class='flag-5'>一名</b>女<b class='flag-5'>工程师</b>是什么样的体验?