首页 > 程序人生 > 为什么说每个程序员都应该有台Mac电脑
2016
06-17

为什么说每个程序员都应该有台Mac电脑

  1979年,刚被踢出 Lisa 项目组的 史蒂夫·乔布斯 从 杰夫·拉斯金(Jeff Ruskin) 手中夺走了新成立的 Mac 团队,为了证明自己的天赋与实力,乔布斯下定决心要倾尽全力建造出一台完美的个人电脑。

 基因

  乔布斯认为,『完美的艺术品只有天才才能造出来』,于是他找来了一群天才。

Mac 初始团队成员从左至右:乔治·克罗、乔安娜·霍夫曼、伯勒尔·史密斯、安迪·赫茨菲尔德、比尔·阿特金森、杰里·马诺克

  他们相信『过程就是奖励』,他们『每周工作 90 小时』只为能做出最『酷毙了』(Insanely Great)的产品,他们像海盗一样行事:既为自己的工作感到自豪,又愿意去窃取别人的灵感。他们和乔布斯一样,都是充满了朋克精神的天才极客。

Mac 初始团队的海盗旗

  多年后乔布斯回忆到,『最初的Mac团队让我知道,最顶级的人才喜欢一起工作,而且他们是不能容忍平庸作品的』。到今天,Mac 的开发者与用户或多或少地继承了这种精英文化,他们是一群热爱编程的人。

  天才程序员王小波在他的《思维的乐趣》中对编程有着这样的一番描述:『计算机编程和解几何题有共通之处:对了马上能知道对,错了也马上知道错,干干脆脆。你用不着像孟夫子那样,养吾浩然正气,然后觉得自己事事都对。』

  我窃以为,编程能力的提升有助于提升独立思考与理性思维能力。而理性是一种科学的态度,它能让我们和我们周遭的世界更加美好。

 信仰

  2008年我从大学毕业,加入了支付宝 UED。部门在白鸦和大老板 James 的努力下,全都换上了 iMac 与 Macbook 。后来从 Felix Ding 那里,我知道了更多关于 Mac 的历史。

  Mac 『1984』宣传片,宣传的不是他的产品,而是一种自由多元化信仰,它帮助我打开了一扇通往人格独立之门。从乔治·奥威尔到『逻辑思维』,从《乌合之众》到《论美国的民主》,我逐渐成长为一名自由主义者。

  『 Think Different 』广告片中,Mac 被定义为敢于挑战权威、富有创新精神的叛逆者。那些旗帜鲜明的人,愿意买一台 Mac 来标榜自己的 『非同凡响』。

  ShiTiven 是我认识的第一个使用 Mac 的全栈工程师。他喜欢喝咖啡,喜欢 Python 和 CoffeeScript 。他有着极快的语速和编码速度,他曾经在某个下午误饮了一整瓶绍兴黄酒后,完成了支付宝第一版『 AA 收款』组件的开发。他告诉我把 Mac 的默认语言设置为英文,这样其他人会对我刮目相看。很多年没听到他吹牛了,只听说阿里在美国上市后他把 Mini 换成了宾利。

  dc 是我认识的第一个使用 Mac 的前端大神,他是《高性能 JavaScript 》的译者,前端框架 Arale 1.0 的作者。2009年他留着一头飘逸的长发,是和张克军一样优雅的男人。从他那里我知道了张国荣的『我就是我,是颜色不一样的烟火』。他现在在北京经营着一家逼格很高的公司,喜欢跑步和滑雪。

电影《东邪西毒》中张国荣扮演的欧阳峰

  2009年,我入手了自己的第一台 MacBook Pro,希望能成长为一个牛逼的程序员。

 完美

  Mac 是第一款使用图形用户界面(GUI)和鼠标的个人电脑,在使用 Mac 的过程中,我也开始慢慢感受到了那『God is in the details』的完美体验。

  Mac OS 的顶部菜单栏设计遵循了『费茨定律』,这是为什么 Windows 的菜单功能难用的原因,因为它不敢抄得太像 Mac;

  Applications、Downloads 等内置目录规则和 Spotlight 文件检索,很好的平衡了文件管理与定位的效率;

