认知世界——MacTalk 豆瓣版本上线

MacTalk封面2

今天《MacTalk·人生元编程》的电子版在豆瓣阅读正式上线了!让人感动的是还没卖几本就被推荐到豆瓣阅读的首页袅,眼泪哗哗的流……

豆瓣是我非常喜欢的一个互联网公司——尽管他们这次联系我比较晚:-(,在国内你几乎找不到和豆瓣类似的公司,也许有萌芽中的?反正俺没发现过。清新和独特基本上就是豆瓣的商标和特质,比如豆瓣为 Mac 君设计的封面,也是清新到令人发指,无欲无求!他们从社区起步,拓展了很多产品线,我其中最喜欢的就是豆瓣阅读,我是最早期用户之一,在豆瓣购买了付费作品 几十 篇,大概花了几百元。不过我个人感觉豆瓣产品线过多,也导致了每个产品投入的不均衡,比如豆瓣阅读 App,早期清新淡雅的风格和操作体验独树一帜,但是后续的更新和迭代频率就比较缓慢,并没有特别出彩的体验跟进。

豆瓣可能已经意识到了这一点,开始做自己的排版引擎,最近发布的iPhone 版本已经有很大的改进,iPad 据说已经被塞进小黑屋测试袅(md 我盼了那么多年的 Pad版改字体大小功能终于要来了我容易吗?)。

在这次 MacTalk 第一辑出版的过程中,豆瓣和我联系的比较晚,不过效率很高,9月2日提交原始稿件,9月9日上线,端的是唯快不破,而且豆瓣阅读最大的优势是支持 Web 阅读器(前端技术很强哦,大家可以去感受一下),你可以在 iOS、Android、Web 上阅读,同步进度。对于那些喜欢在 PC 或 Mac 上读东西的朋友来说,应该算利好消息。

喜欢豆瓣的童靴,可以去豆瓣阅读的首页购买:http://read.douban.com (大家写写书评凑个人气先)
喜欢多看的童靴,可以去多看阅读的首页购买:http://www.duokan.com
今天多看的版本已经更新了,请到 App 中下载更新精校版:)

MacTalk都在最显眼的地方,由于该书的封面是由各出版方独立设计的,大家可以看到,各有各的风格。

软文结束,最近 Mac 君写软文写的手都有点软了!但是请组织放心,后续的文章会像诺基亚一样:硬,很硬,非常硬!


以前写过三个问题:我是谁,从哪里来,到哪里去。有人说「我是唐三藏,来自东土大唐,去往西天取经!」这台词不错,可惜不是人人能用。不管你是什么人,只要常常思考和自省,那就不可避免的在某个阶段会想这些问题,可能是30岁,亦或是40岁。

年轻人很少考虑这个问题,那是因为他们没见过生死离别,不知道岁月轮转,总以为自己有用不完的时间和日子,仿佛每天站在泰山之巅阳光之下肆意生长,但时间总会越过越紧巴,总有一天你会觉得,自己时间不够用了!我常常想,如果人在深夜睡眠的同时能够完成阅读和学习就好了。于我而言,就能洞悉更多人性和计算机的奥秘,于他人来说,可能各有各的收获,至于这些收获是否能换成银元,没人知道,也不需要关心。

最近和朋友讨论问题,再次谈到了人类作为个体存在的终极目标,我想可能就是寻找自我和认知世界。由于认知的边界永远是无限的,所以我们的恐慌和孤独感永远存在,并相伴一生。但这并不妨碍我们在踏进一扇门之后,不断的去探求另一扇窗的奥秘。比如在编码之余,写写 MacTalk,读读百年孤独。

哲学、科技、人性,这些都是我想探寻的东西,这些物件要么随着人类历史长河起起伏伏,要么隐匿在山涧的溪流之下,只要留意,总所收获。

祝各位读书愉快!

《MacTalk·人生元编程》出版

coverpage-2

今天中午得知了电子书正式上线的消息,作为一个没见过世面的70后,做为一个常年为 Apple 和 Mac 写软文没捞着一个子儿的程序员,俺压抑住内心鸡冻的心情,决定为自己的第一本书写一篇软文。当时我正在心潮澎湃思绪万千的想:进城走哪条道能不堵车呢?然后我就没时间写软文了,然后我就堵了两个小时进城了。结果到了客户那他完全不能理解我的心情,一个劲问这问那,从架构问到编码,从难题问到幼稚,足足耗费了两个半小时,然后就到了5点半晚高峰袅,然后俺再一次经历堵到海枯石烂,堵到沧海桑田,堵到死于心碎,于7点半回到家中,啥也没说打开 Mac 就开始写这篇软文,我容易嘛我……

