最近感悟越来愈多,女儿越来越大,头发越来越少,我知道,自己老了。

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

还可以参考:

 
我在微博上的一些引发讨论的推:
一个有趣的发现是,使用win非常熟练的老鸟,转到mac会很别扭,因为win的环境和mac区别很大,熟练的人往往依赖自己搭建的环境。反而是win菜鸟,一转到mac,会有一种,“嚓,原来这才是电脑”的感觉。
现在人们看到iOS、Mac OS X技术如日中天,其实基础是90年代初打下的。当时乔帮主成立了NeXT公司,一帮天才程序员搞了一套基于Objective-C语言的NEXTSTEP操作系统,也就是后来的Mac OS X和iOS的前身。在20年后Objective-C及其相关技术名满天下,开发出炫目的应用时,我们只能敬畏的惊叹,这也太tm超前了。

引子——从Mac OS X的Lion说起的更多相关文章

  1. VMware 虚拟机安装 Mac OS X Mountain Lion 苹果系统

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  2. VMware 9.0.1安装Mac OS X Mountain Lion 10.8.2

    原地址:http://zengwu3915.blog.163.com/blog/static/278348972013117114742496/ 所需软件1.VMware Workstation Bu ...

  3. VMware9虚拟机安装MAC OS X Mountain Lion 10.8.2详细图文教程

    VMware虚拟机安装Mac OS X Mountain Lion 10.8.2所需文件:1.Vmware 9.01版下载:点击进入2.Vmware 9.01版汉化文件:点击进入3.VMware Wo ...

  4. Mac OS X Mountain Lion安装Bochs

    基本步骤可以看这个帖子 http://hi.baidu.com/any_where/item/990c0acdfbd6542c47d5c003 大体是: 1.安装x11; 2.开启Mac OS X的r ...

  5. ☆ ☆ VMware9虚拟机安装MAC OS X Mountain Lion 10.8.2详细图文教程 (转)

    参考  http://diybbs.zol.com.cn/1/34037_699.html 然后对安装的Mac系统进行升级到最新版本. 安装mac系统之后,再安装VMTOOLS darwin. 方法可 ...

  6. 在Mac OS X苹果lion系统上制作USB启动盘

    本文翻译自:http://evan.borgstrom.ca/post/1314205955/osx-bootable-usb-from-iso 我也就不按照原文上一句句的翻译了,只说几个比较重要的步 ...

  7. VMware 9 安装 Mac OS X 10.8 Mountain Lion 图文全程

    http://unmi.cc/vmware9-install-mac-os-x-mountain-lion 非常详细,赞一下 本教程是在 VMware 9 下安装当前最新版的 Mac OS X Mou ...

  8. 开始使用Mac OS X——写给Mac新人

    本文转自博客园:http://www.cnblogs.com/chijianqiang/archive/2011/08/03/2126593.html 写这篇文档的原因有两个,一.身边使用Mac的朋友 ...

  9. 【转】开始使用Mac OS X——写给Mac新人

    写这篇文档的原因有两个,一.身边使用Mac的朋友越来越多,经常会有人来咨询一些常见的使用问题,比如:“为什么把界面右上角的红色按钮叉掉,程序还没有关闭?”之类.而且我也不愿意看到很多人使用OSX时仅仅 ...

随机推荐

  1. 洛谷P2296寻找道路

    传送门啦 题目中有一个条件是路径上的所有点的出边所指向的点都直接或间接与终点连通. 所以我们要先判断能否走这一个点, $ bfs $ 类似 $ spfa $ 的一个判断,打上标记. 在这我反向建图,最 ...

  2. simple_tag

    from django.template import Library register = Library() @register.simple_tag def func(arg): return ...

  3. MySQL学习笔记:case when

    一.MySQL case when的三种用法: 1.case 字段 when, 字段的具体值: select a.*, case sex when '1' then '男' else '女' end ...

  4. How to tell your iPhone application that location services are required | The Agile Warrior

    div{padding-bottom:10px}.b_vPanel>div:last-child{padding:0}.banner a{color:#1020d0} --> Below ...

  5. 一步一步学习IdentityServer3 (14) 启用Https

    申领一个CA证书,我用了一个腾讯的免费证书night-c.cn,这是腾讯云买域名送的一个证书 是单域名,非泛域名 1:安装证书  IIS选择证书 2:将证书加载到Identityserver3中,并启 ...

  6. HBase(七)Hbase过滤器

    一.过滤器(Filter) 基础API中的查询操作在面对大量数据的时候是非常苍白的,这里Hbase提供了高级的查询方法:Filter.Filter可以根据簇.列.版本等更多的条件来对数据进行过滤,基于 ...

  7. linux系统host修改

    有时候我们需要修改主机的host主机名,方便管理和识别自己的服务器,修改步骤如下: 第一步: vi  /etc/hosts 正常情况下,修改了第一步就可以了,如果通过hostname命令查看还是修改以 ...

  8. PHP 统计数据合并

    将不同的统计结果整合在一起,如图,根据年级统计出不同成绩段人数(此处只为举例),然后写了一个方法来处理这些统计数组 <?php /** * 合并统计数据 * @param $key_column ...

  9. 解决命令行运行python文件,出现No module named *** 报错问题

    有时候在一个项目中运行的时候,可能是之前已经mark成sources root 你自己忘记了, 于是就在命令行也执行python文件,然后就出现 No module named *** 等 相关你认为 ...

  10. python: 模型的统计信息

    /*! * * Twitter Bootstrap * */ /*! * Bootstrap v3.3.7 (http://getbootstrap.com) * Copyright 2011-201 ...