1、 *** 作系统的竞争到了一个新的阶段
Windows虽然仍旧是实质上的老大,但是 *** 作系统的战争早已不是10年前的样子。随着Web应用的大行其道,很多人的电脑,都已经成了名符其实的上网本或者上网机。
Window/Mac OS X/Linux/Unix几大主流平台上都有了流行的Web浏览器,只要不是一个执着的IE粉丝,那么如果你的主要任务是Web浏览,现在几大 *** 作系统的体验已经非常接近了。其他的基于互联网的流行软件,一般也都有比较好的跨平台支持。例如,聊天工具,Gtalk全平台覆盖,Msn全平台覆盖,现在甚至连一向被人看作很封闭的QQ,实际上也有Linux版本(虽然口碑很大,但是还有lumaQQ这样的替代产品),Mac版本(口碑不错),iPhone版本了(最近刚更新过,很不错)。
我们甚至看到了上网本这一硬件类别的产生。互联网成了计算机的中心,这很大程度上降低了微软的垄断优势。
3-4年前,切换到Mac OS X的时候,除了招商银行等少数应用以外,没有觉得任何的痛苦。那时候,主要开发服务器端程序,程序的运行环境是Linux,在Mac OS X这个Unix上面开发,其实很方便。
程序员可以在不同平台切换并不重要,重要的是,我们这些程序员的衣食父母已经可以自由的在各种平台上切换了。这就给了我们去尝试Windows以外平台的可能性。
很多人在比较Windows和Mac OS X的时候,有一个误区。因为他们自己是长期的Windows用户,对很多Mac OS X的细节很不喜欢(右键、按钮位置等等)。但是作为一个开发者,要注意的是用户。希望你们设想一个场景,一个从来没有用过电脑的人,他们学习Windows和Mac OS X,他们会更喜欢什么。想更多人会喜欢Mac OS X,如果设想是对的,那么未来是属于Mac OS X的。
2、iPhone以及未来的iPad
iPhone是近10年来,看到的最革命性的硬件产品。虽然他的功能,除了多点触摸、加速度传感器以外,大多数我们都在Nokia和其他竞争者的产品中见到过。用过Nokia2002年的产品7650,iPhone的所有功能它几者好乎都有(没有wifi,但是有gprs),但是用起来跟iPhone就是不一样。
那么区别在哪里呢?05年我买iPod Nano的时候,首弯铅看到盒子的时候,吃了一惊,因为盒子最显眼的地方写的不是“容量:4G”,而是“可以容纳1000首歌,xxx张照片”。这家卖水果的公司突然明白,用户其实关心的是那个叫mp3的东西可以容纳多少歌,而不是从比特的角度,从存储的角度他的容量是多少G。多少G多少M的容量,是实现“容纳多少多少歌”这个目的的一种手段。我们总是太过care手段,忘了我们的目的是什么。
做产品的时候,很多人也是这样。如果你是第一次看电视购物卖手机,也许你就会想把手里面的iPhone扔掉,去买那些垃圾。因为你听介绍的时候,你会觉得全世界最好的手机就在那电视里,叫做“XX全能王”。从功能列表来看,它们简直是世界上最好的产品,但是如果你真的拿到手,你也许会发现那东西3分钟死机,也许什么 *** 作都很慢,也许摔了一下就坏了。那个时候,我估计你会领悟到,功能多当然好。但是功能列表不会包括“不会3分钟死机”,“ *** 作不会很慢”,“摔一下不会坏”。手机,或者任何产品对你最重要的不是功能多,而是好用。
iPhone让我发现原来手机上也可以有这么好用的浏览器。这是个纯技术问题么?不是,要知道Nokia很多手机用的浏览器内核和iPhone毫无二致,都是Webkit。但是 *** 作起来看看,大家知道iPhone出来没有多久,所有网站手机流量最大的就是iPhone了,这不是靠运气啊。我有个Nokia E61i欧版手机,可以用wifi,但是用它的浏览器,实在是不方便,每次都要重新选择wifi,打开网站也很慢,打开了以后,放大缩小也很不方便。
好的体验仅是其一。更重要的是水果公司在iPhone这个产品上开发了AppStore,这是近10年来,我认为在软件行业最重要的一个东西。1976年2月3日比尔盖茨发表了著名的《An Open Letter to hobbyists》(给爱好者们的一封信),事实上开启了商业软件的道路。然而,商业软件从诞生起,就受到盗版的诅咒。从全球看,表面上微软是盗版的最大受害者。没错,从金额上看,是这样的。但是实际上闹明所有的第三方开发者,才是盗版的最大受害者,他们中的很多人因为盗版而丧失了成长为微软这样企业的机会。
AppStore不能完全杜绝盗版,但是它从发行和支付渠道出发(跟iTune Store如出一辙),很大程度降低了盗版对第三方开发者成长带来的风险。很多单q匹马的第三方开发者,凭借做iPhone软件发家(当然一个市场是有容量的,你不能指望它超越自己的机极限)。很多开发Mac软件多年的人,没因为开发Mac软件发家,但是因为移植了一个简单版本到iPhone发了家。据说,因为开发iPhone只能用Mac OS X,这成了近两年对Mac电脑销售最大的拉动。很多人为了开发iPhone程序而购买Mac电脑。
就在这时iPad来了。价格在2000-3000之间的上网本,应该是最近和未来,电脑市场一个很重要的增长点。这个价位可以吸引很多买不起电脑(可能更多是不舍得买电脑)的人。另外,关注上网这个概念简化 *** 作,也可以让很多觉得电脑太难用的人们,来购买电脑。可惜,基于Windows的上网本在用户体验上实在是乏善可陈,往往仅仅是一个屏幕更小的Windows而已。
Windows在PC上面的优势本来有机会拓展到其他平台。在WinCE和Palm,微软实际上获胜了。但是之后就固步自封了,现在iPhone出来了,WinCE实际上已经没有什么大机会了。上网本和触摸设备,本来也是Windows有巨大优势的,但是微软实在缺乏在用户体验方面的努力(你去看看各种基于Windows的触摸查询设备吧,居然需要点一下然后鼠标光标蹦过来,然后才能点!!!!!!!)。
iPad的发布会,并不让人多么惊喜。这是因为iPad和iPhone战略在水果公司是紧密结合的,iPad包含了iPhone的所有革命性,然后把尺寸放大。发布会开到结尾,说到电池时间和价格的时候,我才开始兴奋。
iPad意味着什么?意味着一台便宜的上网本;有电脑的用户也不介意购买一个,买不起或者不舍得买电脑的人可能会买;因为便宜,所以医院和餐馆等可能会购买作为内部管理系统(医院信息系统,点餐系统);学校可以买做教育用途(电子书包)。意味着,我们可以在电脑上面写文档累了的时候,躺在床上抱着它听歌,看看书,玩个游戏。
这个产品如果 *** 作的好的话,可以造就一个比iPhone更大更好的软件市场。
3、Mac OS X是Unix
对于大多数做服务器端开发的开发者,服务器端开发也许就意味着Linux下的C/C++和Java。Mac OS X是真正的Unix(符合标准,有授权,合法的可以用Unix商标)。大多数这类开发,你可以在Mac OS X下做,在Linux下执行。少数涉及到Linux和BSD内核不同的应用,稍微麻烦一点。但是如果你做到这个级别的话,我想你也不在乎了。
大多数基于Linux的开源软件,大多数为Unix架构设计的程序,都可以在Mac OS X下正常工作。虽然有很多软件编译起来,会遇到很多稀奇古怪的问题,但是放心,你在不同的Linux版本间编译的时候遇到的会更多。虽然Mac OS X下面的自动软件安装工具也会有各种各样的问题,但是放心,Linux下的也是。
Unix文化最经典的管道和脚本,Mac OS X也支持的很好。
Mac OS X是一个非常好的平衡,Unix式的命令行、脚本能力它全部具备,而且带有一个非常好用高效的GUI。所以不管你是CLI(命令行界面)控,还是GUI控,你都应该可以玩的很好。
有人问我Mac OS X是不是一个很好的学习Linux的途径。我不得不说,你要是真的玩转了Mac OS X(CLI+GUI)的话,你真的无需去学习Linux,用就是了。尤其是,学习Linux是为了学习服务器管理的人们,真玩转了Mac OS X,Linux有什么区别?
4、开拓你的视野
一段时间以来,我研究自己发展的过程中的瓶颈的时候,发现一切瓶颈都不来自能力,都来自视野,来自于给自己设置的愚蠢的极限。这么说,是因为我发现,我想做一辈子的程序员,而我也乐意学习新的知识,我也确实擅长不停的学习新的知识。
只是每经一个阶段,一旦我发现自己长期没有什么进步的时候,就会发现原因就是我已经不知道前面的路在哪里了。在.net出现之前,我已经是一个微软几乎所有产品的专家(但我不是MVP),我可以不借助ATL自己写Com组件,我写过IE和Outlook插件,等等。但是到了.net时代,我的心疲惫了,我决心不再跟随微软的脚步。
这两年,尤其是09年,做了一些iPhone开发,Cocoa开发(Tiny4Reader),做了些服务器端开发(GinkgoTek.com),我又开始像刚开始接触电脑那样的激情澎湃了。
对大多数纯Windows程序员,Mac OS X的GUI和基于Unix的CLI都是新的天地,哪怕你不真的从事这两方面的开发。在这些领域看到的东西对你的开发都是有利的。
腾讯是一个大家印象中很不注重用户体验的公司(老程序员视角)吧?但是现在QQ已经有了Mac版,iPhone版,而且iPhone版本已经多次打磨,已经是一个相当好用的iPhone应用了。年前我去了趟深圳,见了他们的iPhone开发team,他们很重视用户体验,也做了很多的尝试。而腾讯更多其他平台开发的工程师,也开始更加关注用户体验了。
对绝大多数Windows程序员,关注用户体验的经验和意识都不足,使用Mac OS X有利于提高这些方面的素养。
作为一个经常使用苹果电脑,并且在Mac OS X上做开发的人,一直想找个机会出来说一下,为什么偏爱苹果电脑和Mac OS X。爱苹果,爱Steve jobs,但同时也爱微软,崇拜Bill Gates,他是儿时的偶像。
作为一个以写程序为生的人,Windows对来说一点障碍也没有,基本上知道如何重装,知道如何处理Windows上 的任何问题,一时半会不知道的也能通过搜索引擎知道,知道如何抵抗病毒,保护自己的系统,知道如何在Windows上开发程序,满足老板的绝念需求,坦 白说,在Windows上的工作效率还要高。
总是和朋友说,其实是双痛苦:用Mac的时候,很痛苦,因为用不了招商银行的网上银行,也不能看凤凰宽频,有些应用程序的效率在Mac上实 在是不怎样;
用Windows的时候也很痛苦,习惯了使用Expose的功能,把鼠标甩到屏幕的右上角,但是Windows没有反应,所以是双痛 苦,既了解Windows也了解Mac OS X,很清楚各自有什么缺点和优点。
爱苹果的界面 但是这里有一点要注意――当只用Windows的时候,并不知道Windows的缺点,以为自己生活在一个完美的世界里。
这个逻辑是非常诡谲的:世界上一个完美的东西因为另外一个不完美的东西变得不完美了。
换句话说,原本拥有一个完美的东西,现在拥有的两个东西都是 不完美的。
但是,因此就损失了么。
在换一句话说,退步了么。
答案相反,比以前进步了。
很多人认为Mac OS X最大的不同就是华丽的Aqual界面。
但认为这只是Mac的表面,不足以说明Mac OS X系统的优秀。
实际上经过配置的Linux和Windows甚至能够做到更加华丽的效果。
第2页:爱苹果的简单直接 爱苹果的简单直接 Mac OS X真正闪光和留住用户的是他的设计哲学。
那是简单,尽量不要让一些不必要的概念来干扰用户。
比如Windows软盘是A:、B:,硬盘是C:盘,在Mac OS X上没有这样的概念软盘就是一个软盘的图标,硬盘就是一个硬盘的图标。
用Windows的时候有没有想过,为什么一定要存在A: B: C: D: E:盘这样的概念。
再比如,在没有任何网络设备的情况下,两台笔记本电脑可以通过各自的无线网卡就可以连接,在Mac OS X的 *** 作很简单,就是其中一台创建一个网络,另一台加入这个网络,马上就能看到对方电脑的图标。并雹困
很多朋友说,Windows上好像没有这个功能把,答案 是:有的,Windows是无所不能的,但是Windows下需要一堆的概念,首先要了解无线网卡有两种连接方式,然后是各种网络协议,设置IP,网段 等等……,面对这一堆问题的时肆码候,首先会怀疑自己的愚蠢,但有没有想过,这么多的概念,难道都是必须的。
Mac OS X在整个系统处处体现出这种精神,更少的概念,更简化,更直接的 *** 作,所以Mac OS X没有注册表,Mac机不需要区分是不是交叉线就可以双机互联(为什么一定要让用户去识别交叉线。
)。
以程序员的身份发言 这样的感觉,在做Mac编程的时候更加强烈。
Objective-C是苹果官方的首选语言,它和C++一样是C语言的超集,非常简洁漂亮地在C的基 础上添加了面对对象的特性,没有多余的模板,运算符重载的概念(这些是一定需要的么。
需要的只是面对对象而已)。
在Mac OS X底层Cocoa API中,这种精神得到了更加强烈体现,甚至一条语句就可以实现多线程,MFC相形之下显得非常笨拙,。
Net可以比一下(但仍然概念比较多)。
但别忘 了。
Net和Cocoa不是同一个时代的产品,Cocoa的前身OpenStep早在Java出现之前就有了。
随着Leopard的推出,苹果推出了 Objective-C 2.0, 这是Objective-C多年来的第一次升级,只是小心谨慎的添加了为数不多的几个概念。
第3页:爱苹果的文化 爱苹果的文化 天才就是在别人习以为常的问题上多问了几个“为什么”,这叫独立思考。
欣赏苹果Think Different的文化。
这里理解有两层意思,第一层是Different, 但Different的东西是不是一定就好。
见到很多年轻人标榜自己很Different,“地盘做主”什么的,非常hip-hop,很有个性, 发型很另类,但关键时候人生的选择一来都跑去考公务员了,图个稳定,爹妈也放心云云……这只是Different,没有Think。
Think是什 么。
Think就是独立思考。
比如说,别人讲做公务员工作稳定,独立思考的人就应该想一下,公务员真的就稳定么。
为什么会稳定。
那么年轻,需要稳定 么。
很多人觉得苹果电脑应该是搞设计的人用的,觉得不是,PC的Photoshop今天也很棒,一样可以做出不俗的设计出来。
苹果电脑Mac OS X现在在中国,大多数人是不适用的,主要原因是还没有普遍获得中国软件/游戏开发商的认同,暂时还是少数人的玩具。
但还是有一些人合适,就是那些有独立思 考的能力,喜欢了解新事物,不害怕打破习惯,接受世界不太完美,但希望对世界有更多认知的人,当然还要愿意为了解新事物付一点钱和时间。
原因如下:
1、强大的命令行
命令行有很多功能,如快速、自动化管理系统及处理业务,这消除了开发者对鼠标或者触控板的需求,使开发者能够直接通过键盘输入指令来管理系统。自动化管理系统及处理业务可以让开发者专注于手头更重要的任务从而节省下大量时间。作为Linux的核心组件之一,尽管Linux命令行并不完美但始终保持了终端的纯度。
2、Linux非常安全
由于Linux是开源的由大型开发者社区开发和维护,所以安全漏洞被发现和修复的几率更高。
3、对开发者非常友好
与Windows相比Linux在很大程度旦空上对用户更友好更容易被接受。如Linux有为开发者专门提供的工具,模握瞎所以它在开发者中非常受欢迎。在Linux中,开发者能够拥有编译器、命令行编辑器、几乎可以调整任何内容的能力、以及自己设置快捷方式的能力,并且这一切开箱即用。
4、定期更新
由于Linux是开源的随着人皮慧们发现漏洞、安全缓存和错误脚本,开发者会定期得到大量的更新,这就是Linux用户的主要优势之一。
5、社区支持
Linux社区致力于服务所有的Linux用户,因此它将提供长期的支持。Windows社区却与Linux不同,Windows社区却与Linux不同,Windows社区之前停止为Windows7用户提供支持,因此如果开发者在Windows7中遇到任何问题或数据泄露的麻烦都将无法联系到帮助中心。但当Linux用户遇到麻烦时,可以在许多地方寻求帮助,比如:Twitter、Linkedln、Forums或重要的Stack
Overflow。
6、功耗更低
Linux所消耗的计算机资源量非常少。如果你有一台规格较低而不能工作的老旧电脑,那么在这台设备上安装Linux,它就可以恢复运作且运作得很好。众所周知使用Windows系统需要更强大的硬件。然而随着 *** 作系统的发展支持硬件的旧电脑可能会过时,因为它将不再支持旧硬件。
7、隐私性强
Linux不会收集与任何人分享用户的信息。用户甚至可以关闭收集数据的开发建议,如果打开,也只会提供给Linux的开发团队。
8、完全免费使用
Linux已经发展成为世界上最可靠的计算机生态系统之一。当你把这种可靠性与免费使用的事实结合起来,你就拥有了理想的桌面平台。如果你想使用Windows,那你要么去购买它,要么使用破解版本,但Linux却不需要你这么做。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)