以下是正文


《MacTalk·人生元编程》可以说是一本随笔文集,主要内容来自Mac 君的微信公众平台 【MacTalk By 池建强】。

【MacTalk By 池建强】开通在2012末日前夕。最初只是想每天发送一条Mac技巧,但写起来却并非如此,最终形成了一种技术和人文结合的风格,时而随笔,时而技术,吸引了不少的读者。

那为毛会有这本书的问世呢?因为写到后来越来越多的读者开始碎碎念,「神马这些好的文字不集结成书那真是太可惜了,神马你要是出了书多少钱我都买,神马这么多 MacTips 为毛不整理到一本书里呢,神马你也该出一本书了吧」,等等,不一而足,慢慢的,我就信以为真了,这时候另一个重要角色出现了,那就是一些图书和电子出版行业的朋友恰好也是 MacTalk 的读者,他们也说你的文字该收拾收拾了。于是我终于收起了那颗懒惰的心,硬着头皮开始整理文字。整理工作是枯燥而乏味的,比写文章的感觉差多了,开始动手的时候我已经写了180多篇 MacTalk,还包括一些之前写的没发表东西,需要统一进行梳理,选择那些适合集结成册的文字和文章。所有的文章都需要重新阅读,对内容进行增补、删减和校对,最终形成了五大主题共计五十二篇文章,这五个主题包括:Mac、程序员与编程、科技与人文、人物、工具。每篇文章独立成文,方便读者利用碎片时间阅读。

另外,由于原来写的 Mac 技巧散落在上百篇文章中,需要一条一条的摘出来重新整理校对,最后形成了一篇长文,包含130个 Mac 使用技巧,起名为 MacTips,归并于 Mac 主题。

这还不算,多看电子书针对这部分 Mac 技巧的内容单独做了索引,叫做「MacTips 快速查阅」,大家可以非常方便的根据索引进行检索,如果您是 Mac 用户,绝对不可错过,涨姿势的同时,还能提高工作效率不是?「我觉得光这篇文章就得值3块了吧?」

最后隆重介绍一下本书的推荐序「技术写作与减熵」,由冯大辉先生创作,他是微信公众平台 【小道消息】的作者这种事我就不用说了,我想说的是,原以为他会写一篇像我这样的软文,没想到他写的高屋建瓴高端大气,从微信到技术到写作到王小波到减熵到经济,延续了他一惯的文风,那就是硬、很硬、非常硬,就像刚刚被收购了的诺基亚一样!他在序中无情吹捧 MacTalk 的同时,也猛烈的赞赏了小道消息!「我觉得光这篇文章就得值3块了吧?」

MacTalk 在写作的过程中得到了冯大辉先生的诸多帮助,在此一并谢过。

对,最后就说到本书的价格了,我在和无数读者、出版方进行了多方会谈之后,考虑了图书的传播价值,老读者的感受,新读者的体验,决定去掉最高价50,去掉最高价30,去掉最高价20,去掉最高价12,然后再打个半折再半折,那就是著名的2.99元,2.99元,这就是传说中的白菜价啊……

咦,怎么越写越有电视购物的赶脚了,不管了,就是打折销售的2.99元……

「我说 Mac 君你够了,我们去买不就得了」 「哦,好吧……」

最后我要感谢多看出版的朋友们,他们的敬业和效率让本书保质保量如期出版;感谢 MacTalk 的读者,没有你们的热情和催促,此书无法出版。

另外,下载了《MacTalk·人生元编程》的读者,如果你们发现文中有错漏之处,请在本文下留言,我会统一进行更新。

无论喜不喜欢,请给《MacTalk·人生元编程》打分和评论,一星五星我都喜欢!

点击《MacTalk·人生元编程》 购买本书。

VIM——概念和技巧

vim4

