最近感悟越来愈多,女儿越来越大,头发越来越少,我知道,自己老了。
30岁之后,时间仿佛开闸的河水一样滚滚而去,感觉自己浪费的时间太多。我们不得不承认,先知先觉的人会比我们领先10年甚至更多的身位。所以我们唯一能做的就是,奔跑和追赶。
岁数大了之后,会变的唠叨,此言非虚,现在常常回想起自己走过的道路,一路走来,我必须得承认自己是个普通的不能再普通的人,但是,引用电影里的一句话“保安怎么啦,保安也是人啊”,所以还是觉得有必要去总结一些东西。很早就有这样的念头,但是一直没有动笔,想必是在等一个引子。期盼已久的Mac OS X10.7发布了,好吧,那就拿这头狮子(Lion)为引,先说说Mac那些事。
2011年7月20日,Mac OS X的Lion终于正式发售了,也就是10系列的第七个版本。
Lion的发售终于让我下定决心,对我的MBP进行一次全面整合,乾坤大挪移,告别MBR分区,改为GUID。我再也不想为每次大版本的升级修改那该死的OSInstall了。
说起Mac,还得从2001年说起,那是我第一次接触Mac OS X体系,当时由于与一家厂商合作,需要把我们的软件移植到Mac Server上。软件是BS架构的,基于JDK1.3构建,由于一直在linux上编程(当时Java几乎没有像样的IDE,Eclipse、NetBeans、IDEA等后来如日中天的工具,有的刚刚起步,有的还在孵化器中),所以Mac基本上是被我们当做Unix用的,印象中移植并没有太大的工作量,细节也不记得了,反正当时Mac对我来说就是一个Unix Server。后来有另外一个组的兄弟是给软件做音乐的,公司专门给他配了一台Mac Pro,价格相当昂贵,那个兄弟护的很紧,基本不让我们这些土鳖程序员靠近,那时候Mac OS X已经告别了9,进入了10。如果记忆没有失误的话,那个系统用的是Mac OS X 10.2 Jaguar,其华丽的界面让一直用土土的windows的程序员留了一堆口水,但当时我们已经被Liunx下各种华丽但不实用的GUI伤透了心,像GNome,KDE基本都是浮云。于是苹果在我眼中就是个酷酷的操作系统,界面优美,适用于图形图像视频制作,价格贵的离谱,用来工作娱乐神马的,基本上是天方夜谭了。当时留下的印象就是留着长发的流浪歌手,谈着吉他,安详的坐在Mac Pro前调音和谱曲的画面。那个兄弟叫老郭,专门为软件做音乐,经常对我们这些不懂艺术的程序猿说,嗯,你们都是土鳖,就知道编程,多无聊。当时我想,这话反过来说,也成!
后来工作上兜兜转转,使用的技术越来越多,工作范围也越来越广,但一直没忘关注Apple和Mac,先是iPod火的一塌糊涂,之后Mac OS X相继发布了10.3 Panther,10.4 Tiger,10.5 Leopard。GUI一直是Apple的强项,界面越来越炫,新功能也层出不穷。类似窗口管理器Expose,全文搜索Spotlight,智能文件夹,Dashboard,强悍的备份工具TimeMachine等等,变得越来越吸引人,尤其是2006年Mac硬件进行了重大的架构调整,开始全面采用Intel系列CPU,Power渐行渐远。架构的调整和Bootcamp的推出,使得在Mac上安装双系统变得触手可及,这一点在当时还是非常吸引我的。在这期间,微软这个巨人似乎步履蹒跚,Vista恶评如潮,被window折腾的不轻的我失去了尝鲜的勇气,所以从2001年到2009年我始终如一的使用XP,只是不断的更新微软的补丁,不断的重装系统。2007年Apple推出了iPhone,如出一辙,又一次重新定义了产业格局,我想是时候尝试一下Mac了,而且手里的IBM Thinkpad已经用了4年,Mac的价格也不那么离谱了,除了GUI的吸引力,作为多年的linux/unix用户,Mac下的原生shell也是吸引我的重要原因之一。
从经济角度而言,MacbookPro的价格对工作多年的我来说,已经没有什么压力了。好吧,开始动手。
2009年入手购置了一台MBP985,操作系统是Leopard,也就是10.5,雪豹还没有出。当时对在Mac下能否完成日常的工作还是有一定担心的,而且对Bootcamp和windows下的C盘D盘划分充满迷恋。自己亲手对Mac做了分区,分区方案为MRB,320G的硬盘,给xp分了200G,而且做了C盘和D盘,同时为了能让Mac的Vmware Fusion能识别D盘,还修改了虚拟硬盘分区表。当时做了很多操作,以至于现在我基本记不起来到底修改了什么东西。现在看来,这些工作除了让我提高解决问题的能力和更好的使用Google之外,基本没起什么好作用。
很快我就从双系统(Leopard+虚拟的XP)切换到了单系统(仅使用Leopard),由于自己是重度Liunx用户,所以Mac下的Shell对我来说简直是天赐良缘。早期工作常年在Linux服务器端编程,那时最爱的工具就是SecureCRT,每天的工作就是从Windows下打开SecureCRT,登录服务器自己的帐号开始编程。以至于后来我一直在Windows下构建自己的Linux环境,每个使用过系统,VIM/Grep等工具是必须要装的。所以我从XP切换到Mac下基本上是非常自然的,以至于我的感觉是,为什么没早点使用Mac OS X,并发出了“这tmd才是电脑!”的吼声。我为自己在Mac下打造了全新的工作/娱乐/阅读/学习环境,后来基本上只有需要网银或通过docbook生成chm文件时,我才会切换到Windows下。
2009年8月28日,Snow Leopard全球发售,我撑到11月,终于忍不住升级了,于是又开始为了把SL无缝安装到我的MBR分区上而苦苦思索,后来花了一个周末,在不影响全部数据和程序的基础上把雪豹安装成功了,一直用到现在。
当初分区的不合理性造成的影响是显而易见的,首先无法升级固件,其次没法直接升级大版本的Mac OS X(岁数大了,有折腾这个的时间我宁愿看书),第三当初磁盘空间的不合理造成很大的资源浪费,已经很少用Windows了,却划了200G空间,Mac这边呢,磁盘经常满,我像个小蚂蚁一样,满了就搬一部分数据到移动硬盘上,让我很不爽。很早就像把整个系统重装上阵,一直迟迟没有动手。直到Lion的发布。
Lion已经宣传了很久,2011年6月苹果的WWDC大会上,Phil Schiller对Lion的介绍给我的影响非常深刻,看完WWDC的KeyNote,我对自己的MBP说,该对你动手了。
Lion如期发售,我用Time Machine备份了SL,WinClone备份了BootCamp,分区修改为GUID,然后重新恢复SL,购买、下载、安装、升级Lion,目前运行良好,空闲空间200G。至于Windows,我准备装个XP的虚机,应该足够了。
对于Lion的体验,可以形成另一篇文章。亮点:Mail/Multi-Touch/全屏/Mission Control/重返/文档多版本等。
其实一句话可以概括,那就是当你觉得Snow Leopard已经足够好了的时候,Lion会轻易突破你的心理底线,就像iPhone4之于iPhone3!感谢乔布斯和苹果天才的工程师!
Mac尤其适合程序员使用,曾经有N多程序员写了文章,为什么程序员该用Mac,没看的可以用Google百度一下。知乎上也有这样的讨论,我的回答:
1、Mac OS X是基于Unix的,这一点对程序员太重要了
2、良好的开发环境,除了xcode外,还有c/java/perl/python/ruby等,还有shell,全部自带,浑然天成
3、大爱vim
4、不需要安装杀毒软件
5、很少重装系统,系统也很少变慢,安装程序极其方便
6、快捷键、UI就不说了
......
具体链接:http://www.zhihu.com/question/19596099#62177
还可以参考:
- 为什么我认为每个程序员都应该用Mac OS X?
- To Mac, or not to Mac
- 新年新计划
- Mac OSX, Windows, Linux, *nix闲谈
- 看看什么公司在用Mac开发
- 开发人员为何应该使用 Mac OS X 兼 OS X 小史
- 作為一個電腦人,你該學用OS X的原因(就算Hackintosh都殺)
- Mac诱惑
我在微博上的一些引发讨论的推:
一个有趣的发现是,使用win非常熟练的老鸟,转到mac会很别扭,因为win的环境和mac区别很大,熟练的人往往依赖自己搭建的环境。反而是win菜鸟,一转到mac,会有一种,“嚓,原来这才是电脑”的感觉。
现在人们看到iOS、Mac OS X技术如日中天,其实基础是90年代初打下的。当时乔帮主成立了NeXT公司,一帮天才程序员搞了一套基于Objective-C语言的NEXTSTEP操作系统,也就是后来的Mac OS X和iOS的前身。在20年后Objective-C及其相关技术名满天下,开发出炫目的应用时,我们只能敬畏的惊叹,这也太tm超前了。