一致的键盘快捷键设计与 UI 规范,提升了应用程序的可用性与美观度;

  有趣的 Dock、精美的拟物化图标以及大量优秀的无衬线字体,让 Mac 时尚感和设计感十足;

  打开 Macbook 机身壳,你会看到那精美的电路板。乔布斯从他父亲身上学到,即使是隐藏的部分也要做得很漂亮。这点重要么?想想中国各大城市的下水道建设吧:)

  关于 Mac 与 Windows 的对比,《乔布斯传》中记录了更多细节:

  Mac 电脑的包装重做了 50 次,目的是要让 Mac 在性能和外观上都给人惊艳的感觉;

  2000 年上市的 Power Mac G4 Cube 进入了纽约现代艺术博物馆;

  Windows 抄袭 Mac 是合法的。1984年,为了不让微软停止开发 Mac 版的 Word、Excel 等应用,苹果被迫签署了一份合同,同意微软有权在其即将推出的Windows系统中使用苹果公司的部分图形功能;

  乔布斯认为最好的产品是『一体的』,是端到端的,软件是为硬件量身定做的,硬件也是为软件度身定制的,Mac 上的操作系统只能在自己的硬件上运行。这也是为什么大家会觉得苹果的产品体验更好、性能更好,而 Android 上的动画不论如何优化都无法获得 iOS 的流畅度的原因;

  『微软唯一的问题就是他们没有品位,一点都没有。并不是狭义上的没有品位,而是广义上的,他们没有独到的见解,也不会在产品中注入多少文化……因此,我想自己之所以感到难过并不是因为微软成功了,我对他们的成功没有异议,大部分都是他们应得的。我难过的是,他们做的确实只是三流产品。』当然这段话只是乔布斯在 1996 年对微软的看法:P

  书中有几个小故事,足以说明为什么说 Mac 的缔造者们是一群天才程序员:

  Mac 在一开始就实现了桌面窗口效果,比尔·阿特金森(Bill Atkinson) 设计了重叠窗口『截取』算法(让 CPU 只计算窗口中显示的部分,略去对未显示部分的计算,从而节省了处理器的运算时间,提高系统运算速度),这一特性 Windows 在十年后的 Windows 95 中才实现。

  Mac 的桌面窗口一开始就被乔布斯要求设计成圆角,而计算机画圆形图案涉及到平方根计算,当时的 CPU(摩托罗拉68000微处理器)并不支持平方根计算。为此,阿特金森研究出一个加法运算来代替平方根运算的算法:一组奇数序列相加可以得到一组完全平方数序列(如,1+3=4,1+3+5=9,等等)。

  苏珊·卡雷(Susan Kare)主导设计了 Mac 上各种漂亮的字体,结合激光打印技术和强大的图形功能,Mac 推动了桌面出版产业的诞生。字体技术不再只有印刷工人和其他与油墨打交道的人才能使用。

  95年,阿维·泰瓦尼安(Avie Tevanian)领导改进了 Mac OS ,将 NEXTSTEP 操作系统核心技术整合其中。从此 Mac OS 成为了基于 Unix ,同时包含面向对象编程语言 Objective-C 和先进 GUI 的优秀操作系统。这也是为什么使用 Mac 的程序员通常比使用 Windows 的程序员更熟悉Shell 操作与各种编程模式,对美的设计形式也更加敏感的原因,而这些是成为全栈工程师的一些基础要求。

  2005年,Mac OS 在几个月的时间内完成了对 Intel CPU 的支持。这件事成为 比尔·盖茨 亲自承认真正钦佩苹果的几个壮举之一。

我的 iMac 与 MacBook

  所以说,每个程序员都应该有台 Mac 电脑,每家有理想的互联网公司都应该给他的程序员配上一台 iMac 或 MBP。

  当午后的阳光透过窗户照在这些 iMac 精灵身上时,你能体会到当年乔布斯与 Sir Jonathan Ive 漫步于花园之中,看到那一排排迎着太阳转动的向日葵时的那份喜悦之情。

  最后,让我以『 Think Different 』宣传片的广告词《致疯狂的人》作为本文的结尾来勉励自己和各位同学:

  他们特立独行。他们桀骜不驯。他们惹是生非。他们格格不入。他们用与众不同的眼光看待事物。他们不喜欢墨守成规。他们也不愿安于现状。你可以认同他们,反对他们,颂扬或是诋毁他们。但唯独不能漠视他们。因为他们改变了寻常事物。他们推动人类向前迈进。或许他们是别人眼里的疯子,但他们却是我们眼中的天才。因为只有那些疯狂到以为自己能够改变世界的人,才能真正改变世界。

编程技巧