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

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. 如何用纯CSS布局两列,一列固定宽度,另一列自适应?

    大家都知道好多网站都是左右布局的,很多公司在笔试和面试环节也常常问这个问题.一个去网易的师兄说14年腾讯面试的时候问过这个问题,网易在笔试和面试时候也问过这个问题,还有很多互联网公司也都涉及到这个问题 ...

  2. MySQL基础 - Navicat及HeidiSQL可视化数据库管理工具

    你还在使用终端界面查看数据库吗?是的,用来用去还是觉得命令行好用.....这里先留个位子,改天再介绍下这俩工具的使用,虽然好像觉得没啥需要介绍的.

  3. LeetCode403. Frog Jump

    A frog is crossing a river. The river is divided into x units and at each unit there may or may not ...

  4. linux c获取本地时间

    在标准C/C++中,我们可通过tm结构来获得日期和时间,tm结构在time.h中的定义如下: #ifndef _TM_DEFINED struct tm { int tm_sec; /* 秒–取值区间 ...

  5. InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移

    系列目录 InterSystems Ensemble学习笔记(一) Ensemble介绍及安装InterSystems Ensemble学习笔记(二) Ensemble创建镜像, 实现自动故障转移 一 ...

  6. bzoj 3144

    3144 思路: xxy: 代码: #include <cstdio> #include <cstring> #include <iostream> #includ ...

  7. 浅谈jvm

    1 .说起jvm,很多人感觉jvm离我们开发实际很远.但是,我们开发缺每时每刻都离不开jvm. a: java源码 编译后成.class字节码文件, b:根据classpath找到这个字节码文件, c ...

  8. 使用GNU工具链进行嵌入式裸机开发

    Embedded-Programming-with-the-GNU-Toolchain Vijay Kumar B. vijaykumar@bravegnu.org 翻译整理:thammer gith ...

  9. python可变数据和不可变数据

    可变数据类型:列表list和字典dict: 不可变数据类型:整型int.浮点型float.字符串型string和元组tuple 可变与不可变是相对“引用地址”来说的.python中的不可变数据类型,不 ...

  10. MyBatis之MyBatis环境搭建

    MyBatis之MyBatis环境搭建 一.MyBatis开发环境搭建 1.引入Jar包 ①MyBatis mybatis-3.4.1.jar ant-1.9.6.jar ant-launcher-1 ...