Tinyfool的Blog

这就是我,Tinyfool,郝培强!身高180,体重240,标准的中年老胖子。 有妻有女,无房无车,现居上海,程序员。

Browsing Posts in 文化

昨天,诺贝尔和平奖颁给了刘晓波。Twitter上面群情激愤,我在办公室还开了瓶红酒,当然一起来喝的人倒也不多。临下班的时候我遇到了一个曾经在Twitter上面也很活跃的同事,他现在只上新浪微博,他对诺贝尔和平奖的事情一无所知,对我说的事情很茫然。

这让我想起了我们时时面对的人生选择,红丸还是蓝丸。在我看来,只上新浪微博,腾讯微博就是蓝丸,你可以忘记一切痛苦,娱乐致死,其实也未尝不好。但是,我终究不能放弃我内心的自由,无内心自由的活着,哪怕没有任何生命危险,没有任何实质伤害,我也无法忍受。

那么红丸呢?我也不想选择。红丸就是刘晓波这样的人的选择,内心无比自由广阔,但是身体只能被关在锦州的监狱里,11年,我人生已经浪费了31年,没有更多11年可以来浪费了。我赞赏每种伟大的情怀,但是选择自私的活着。

问题在哪里?一个好的国度,不应该让他的国民面临这样的两难选择。所以,我说过无数次,我还要继续说下去,我迟早要移民,5年后,一定会实施。然后,我会吞下蓝丸,让内心彻底自由。虽然,在昨天,无比欢乐下,我说过,我不那么想移民了。

其实我觉得大多数人都可以看看编译原理,当然我跟真正的牛人不一样的地方是,我很杂,无专精,且好读书,不求甚解(不是诸葛亮陶渊明那种,就是真的不求甚解)。

我最早接触电脑是在朋友的家里的小霸王学习机,里面有个logo语言,很喜欢。后来家里也买了个学习机,但是里面没有logo,只有basic,所以我就用basic编自己的logo语言,那是高中,住校一个星期才可以玩一次家里的学习机,所以,我只好在纸片上写程序,到了周末回家输入进去,写了一个还算能解释点基础logo语法的东西,有上百行,在一个不能存盘(垃圾的学习机)上面输入很麻烦,后来其实也就是玩了一两次,打一遍实在是太累了。

后来才知道有编译的语言,因为不懂汇编,死活不明白编译是在做什么。

后来自己仔细的去想也没太想明白,不是科班出身,也不知道有哪些科目要学,自然不知道世界上还有编译原理这东西。当然后来有了网络,在论坛里面当小白当多了就都知道了,买了本看了看热泪盈眶啊。

后来我去金远见做上班,同宿舍的lee就是文曲星上面很流行的lava(类C,可以编译成6502汇编)的作者,他是科班出身,不过能写出lava在当时也是很牛的事情,有一次出门买书,我给他推荐买的龙书,他好好看了看,貌似又改进了下lava。

后来我也没有再做过自己的语言,就是学着写个代码高亮之类的东西,看编译原理最功利的作用无非是懂了正则表达式的原理。

有时候科班的孩子很让人无语的,我公司原来有个下属,是比较著名的学校的科班生,而且他们学校有信息检索的国家重点实验室。我们做Lucene生意的时候,他一直不明白Lucene是个什么玩意,我给他从原理讲起仔细的讲了一遍,过了很久,他才恍然大悟,原来就是他们学过的信息检索啊。

Google Wave真是得天独厚,它是世界最牛的网络公司Google的产品。

一年前,Google Wave的演示出现在Google I/O后,马上就红遍了整个Geek圈。有人预言它将成为Email的替代品,有人预言它将彻底改变我们的生活,有人说它让所有其他协作工具黯然失色。

刚开始支持邀请注册,它就引发了狂潮,Twitter上天天都有人在求邀请码,谷奥甚至设计了一个邀请排队系统,至少有7000多人曾经在这个系统里注册过。

我从小规模邀请阶段开始试用Google Wave。那时候最大的烦恼是人少,很长一段时间,我通讯录里面一个人都没有。

但不久,Google Wave就火了,人们慢慢地从各种渠道获得邀请码,我的所有好友都出现在Wave中,经常有人ping我,经常有人把我加到他的Wave里。

“哈,又一个Gmail式的营销神话诞生了!”我当时这么想。

然而,一切喧嚣过后我发现,Google Wave里面有无数Wave,大多数我都没有兴趣打开,更谈不上参与。而我参与的所有Wave都有上百人,每个人都留了一句或者几句话。打开Google Wave慢得要命,打开那些很热的Wave更慢。

慢慢的,我不再想打开Google Wave,即使有通知告诉我,我最好的朋友邀请我加入了一个Wave。我甚至不想去想这个东西。直到最近我听说Google Wave已经被Google放弃,即将关闭。

某年春晚,陈佩斯扮演的主角,看到迎面而来的高大英俊的叛徒朱时茂时,不禁感叹道“我以为只有我这样的才能当叛徒,原来你这浓眉大眼的也当叛徒啊!”

是啊,那么,浓眉大眼的Google Wave怎么也会死?