这个周末被公司拉到一个有山有水有藏獒的荒郊野岭,除了电灯电话、楼上楼下,就没有什么别的了。很多人抱怨条件艰苦,我觉得还好,体会一下原生态的自然风光,与昆虫近距离亲密接触,也算回归自然。郊区的夜让人感觉已入初秋,凉风习习,满天星斗烁烁生辉,周边的山都很低,橘色的月亮就挂在屋脊上,尺寸大的吓人,远远望去,看到如水的月光流淌在低矮的山脊上,明灭闪烁。记不清有多少年没见到过这么好的月光了。

村里的藏獒个顶个身姿挺拔伟岸,看见有人走过偶尔犬吠,大部分时候只是含情脉脉的盯着我们,或者急促的走来走去,估计心里在想,这帮孙子怎么不到这边来玩会?

周日的爬山活动最为搞笑,大家卯足了劲准备登山,没想到一抬脚已经登顶了,站在山包上极目远眺,除了蚊子和我们,没有其他活物,带上去的西瓜也没吃完,结果年轻力壮的小伙又扛了下去,实践证明:扛着西瓜上山并不可怕,上山后吃不了再扛下来才可怕,人生最痛苦的事莫过于此!

自然其实离我们没那么远,离开沙发和书桌,稍微往外走一走就好!

Vim 概念


Vim 系列有很多人催更了,今天就写写 Vim 的基本概念,之后介绍几个使用技巧。

下面我们来介绍一下Vim中的几个基本概念:Buffer(缓冲区)、Window(窗口)和Tab-page(标签页)。

1、Buffer:很多读者问,用 Vim 打开文件后,文件内容存哪了,每次修改都要读写硬盘吗?显然不会每次编辑都写硬盘,事实上Vim打开的文件都会被加载到内存中,在内存中我们使用 Buffer 来描述正在编辑的文件,一个Buffer对应一个被编辑的文件副本。当我们在完成了一个Buffer的编辑后就可以保存该文件。Buffer不仅包含了文件的内容,也记录了该文件的编辑状态等配置信息,比如激活、隐藏、上次编辑行数等。

用Vim可以打开多个文件同时编辑,也可以把不需要的文件关掉,但这时文件副本依然保存在缓冲区中,我们可以通过 :ls:buffers查看这些Buffer,还可以通过类似:buffer n的方式重新打开文件(n表示Buffer的序号)。当然,我们有更好的方式来处理这些Buffer,那就是CommandTBuffer,要想使用CommandTBuffer,先要安装CommandT插件,请大家记住这个插件的名字,我们以后会用到。

2、Window:是对应Buffer的一个展示窗口。一个Buffer可以对应多个窗口,比如我们可以通过:split filename:vsplit filename命令在多个窗口打开一个文件,当修改某一个窗口的文件时,其他窗口都会同步更新。当然我们也可以在多个窗口打开多个文件,编辑后用:wq保存退出,但是记住,只要没有最终退出Vim进程,那么这些打开的文件Buffer依然保存在缓存区中,可以随时再次打开。

3、Tab-page:Tab-page就比较容易理解,对应一组窗口,我们可以通过:tabedit filename在另一个标签页中打开一个文件,在这个标签页中又可以打开多个窗口。

下图可以清晰的表达Buffer、Window和Tab-page的关系:

bwt

理解了这三个概念和三者之间的关系,对我们用好Vim有非常大的帮助。

Vim 技巧


1、打开 Vim之后,可以用:split filename:vsplit filenamenew filename横向或纵向切割窗口,使用 ctrl + w可以在个窗口之间跳转,使用 ctrl + 方向键可以按照方向切换窗口。

2、用 Vim 打开一个文件,如果我们想实现所有文本行翻转,那么可以执行如下命令:
:g/^/m 0

3、在 Vim 中统计文本行数和当前光标的位置,可以使用 ctrl + g,统计字节数,可以使用 g + ctrl + g

4、对文本进行简单排序:
用 shift v 选中多行文本,输入 : !sort,看看效果如何

5、如果你想把当前目录下(包括子文件夹)所有后缀为 java 的文件中的 apache 替换成 eclipse,那么依次执行如下命令: 在当前目录下执行:

vim 
:n **/*.java 
:argdo %s/apache/eclipse/ge | update

第四个技巧在 Vim 系列第二篇里提到过,今天解释一下,这就用到了buffer 的概念,通过正则表达式在内存中打开多个文件,argdo 表示在内存中执行 Vim 的命令,%s/apache/eclipse/ge 表示在内存中执行字符串替换,g 表示全局替换,e 表示如果文件中没有可替换字符串不报错继续执行,| 是管道标识符,update 表示替换完之后更新并写入文件。


文章内容来自微信公众账号:MacTalk
· 微信号:sagacity-mac
· 回复 m 可以查阅所有历史文章和Mac Tips
· 网站:https://macshuo.com

顾得上就问,是为「顾问」也

consult

MacTalk 开通了九个多月,收到问题和问候无数,其中问的最多的问题有两类。

一种是 Mac 相关的,比如买 Air 还是买 Pro,11寸还是13寸等等,个顶个高端大气。第二种就是职业咨询,比如工作两年怎么才能找到一份感兴趣还不累薪水高责任少的工作?(我的回复是:我也找呢),比如技术转咨询有前途还是一条道走到黑更显英雄本色?比如在铁岭想去北京压力太大买不起房子能抢银行么?当然个别也有求姻缘问星象的,比如作为女程序媛怎样才能找到相伴一生的靠谱男程序猿等等。

总之,自从开启了 MacTalk 之旅,我觉得自己干瘪的人生经历终于丰富起来,上天给你开了这扇小窗,你不能拧巴着非要关上另一扇门。所以,今天我们就来聊聊第二类问题中的第三小类的第五小点,也就是很多技术人员干了很多年,人疲劳了代码也疲劳然后就想转行的职业——顾问!

我们先来看看顾问的百度百科定义:顾问是一个职位,泛指在某件事情的认知上达到专家程度的人,他们可以提供顾问服务。例如品牌顾问、法律顾问、政治顾问、投资顾问、港事顾问、军事顾问、国策顾问、地产顾问、工程顾问、国家安全顾问等。顾问提供的意见以独立、中立为首要。所以读者参考顾问报告之前,首要了解顾问的背景,是否存在利益冲突。

我觉得这是一份完美的定义,首先顾问应该有真知识,装有不行,其次顾问有很多种,再次顾问的意见和建议应该是中立的、独立的。

如果大部分顾问能够做到其中的两点,那这就算是个相当有前途的职业了,然而现实往往是残酷无情的,国内的一些顾问更多的倾向于只说不做,只提方案不顾执行,只忽悠不落地,只有利益没有中立。想想顾问埋下的那些坑那些雷,你和你的小伙伴是不是满眼都是辛酸泪啊?没关系,伤心总是难免的。

我曾经幼稚的以为,做技术咨询起码要写过几万行代码吧,做敏捷顾问至少要做过成功的项目吧,做管理咨询总要管过几十号人吧,做战略规划总要运营过公司吧,然而现实总能轻松突破你的底线。

有一次客户使用的正版中间件出现了执行线程挂起的情况,因为支付了高额的服务费用,所以一个电话就把该司的技术顾问叫来了,顾问来了之后三板斧,打补丁、升级、重启(我擦比修电脑还简单),搞不定就会抛下一句「应该是你们的程序问题」,然后飘然而去,再出马就得是高级技术顾问了,当然费用也会涨的更高!

还有很多项目的咨询方案和项目研发分别由不同的公司承接,这时候就人生只见顾问笑,哪管项目经理哭,运气差碰到倒霉顾问,完全不考虑实际需求、项目研发和实施工作,客户喜欢什么概念,他就堆什么概念,前几年言不离 SOA,现在则是私有云、公有云、混合云、大数据、推荐、移动终端balabala……,什么好看堆什么,而且这样的顾问一般都有成套的方案工具,做出来的文案华丽无比,能把客户的钛合金眼晃瞎。项目经理一看基本要疯掉,一个项目下来杀死项目顾问的心都有了,所以我脑海里经常闪现出项目经理提着刀追砍项目顾问的场景,但是由于两人常年在项目堆里跳来跳去,经验丰富,凌波微步练得七七八八,一时间难分伯仲。但是项目还得进行下去,所以有时候这两人斗到最后把酒言欢也未可知,那样倒霉的可能就是客户了。

另外顾问还有一个必杀技,叫做「好转之前先恶化」原则,这个大招就像降龙十八掌里的亢龙有悔,刚柔并济收放自如,一招既出,你已立于不败之地。当客户问你怎么办的时候,你可以出一个相应的解决方案,不过这不是重点,你要告诉客户,「现在问题很严重,我不能保证帮你解决问题,但我保证好好帮你解决问题,而且在情况好转之前可能会出现反复和恶化,不必担心」。当情况真的恶化了,你就表示一切尽在掌握;如果情况变好,你就表示方案的效果好得出乎意料,无论如何,你总是对的。

好吧,虽然今天忍不住吐槽了顾问这个职业,但从另一个角度看,如果你能做的比这些顾问好一点点,那么就会脱颖而出,所以想从技术转顾问的,不用犹豫请继续!

总结一下,顾问是个好职业,不过好归好,您还得有真东西不是?顾得上就问,顾不上或没能力顾就不闻不问,迟早也会问无可问!


文章内容来自微信公众账号:MacTalk
· 微信号:sagacity-mac
· 回复 m 可以查阅所有历史文章和Mac Tips
· 网站:https://macshuo.com

品评 OS X Mavericks ——唯快不破(下)

Maver

本来触动我写这个系列的原因就是 Mavericks 的快,所以起名唯快不破。结果拉开架势写了两篇都还没有写到这个快字,真够失败的。今天的终结篇将主要介绍 Mavericks 是如何做到「多快好省」。

更正1:Java 从 Lion 开始就不是 OS X 的一等公民了,而是按需安装,但是之前 Lion 和 ML 升级时不会干掉原有的JRE,所以 Mac 君没有觉察,这次他们干得更彻底一些。

更正2:双屏显示的时候,在扩展的桌面空间里也可以出现 Dock,具体操作方式是鼠标在屏幕下方滑动两次,就会呼出该屏幕的 Dock。但是这个功能还不稳定,经常发生呼不出来的现象,等正式版吧。

更正3:Ant 被干掉了,Maven 保留着。看来自古都是「但见新人笑,那闻旧人哭」。依然想使用 Ant 的童靴可以执行以下脚本安装:

brew install https://raw.github.com/Homebrew/homebrew-dupes/master/ant.rb

性能:唯快不破


一个操作系统除了功能性和安全性之外,考虑最多的就是迅疾如风的响应速度和持久的续航能力,这次 Mavericks 的升级使用了多种技术保证了 OS X 的快和节能。

(一)Kernel

OS X 的内核基于 FreeBSD和 Mach3.0构建,可以通过32位或64位内核启动系统,并充分发挥32位或64位应用程序的运行效能。在64位内核的情况下,Mavericks 经测试可以最大支持 128G 的物理内存,这特么就是个服务器版本啊。

(二)Compressed Memory(内存压缩)

内存压缩技术是 Mavericks 新增加的底层技术,这货彻底提升了整个系统的使用容量和响应速度,也就是说你可以开启几十个应用程序,在联动内存超过80%,物理内存使用几乎达到100%的时候,依然可以像整个系统只打开了一个程序那样,毫无顿挫感的使用每一个打开的程序,这种美妙的感觉让人想想都要流口水的。

具体原则就是永远去满足最需要内存的程序,当内存告急的时候,系统就会根据时间顺序去寻找那些不活跃程序的内存,将其压缩到一半大小,然后把内存倒出来给最需要的程序。当这些被压缩了内存的程序活跃起来的时候,系统会以最快的速度释放内存,让你切换程序毫无顿挫的感觉。

这就像一个家族企业,哥哥姐姐弟弟妹妹各有各的生意,有一天大哥说要干一票大的,这时候其他人就会把手里的闲散资金贡献出来给大哥用,当有其他人也想拓展生意时,也是一样的路数。资源虽然有限,但总能让最需要最活跃的人获得足够的资金。当然前提是活跃的人数是有限制的,都活跃了这个游戏就没法玩了。

Mavericks 的内存压缩采用了 WKdm 算法(http://terpconnect.umd.edu/~barua/matt-compress-tr.pdf ),这个算法巨牛无比,压缩和解压缩可以说唯快不破。我查了上面提到的论文,这算法也有年头了,不知道为毛现在才翻出来使用。这种压缩技术比硬盘 Swap 交换技术要快,即使是 SSD 硬盘也无法比拟。内存压缩的使用,在增加内存使用效率的同时,还减少了硬盘的读写次数和 CPU 的占用率,另外,与传统的虚拟内存技术不同,这玩意还能充分利用多核 CPU 的特性,实在是牛到逆天。

所以,大家如果总是把创新定在 UI/UE 的变化上是图样图森破的,没有技术底蕴都是昙花一现。

为了测试内存压缩的效果,我开启了三十个左右的GUI程序,包括各种浏览器、阅读器、办公软件、开发工具(IntelliJ、Eclipse、Xcode 和模拟器),其中 Safari 和 Chrome 分别打开了几十个标签页,整个系统什么感觉都没有,运转如飞。于是开始出大招,打开 Parallels Desktop,开启了三个 Linux 和一个 Win7,整个系统的内存变化如下图所见(见网站),红色部分表示内存压力高的时候,也就是我逐一打开四个虚拟机的阶段。这时系统终于有反应了,程序切换略有卡顿,但是依然不影响独立程序的使用。关掉一个虚机之后,这个系统又恢复如初了,性能远超上一代的10.8 ML。

mem

(三)Power Efficiency(电源效率)

Mavericks 中的电源技术是根据现代处理器的功能和程序需求构建的,可以有效的延长电池的续航时间,简单来说就是当你的电脑在使用电池供电时,系统会把后台程序的功耗降到最低,尽可能只帮你处理激活窗口的程序,并根据 CPU 的具体使用状况尽可能让各处理器处于 idle 状态,一旦有需要再满负荷运行。比如我现在正在打字写文章,CPU 和硬盘都会处于低功耗的状态。系统对大功耗的后台程序做了严格的控制,并且会通过电池状态告诉你哪些程序是不合格的,以方便你随时干掉这些程序。

perf

很牛的技术,但苹果没说怎么实现的,杯具!

(四)App Nap(程序挂起)

这个技术叫程序挂起也好,程序休眠也好,事实上是和Power Efficiency结合使用的。系统会把你暂时不用的程序,或者不可见的程序迅速而强硬的置于休眠状态,比如你开了三个 Safari 窗口,每个窗口开启了30个 标签页,一共访问90个网址,但是你只能同看一个或几个页面,这时候其他标签也都会被置为挂起状态,当你进行标签也切换时再迅速唤醒。并且在你访问 Safari 的时候,其他不可见的程序都会被置为挂起状态,限制程序向 CPU 发出中断请求,降低磁盘和网络 I/O。同时,App Nap技术还降低了 UNIX 基础进程的优先级,以保证系统的低功耗。

写过程序的都知道,这基本上就是一种懒加载技术,使用的时候才加载,但最神奇的是,系统在做了这么多限制之后,一旦某个程序需要处于激活状态,系统就会开足马力将其唤醒并提供足够的资源,让用户完全感觉不到有休眠和挂起这回事,这让我个人感觉非常悲伤,因为完全不知道人家是怎么实现的。

人比人死,货比货扔,没啥说的。

(五)Timer Coalescing(计时器聚合)

最后说说计时器聚合的技术。传统的应用程序在运行的时候向 CPU 发请求是杂乱无章的,这就搞的 CPU 很烦,因为永远不知道什么时候能休息,刚眯一下会就可能被叫醒的程序员你们感受下。

比如一位忙碌的程序员,几十位上级轮番上阵的向程序员要资源要成果,而且不分场合不分时间不分类型,长此以往,代码必将写无可写,因为程序员已经疯掉了。这时候就需要一个秘书出现来梳理这些请求,定时定点分门别类的处理,这样程序员的工作就轻松多了,有了计划性,还能得到休息。计时器聚合就是 CPU 的秘书,它会把请求进行梳理,通过合理的时间管理保证请求的有序性和间歇性,这样 CPU 就会有更多的低功耗休息时间,具体的处理示意图如下,表示处理之前和之后的CPU 时钟对比。同样,用户完全感受不到这位秘书的存在。

timer3

好,以上内容根据苹果提供的 OS X Mavericks Core Technologies Overview 演绎而得,如有雷同,必是他人抄袭。

遗留问题


目前这个 DP5 的版本已经达到工作机可用的程度,但问题也不少,如下:

  1. 外接显示器启动 Mac 的时候你会看到左右两个灰灰的界面,如果你一直等下去的话,夏去秋来也不会有结果的。拔掉外接插头,你就能看到那张熟悉的脸(登录界面)。
  2. 多屏的情况下鼠标经常会失去焦点,如果你发现某个页面怎么也无法滚动时,不要怪罪你的食指,一定是有另一个程序在后面骂娘,「老子已经在后面归隐多时,为毛还要被反反复复的拖来拖去?」
  3. 总体来说,Mavericks的 UI 并没有太大的变化,但是时而扁平时而立体的效果,还是容易让人产生困惑,我们期盼两岸尽快统一起来。
  4. 程序的稳定性仍需加强,比如 Safari、iBooks等,每天还能崩溃一两回,iBooks 的性能和渲染也是问题,丫经常把自己搞得很慢。日历也经常出问题,你会发现周历和月历突然不能滚动了,或者用着用着事件的颜色被偷偷的修改了,总之,凡做过大手术的程序,都不稳定,Xcode5.0 没敢升级,不作死就不会死。

希望下一个预览版能够解决这些问题。

另外,应部分童靴的要求,我把Mavericks 10.9 DP4完整镜像包和DP5的升级包的下载链接都放到了这篇文章的后面,感兴趣的可以去试试,尝试新鲜事物永远是保持内心鲜活的动力之一,但这毕竟是给开发者的预览版,记住两点:

  1. 先备份
  2. 杯具了就别来找我

DP4安装镜像:
SHA1 9578dfd2f8fba1a574cf792013af62d0930ba00e
原始地址 百度网盘

DP5升级包:
SHA1 f8a48a662463855abb093ce3a2a67e35c6f42296
原始地址 百度网盘

三篇写完,颇感疲累,我要休息一下,这两天别等更新了。


希望长期听 MacTalk 可以在 macshuo.com 上赞助,谢谢。

品评 OS X Mavericks ——唯快不破(中)

Mavericks2

昨天发了上篇之后,很多人发来贺电说,Mavericks不就是达拉斯小牛吗?怎么成冲浪胜地啦。我建议大家去苹果官网看看 OS X 10.9的 logo,那一片大浪啊……实在不行去维基百科查查,总之,这里提到的Mavericks和达拉斯小牛的一根牛毛关系都没有,请大家暂时忘掉牛,想着浪。

小伙伴们看了昨天的文章之后说了句天津话,这有嘛?我说别急啊,时光都穿梭到2013年了,如果你还认为升级就是改改 UI/UE 那就太 Naive 了,事实上这次 Mavericks 真正动大手术的地方在底层的技术框架上。我们会在性能一章着重描述。今天讲讲应用软件的兼容性和新功能。

应用软件


1、兼容性

一看到这个标题估计就有童靴扔砖头了,不是说所有软件都不需要重新安装么?请注意,Mac 君在「所有」之前加了「几乎」二字,行走江湖……你们懂的。

所以,升级完成之后有几个地方还是需要修缮一下的。

首先,JDK 没了,这在前几个操作系统升级时是从未发生过的,最多默默的帮你把 JDK5升级为6,而这次是默默的把 Java 干掉了,难道库克大爷和 Oracle 的埃里森结下了梁子?总之,Java 在 OS X 上一直充当一等公民的日子结束了,但也没那么惨,当你需要运行 Java 相关的应用时,系统会自动提醒你安装 Java 框架,比如你想打开 IntelliJ 或 Eclipse,Mavericks就会问你要装 Java 么,你说是的,人家也不会为难你,分分钟就帮你装好了。装完之后,所有相关的程序就都可以正常运行了。

Python 比 Java 麻烦一些。Python 依然是 OS X 的一等公民,并且版本升级到了2.7.5,但这个升级导致的直接后果是以前安装的那些库统统都不见了。比如Django、ElementTree、Markdown、html5lib、MySQL-python等,甚至 bpython 和 ipython 两个增强型 shell 也需要重新安装,让人愤愤不平。这还不算,用easy_install安装时出现的编译错误是你躲不开的宿命,这时候是不就想骂娘了?别急这才刚刚开始……

发生编译错误是因为 Xcode 的 command line tools 没装,在 OS X 里玩命令行没有这货是万万不行的。这时你微笑着打开 Xcode,找到Preferences—Downloads—Components,发现,command line tools 的安装包不见袅!再一次,Mavericks 把 XCode 4.6.3的 command line tools 全部干掉了,而且你还找不到单独的10.9的 command line tools 安装包,当你想装10.8 的包时,系统会明确的告诉你版本不合适,想都别想。

在诅咒了这个万恶的强删制度以后,我决定使出杀手锏和 Plan B,在命令行输入xcode-select --install,这时会弹出一个选项框,问你是去下载 Xcode 还是直接安装,选择安装,你会发现,总会有解决方案的。 xcodeselect

我担心的Parallels Desktop 8和 Papers 2都可以正常使用,用来干活的 JetBrains 系列和 Eclipse、Xcode 4.6.3 都没什么问题。

Ruby 升到了 2.0,在经历了这些之后,我决定让别人去填坑,自己则无耻的跳了过去。

其他我用到的几十种软件大部分都能正常使用,兼容性测试到此结束,简单来说,这个预览版是可以投入日常工作使用的!

2、新成员和新改进

iBooks和地图是 Mavericks 新增的原生软件,尤其是iBooks,在第五个预览版首次发布。

(一)iBooks 的功能类似 Amazon 的 Kindle for Mac,支持云同步,支持打开本地文件,可以做笔记和书签,iBooks 对应的文件格式是 epub,Kindle 是 mobi。除了普通电子书,iBooks 还能够支持多媒体交互式电子书,比如那本著名的《Life on Earth》,在 Mac 版的 iBooks 上显示效果相当惊艳。

终于能够在 Mac 拥有 epub 书籍的完美体验,我感觉心满意足。当然,这个新版本问题也不少,崩溃、渲染问题、性能等都像最近的地震一样说来就来,期待最终版。

ibooks

(二)地图就没什么可说的了,就是一个原生的地图软件,大家去看官网介绍即可。

(三)Finder 新增了 Tab(标签) 和 Tag(标记)功能,标签这个功能已经被用户吐槽很多年了,在看到苹果迟迟没有动静的情况下,程序员们愤怒的开发出了 TotalFinder 和 XtraFinder这样的软件来告诉苹果,没有你妹一样可以用 Tab!Tag的功能可能创意来自互联网的标签云,现在我们除了可以为文件和文件夹标记颜色,还可以打标签,并把这些标记过文件一次显示出来,Mac 的文件系统也向着扁平化多纬度管理浩浩荡荡的进军了。目前Tag自身的管理比较弱,就一个列表,这要是有50个 Tag 基本会疯掉,期待改进。

(四)日历和备忘录的 UI 都重新设计了,尤其是日历的改进,除了设计简约清新之外,周视图可以左右滚动,月视图可以上下滚动,阅读和记录更加方便,事件还能直接与地图位置绑定。备忘录去除了拟物化设计,界面采用了白色和淡黄,字体用了手札体。

calendar_inspector_2x

(五)Safari 的性能、阅读器、边栏、Top Sites 都进行了重新设计。阅读器有了更好的阅读体验,基本不需要其他插件了,但取消了底部的设置和导出打印的功能,不知何解。边栏提供了书签、阅读列表和共享链接三个功能面板,和 iOS7的 Safari 一模一样。共享链接会列出你在微博、Twitter上跟随的那些小伙伴分享的链接,让你一个链接都不放过。

Safari 这次发布的版本是7.0,在高速缓存、页面解析和平滑滚动上做了很大的优化,如果网站和带宽足够,网页几乎没有刷新和加载的感觉,瞬间开启,让你产生一种MD出事了的错觉!长页面上下滚动几乎没有停顿感,我用Quartz Debug测试了一下,FPS 能达到60帧,相当强悍。

safari

(六)监视器的 UI 重新设计、功能增强,为 CPU、内存、网络、磁盘提供了更多图形化的系统信息,界面设计也隐约透出扁平化的味道。

(七)双屏或多屏支持放到最后说,是因为这个功能太赞了。这次多屏的改进并不是扩展或辅助屏幕,而是为扩展显示器增加了一个桌面空间,比如你的 Mac 原来有三个桌面空间,外接显示器时,系统会默认为你创建第四个桌面空间,并在扩展屏里显示,这个空间是完全独立的,除了没有 Dock,其他和主屏完全一样。这样做的好处就是两个屏幕是完全独立的,互不干扰,如果你的机器足够强悍,都可以当两台电脑使用,爱全屏全屏,爱切换切换,互不侵犯,各自为政。对于多桌面空间爱好者来说,吸引力这绝对是致命的。

通知和 iCloud Keychain 就不细说了,总之让通知和密码保存更加方便,大家届时自己体会吧。

本来想今天一把写完,结果发现自己太幼稚了,只好把「下」改成「中」,明天再谈谈性能和目前存在的一些问题。