它不够简单。每个人看它在Google I/O演示的时候都会说,“太酷了,就是我想要的”。没错!它太酷了,它可以像Email那样发给别人,可以所见即所得地编辑,它可以多人协作,它可以装上各种的插件。从演示中,我们可以看到它可以用来下棋,填调查表,可以协作写文章,可以用来商量聚餐的地点等。但是,酷不是生产力。虽然它每次亮相都可以引来“哇!”声一片,但是当用户开始使用它的时候,巨大的挫折感就会迎面而来。它的概念太复杂,直至今天,里面的一些概念我还弄不明白。它的界面太复杂,一堆窗口,看上去像Mail,操作上去却又不完全一样;一堆按钮,完全没有办法记住,也不好选择。于是我们的Wave收件箱里面充斥着各种试图跟演示的Wave们一样酷,但是怎么都做不到那么酷的东西。

它多次让我想起OLE技术,当年微软推出它的时候,每个人也都是相当的震撼。人们经常把一个BMP图片扔到Word中,在旁边写几个字,然后双击BMP,当看到会自动打开一个嵌入在文档中的画图软件,就会很高兴地随笔画上几画,然后关闭全部文件,心想这是多酷啊!那时候的Geek们奔走相告,现在我们可以在Word文档里面嵌入一个国际象棋游戏了。虽然OLE技术一直没有被完全抛弃,但是有几个人真正地在用它?当文档变成了一个游戏的容器后,那它还是文档吗? 我无意回答这个问题。

但我相信OLE的道路,Google Wave的道路将来还会有无数的厂商去重复。毕竟更多功能,更炫,看上去更美是每个厂商都不懈追求的。

但是,在他们更多去倾听用户的难处,更精雕细琢、更懂得取舍之前,这样的梦想是无法实现的。

本文曾发表于《程序员》杂志10年09期。

一段时间以来,开发者的圈子里面,有很多对苹果公司,以及iPhone OS平台(包括iPhone、iPod touch、iPad)批评的声音,主要是批评这个平台不开放。有些批评是很诚恳的,直击要害的,而有些完全是空穴来风,以讹传讹。

首先,开放不是一个简单的概念。

在智能手机出现之前,手机上的操作系统往往是制造厂商私有的,上面的软件往往是内置的,只有制造厂商才能开发上面的程序,而且大部分机器根本不支持安装新软件。这才是真正的封闭。

有了智能手机后,虽然有大量的平台和语言我们可以选用,但是实际上并没有形成蓬勃发展的应用程序市场。

J2ME曾经幻想给手机应用市场带来繁荣。但实际上,一方面,为了保证兼容性,J2ME放弃了很多功能,性能和应用场景也大大受限,很难开发出让用户使用方便而且功能强大的程序。

而在另外一个方面,它没有比较完善的界面和操作方面的标准,支持了各种形形色色的手机之后,实际上的兼容性又完全无法得到保证,很少有程序可以真的完美支持多款手机,尤其是游戏类应用,真正地做到兼容多款手机的凤毛麟角。

Nokia坚持了S40和S60的两条战线,在标准化和产品多样性上做到了比较好的平衡。曾经被认为是手机应用市场的救星,然而这10年来,Nokia的手机虽然外观日新月异,但是软件和操作系统方面的改进乏善可陈。而且Symbian系统开发难度一直过高,Nokia也没有在Symbian平台发展势头最好的时候推出类似AppStore这样的商业模式出来。所以,在iPhone出现以后,大量有志于移动开发的开发者,开始放弃Nokia和Symbian平台。

现在不管是从各平台手机应用的数量、质量,以及开发者的收益来看,我们都可以说是苹果推出iPhone是手机应用市场真正繁荣的开始。

当然毋庸置疑,苹果在某些方面确实很封闭。但是,我并不认为这完全是坏事儿。

软件行业未来的图景,不应该只有开源软件,只有商业软件,或者只有AppStore下的软件。这三种不同的模式,互相之间形成了非常良好的补充。

在iPhone/iPod touch和iPad这样的特定领域里,AppStore模式的威力惊人。去看看苹果财报你就会知道这开辟了多大的一个第三方软件市场。智能手机这个概念出现快10年了,从来没有一个平台上,聚集了这么多的第三方开发者,这么多的免费和付费的优秀应用。以前,第三方开发者当然也在赚钱,但是以这样规模和形式聚集在一个平台下,是前所未见的。

假设iPhone OS平台一切都不变,只是去掉AppStore,我们会发现,很多现在已经发财了的第三方开发者,他们还仅仅是在梦想发财而已。所以,一定程度上的封闭也不见得是万恶之源。

正是因为在应用发行的时候,严格的需要苹果公司签署的开发者证书,最大程度地防止了盗版,使得各种付费应用的销量得到了保证。也正是因为有了被很多人诟病的,甚至可以说过于严格的质量审核,才保证了AppStore内的程序都有一定的质量水平,这样就会让消费者喜欢在AppStore里面寻找和购买更多的程序。

更何况,苹果公司在未来的图景上,只是绚烂的一块,不是全部。开源/商业/AppStore三种模式,我认为在未来各有所长,也会各得其所。

我多次强调,喜欢开放的人,心态更要开放。要允许这世界有人不想开源,不想开放,这才是开放的心态。你热爱CopyLeft,你大可以把你的代码都开源了。但是CopyLeft的精神绝不包括强迫别人开源(受授权限制则令当别论)。

我也认同源代码开放的精神,自己也在维护开源项目,但是做这些开源项目,和我做iPhone这样的相对封闭平台上面的项目,完全没有产生任何的冲突。

我乐见在未来开源/商业/AppStore三种模式,各显神通,都蓬勃发展。事实上,开源兴起,并没有杀死商业,反而扩大了我们整个软件行业的视野和疆域。App Store也具有类似的作用,我期待它给我带来更多的惊喜。

本文曾发表于《程序员》杂志10年06期。