`
robbin
  • 浏览: 4799340 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
377a9ecd-1ea1-34ac-9530-9daa53bb2a7b
robbin谈管理
浏览量:135749
社区版块
存档分类
最新评论

我为什么鼓吹facebook,为什么唱衰OpenSocial?

阅读更多
OpenSocial只不过是Google的公关骗局发布以后,好像捅了马蜂窝,我看有人说我在给facebook写软文;有人说我在扯淡,有人说我根本不懂OpenSocial,不一而足。总的感觉是国内开发人员对facebook的了解太少,对Google又崇拜的丧失了起码的判断能力和怀疑精神,其实我自己也算是一个G粉,用Google Search,Gmail,Google Docs,Google Reader。

我为什么鼓吹facebook?

经常关注我的人应该知道,我从去年下半年就开始推崇facebook,时不时发表一些关于facebook的评论,到现在也快一年了。在这么长的时间里面,我断断续续花了不少时间了解facebook网站和facebook平台。但是我发现一个奇怪的现象:虽然这一年来facebook经常是互联网媒体上面的焦点,但是似乎国内的开发人员从来没有想过要去研究一下它,以致于我现在发现很多拉着我和我争辩OpenSocial的人,对facebook都缺乏起码的认识。我觉得对于那些ruby on rails程序员来说尤其不可以原谅,因为facebook平台支持的所有API当中,用RoR去开发facebook app是最简单的事情,有现成的插件做了良好的封装,你只需要处理一下登陆验证,注册一下api key和callback URL就全部弄好了。

1、从网站运营的角度来看,facebook是网站成长的翅膀

一个网站站长运营网站最困难的问题是什么?是推广!特别是在网站刚刚成立不久的时期,你怎么让更多人了解你的网站使用你的网站这是一个非常困难的事情。即便是很多已经很成功的网站,在早期的推广过程当中也是很幸运的遇到了非常好的机遇,才得以迅速成长起来的。推广是网站早期发展最大的瓶颈。但是由于有了facebook,你的网站推广就迎刃而解了。我来举个例子:

http://friendfeed.com

friendfeed是现在国外非常火爆的一个网站,可以订阅朋友的最新消息和动态。那么你说friendfeed当初是怎么推广的呢?怎么才能迅速积累这么多用户的呢?其实很简单,就是去注册成为一个facebook app就行了。所需要的额外开发工作量只是简单的登陆验证,用以和facebook实现统一认证而已,极少的代码量,如果在RoR里面,只是几十行代码的工作量。

好了,当friendfeed把自身的网站注册成为一个facebook app以后,在facebook里面的7000万注册用户就可以在facebook里面添加这个app,成为自己在facebook里面的一个tool来使用了。也就是说作为一个用户,你既可以在facebook里面使用friendfeed,你也可以直接访问friendfeed网站。例如我就是通过facebook才知道friendfeed,进而在facebook里面添加了friendfeed的账户,现在我往往直接访问friendfeed,而不见得每次都通过facebook访问friendfeed。

我们想想看,如果friendfeed不借助facebook平台的威力,他自己一个用户一个用户的去推广,他需要花多少推广的费用,需要发展多少年的时间?而通过facebook平台的威力,你就可以迅速成长为一个大网站。friendfeed具体的用户数字我不知道,facebook平台上面的Friend for Sale这个app的数字是三个月时间从零增长到每天1000万PV,60万注册用户,而仅仅是两个人在业余时间开发出来的网站。作为一个对比,JavaEye网站用了5年时间发展了15万注册用户,每天80万PV。这就是自己积累用户,和借助平台发展网站的巨大差别。

有了facebook,你做网站根本就不需要操心网站推广的问题,你只需要下功夫把网站功能做好就行了,插上了这样的翅膀你还担心网站发展不起来吗?

2、从商业回报角度看,facebook让你创业赢利变得很容易

前面提到了Friend For Sale这个app,两个人业余开发的,但是为了支撑每天1000万PV的访问量,他们买了12台服务器,请了DBA顾问,租用了一个机柜和100MB独享带宽,然后他们两个人辞职自己成立了公司。这些钱都从哪里来?很简单,就是广告费!他们在friends for sals里面嵌入了banner广告,访问量越大,点击量越大,赚钱越多。1000万PV是什么概念?在中国的网站里面差不多可以排进前50名的网站。

facebook开放平台以后,到现在一年多涌现了24000个app,这就相当于有24000个网站把他们的访问入口点注册到了facebook这里,从facebook这里分享网站流量、用户和广告,也就是说facebook现在养活了24000个网站,这24000个网站要依靠facebook来混口饭吃。这一成就是Google,Microsoft到现在都没有做到的,Google赚钱也只是自己一个公司赚到了钱,而facebook赚钱,则是让一整个网站产业链都赚到了钱。这就是为什么有那么多网站要到facebook去注册app,为什么有那么多公司要专门给facebook开放app的根本原因。在这一点上面,只有阿里巴巴有点像,他也是和很多很多网商的切身利益捆绑在了一起,我觉得这种制造一个产业链的网站才是真的很难被击败的,因为你要击败的不是一个网站,而是千万万万个利益绑定在一起的网站。

我们试想一下,如果全球有几十万个网站都注册了facebook app,从facebook那里分享流量、用户和广告的话,这个互联网究竟是谁说了算? 当然谁是衣食父母谁说了算。即便facebook崛起之前,Google也没有统治互联网,网站并不受Google的直接威胁,但是facebook对网站的控制力要超过Google,这一点很好理解:用户通过Google搜索快速进入网站就脱离了Google的控制范围,但是通过facebook访问app,则一直在facebook的控制之下。

从今年年初开始,我就一直在说,现在最好的互联网创业就是开发facebook app,特别是开发一些web game类型的app,很容易就积累大批用户了,你有一个好的创意和好的开发执行力,已经可以成功了,大伙看看现在facebook上面火爆的火炬接力这个app就可以明白。

我为什么唱衰OpenSocial?

有人说我只研究了一个晚上的OpenSocial,没资格否定OpenSocial,说我根本不了解OpenSocial可以跨域进行AJAX调用,胡乱下结论。

1、从技术角度来说,OpenSocial限制的太死

其实我不需要学习OpenSocial一个月才能下结论,我只需要确定一点,即OpenSocial本质上是在用户的浏览器端通过JavaScript来运行,这就足够了。那些做过复杂企业应用,特别是用EXT/dojo做过One Page One Application应用的人,应该比我更清楚用纯AJAX做网站,和传统的服务器端web方式究竟有什么不同吧。

理论上来说,AJAX调用可以完成大多数网站服务器端同样的功能,如果开发商自己架设服务器,在widget的JS里面调用自己服务器暴露出来的服务的话,也可以做很多事情。但问题是成本不一样,用户体验不一样。

打个比方来说吧:eBay网站扔掉全部的JSP页面和Web框架,全部都改成静态页面,只在服务器端通过DWR提供AJAX调用接口,然后静态页面里面的 JS在浏览器端执行,通过DWR调用服务器端的服务,全部页面渲染都在浏览器端完成。最后做成一个One Page One Applicaion的网站。

你说从程序角度有没有实现的可能性呢?答案当然是可以,但问题是eBay不会这样去做,任何一个成功的互联网网站都不会这样去做,因为这样做其开发成本太高,其用户体验太差,只有一些操作非常复杂的企业应用才会采用这种OPOA方式。

OpenSocial 要做复杂的交互性应用,他也只能通过这种One Page Oone Application方式,这种方式是非常受限的。如果说Facebook给了开发人员无限的可能性,仅仅要求你实现登陆验证的话,那么OpenSocial则个开发人员施加了强大的限制,逼你只能在JavaScript里面翻筋斗,练梅花桩,其结果就是很多创造性的应用无法实现或者很难实现。事实上我现在看到的稍微复杂的高交互式OpenSocial应用示例都是用flash做出来的。你都被逼得用flash的时候,那就已经是另外一回事了,和OpenSocial没啥球关系了。你不用你OpenSocial,我一个flash也可以随便哪个网站去部署没一点问题。就是JavaEye的发贴也可以嵌入flash,是不是也可以算一个OpenSocial容器阿?

2、从网站运营角度来说,OpenSocial不能给开发商带来推广效应

还是拿friendfeed举例,我们设想一下,friendfeed怎么去使用OpenSocial才能带来同样的好处呢,答案是impossible!

friendfeed 必须按照OpenSocial的规范去写这样一个XML文件,把这个XML文件发布到某个OpenSocial容器网站,例如MySpace上面去。好了,现在问题来了,MySpace的用户能不能仅仅通过MySpace页面嵌入的这个friendfeed的widget来使用friendfeed网站的全部功能呢?答案当然是不可能,除非Friendfeed的开发人员在这个xml里面用JavaScript来重写一遍整个friendfeed网站的功能,嘿嘿,用一句通俗的话来说就是: 你必须把一头大象给我装进冰箱里面去。

3、从商业利益角度来说,OpenSocial无法保护开发商的利益,代码剽窃没有任何障碍

OpenSocial开发出来的gadget是在XML里面写JS和HTML,而这个XML还是一个在互联网上面可以访问到的URL,不需要任何授权就可以访问,这等于是代码完全暴露在光天化日之下。我们可以假设一下,某个公司投入研发力量开发出来的一个优秀的gadget很受欢迎,在很多OpenSocial容器网站都有很多人使用,那么一个很可能出现的后果就是别人可以把你的源代码直接拿过来,稍微改改,也发布为一个gadget去赚钱,而你没有任何办法去阻止他。

有人会说,我的gadget会通过AJAX调用我自己服务器的资源,你抄走了gadget,抄不走我服务器提供的Web服务,那我就要说了,如果你的gadget真的有商业价值,别人直接拿走你的gadget代码,然后自己架一个服务器,把你提供Web服务的接口也实现一遍,这并不什么困难的事情,而我相信一个有商业价值的gadget,在gadget本身的研发投入已经非常巨大了,这些投入被别人白白的拿走,毫无障碍的利用OpenSocial网络到处发布,一定会对你造成巨大的商业损失。

所以一个稍微有点理智的开发商,都必须慎重考虑投入到OpenSocial是不是值得的问题。


4、从商业模式的角度来说,OpenSocial无法形成一个简单有效的价值链,忽视了app开发商的利益

facebook的商业模式是简单而清晰的,参与商业博弈的就是facebook和app网站,1:n的关系,而且是利益共同体,互相依存。但是OpenSocial的商业模式参与博弈的关系过于复杂,是一个m:1:n的网状关系,m彼此之间还有强烈的竞争关系,而n和m的对应关系还不是线性的,你需要针对不同的m开发不同版本的gadget,而这个1是Google,他还分别和两边发生关系。我们知道商业模式越简单越有效,这个商业模式当中环节实在太多,而且彼此相互制约,哪一个环节出了问题,整个商业模式就走不下去。这一点在前面文章当中已经分析过了,不详细剖析了。总之关于这个问题我只想强调一点:

别看facebook平台上面有那么多活跃的开发商贡献app好像花团锦簇的样子,你深入研究一下facebook的app就会发现,facebook上面真正火爆的app根本就不是程序爱好者写的,全部都是专门的公司开发出来的。

你做开放平台,永远也不要指望软件开发人员作为业余爱好给你开发app,指望像开源社区那样踊跃的程序员贡献者,这些东西根本就不靠谱。真正靠谱的就是你的开放平台本身是具有商业价值的,能够给开发商带来商业利益,那么自然就会吸引大批的公司、网站和创业者专门给你开发app。而facebook之所以能够有今天,也就是因为这个原因。

Facebook战略之所以正确,是因为他从一开始就是立足于让app开发商赚到钱,所以app开发商就会趋之若鹜、前仆后继;而OpenSocial战略从一开始就是错误的,是因为Google搞OpenSocial的出发点不是让app开发商赚钱,而是让app开发商可以实现:“开发一次,处处部署”。

OpenSocial这个出发点就错了:只要能让我赚到钱,别说开发一次了,让我开发n次都愿意;但是赚不到钱的事,你就别指望我白白给你开发了,所以说程序员开发量多大根本就不重要,重要的是你Google有没有为app开发商设计有效的赚钱方式。而遗憾的是OpenSocial整个战略的侧重点都在拉拢SNS网站对抗Facebook上面,根本就没有关注app开发商的利益。所以现在的OpenSocial对于开发商来说,没有任何商业吸引力,你光指望在程序员社区推广推广,搞搞编程大赛,拉几个程序员作为兴趣爱好给你开发gadget,不如趁早洗洗睡了吧。

109
15
分享到:
评论
21 楼 lishali12345 2008-06-21  
分析得确实很到位啊!至于是否正确,时间会给一个判定。
不过我还是非常支持的!
确实是从一个商业投资的眼光来分析的!
20 楼 fyting 2008-06-21  
这么一说,跑去一看,发现Open Soical果然和之前的Gadgets很相似,看文档……
http://code.google.com/intl/zh-CN/apis/gadgets/docs/dev_guide.html
19 楼 zhengshina5 2008-06-20  
一切只不过是浮云,去注册个facebook吧,一次注册你就不想用了,验证码,看不懂,网页刷新N慢,

as3lib有的时候还有点小问题,不过找找就行了,

验证比较复杂了点。
18 楼 robbin 2008-06-20  
to sakinijino:

你好!感谢你详细的回复,让我对OpenSocial了解了更多从别的途径无法知道的事情。我申请过orkut的开发者账号,还没有批下来,所以没有机会在orkut上面开发gadget,而iGoogle又太简陋。不过从我目前对OpenSocial文档阅读下来的感觉是,我个人从技术上面不喜欢这个东西,认为他给开发人员施加了过多不必要的限制,而且从商业前景上面来说OpenSocial整个战略极度不看好。

当然OpenSocial技术本身并非一无是处,说OpenSocial是公关骗局也不过是借用已有的说法,我不介意用比较夸张的标题,目的自然是吸引真正对OpenSocial和Facebook了解的人参与讨论,所以看起来这个目的达到了。



17 楼 sakinijino 2008-06-20  
robbin,

不好意思,刚才把你的id打错了。

怎么说毕竟OpenSocial现在是一个还在发展的标准,所以其实社区里已经有一些约定的做法,或者说事实规范,只是落到文字上的规范没有跟上。所有的规范都有这个问题。而对于我刚才说的那一点,至少现在已经支持opensocial的myspace、orkut、hi5的做法是一致的,而且这个只是对gadget规范里appParams的一个延伸。

当然我不认为opensocial各个实现能完全一致,所以对于所谓“一次编写,到处运行”这个承诺是不可能实现。我想这个的看法我们是一致的。如果你因为这个质疑opensocial是对的,但是你现在质疑的是opensocial的能力,而且质疑的比较夸张,认为它一无是处。

至于动态生成xml,也没有你说的opensocial代码生成器那么夸张,实际上opensocial的xml除了头部之外,和普通的html文档很像,这在ror中用一个layout就可以处理掉。而我不了解你所谓的fb直接整合的方式是什么样的,就我所知fb也需要动态生成fbml。

myspace、hi5和orkut的opensocial container都已经开始使用了,虽然应用的数量和质量上和f8还是天上地下。

至于忽悠的问题。至少myspace、hi5并不是只是宣称加入,而确实已经在实施opensocial container,并把它作为自己的开放平台。显然如果opensocial的能力不够的话,myspace即使在面子上照顾google,但实际也会推出自己的能力和f8相当的container,而事实上他没有这么做。

我并不是觉得opensocial比f8有多好,实际恰恰是它可能不如f8。但是如果你说他一无是处,只是一个骗局,未免太偏激了一点。而且即使是从现在的使用情况来看,说opensocial的gadget只是一个xml离app差十万八千里,这么说是不对的,可能会误导社区里的人。

毕竟虽然f8有种种好处,但是我们还是需要竞争。随便说一点,是想如果没有opensocial,fb绝对不会放出自己f8的源代码。
16 楼 robbin 2008-06-20  
引用
建议你应该可以去注册一个orkut,试一试那上面的应用,比如ilike,看一下他是怎么做的。然后你可能会改变你的观点。


我还没有orkut开发人员账户,如果啥时候能弄一个,会试一下。

引用
你关于“OpenSocial本质上是在用户的浏览器端通过JavaScript来运行”这个观点是错的,你可以认为opensocial只是一个xml,但是这个xml是可以根据请求参数的不同在后台动态生成的——orkut上的ilike就是这个做法。所以你所谓的One App One Page并不存在,所以也不需要把“大象”放在冰箱里。而因为xml是可以在后台动态生成的,所以代码剽窃的问题也不会比现在的ajax更严重。


如果这个xml可以根据请求参数的不同进行动态生成的话,我有四个问题请教:

1、为什么OpenSocial官方文档没有这方面的说明?这是OpenSocial标准的一部分吗?
2、请求参数和xml内容是什么样的对应关系?如果是开发商自己定义而不是OpenSocial的标准,那么OpenSocial的通用性立刻就丧失了,所以还是第1个问题
3、如果xml根据请求参数动态生成的话,开发商势必要自己写一个请求处理器来动态生成xml,那么开发商就不是直接针对OpenSocial编程了,而是编程创造一个可以生成OpenSocial的代码生成器,然后再用这个代码生成器动态生成OpenSocial的gadget,那么你不觉得这样搞法太复杂了点吗?
4、如果xml可以动态生成的话,为什么不像facebook那样直接整合,非要搞得这么复杂?

引用
无论你是看空opensocial看高fb的观点是否正确,你得出这个结论的技术基础是错误的。并不是说只看了一晚上opensocial就没资格否定opensocial,关键是这种否定的道理是否正确。


现在说我下结论的技术基础对错还早了一点,OpenSocial的标准文档我都看了一遍,并不能证明我说的是错的,而现在的OpenSocial容器们还没有正式发布,再等等看就知道了。

引用
另外即使google可以考洗脑忽悠很多人,但是他也不可能靠一个简单widget就忽悠myspace、hi5、linkedIn等等这些所有站点。


即使不被Google忽悠,也不需要表现出来非要和Google过不去阿。假设Google找上JavaEye的话,我也很愿意成为Google OpenSocial的联盟成员,替OpenSocial摇旗呐喊一番,毕竟这种好处是可以看得见的,得到了Google的资源支持,还出了一把风头,免费推广了自己的网站,这便宜干吗不沾? 但暗地里我并不需要把自己的身家都赌到OpenSocial上去,找几个程序员开发一个差不多的容器,应付一下Google不就行了?至少在我看来,目前很多宣布支持OpenSocial的SNS网站都是虚以为蛇、首鼠两端的态度,所以你怎么知道他们就被Google给忽悠住了呢?

15 楼 rubynroll 2008-06-20  
引用
如果校内网(号称中国的facebook)推出自己的平台,....

我倒觉得腾讯是最有资源成为中国的facebook,要是有朝一日腾讯开放QQ数据库API,那会踏破门槛.
14 楼 sakinijino 2008-06-20  
robin,

建议你应该可以去注册一个orkut,试一试那上面的应用,比如ilike,看一下他是怎么做的。然后你可能会改变你的观点。

你关于“OpenSocial本质上是在用户的浏览器端通过JavaScript来运行”这个观点是错的,你可以认为opensocial只是一个xml,但是这个xml是可以根据请求参数的不同在后台动态生成的——orkut上的ilike就是这个做法。所以你所谓的One App One Page并不存在,所以也不需要把“大象”放在冰箱里。而因为xml是可以在后台动态生成的,所以代码剽窃的问题也不会比现在的ajax更严重。

无论你是看空opensocial看高fb的观点是否正确,你得出这个结论的技术基础是错误的。

并不是说只看了一晚上opensocial就没资格否定opensocial,关键是这种否定的道理是否正确。

国内的开发人员也有很多关注facebook。而支持不支持opensocial和g饭没关系。另外其实我想其实很多人包括我在内都支持fb,毕竟google已经越来越像当年的ms了。

另外即使google可以考洗脑忽悠很多人,但是他也不可能靠一个简单widget就忽悠myspace、hi5、linkedIn等等这些所有站点。

技术讨论,如果你看到前几天某一篇回复的blog写得有些阴阳怪气,十分不好意思。
13 楼 天才阿昭 2008-06-20  
十分赞同facebook部分的说法
12 楼 ftmouse 2008-06-20  
老大每次分析都如此到位,领教了。有机会自己试试看
11 楼 arkxu 2008-06-20  
haha, robin,

  完全支持你的观点。我在杭州参加侠客行,天极网的cto讲了Open social。听下来第一个感觉和你的这两篇文章完全吻合。毕竟google只做过iGoogle的Widget,没有做过social network,属于半道出家而又特别喜欢定标准但却不了解需求。
  facebook确实让google有些不知所措又乱了正交。google可以读懂机器而facebook可以读懂人。是挺可怕的。
10 楼 泡泡 2008-06-20  
Robbin说得有理,等一两年后,就能看到你的判断的最后结果。
9 楼 王者之剑 2008-06-20  
这个还需要讨论吗?
奇怪。
OpenSocial和facebook天生就不是差了一点儿半点儿,如果还想后起直追,我想就是瞎子赶婆娘,越赶越远。
8 楼 xiuxiuxiu 2008-06-20  
嗬嗬,在facebook上作了自己的一个application.
fbml感觉还不够完整,但是profile box, action ,feeds这些切入点确实很能吸引人.

不过总体感觉还是idea称王,
哎哎,没啥好创意,我的application也就1,2个朋友称称场面了....
7 楼 shomaru 2008-06-20  
写的很好
我这个不懂的人也基本看懂了。。
6 楼 yylu 2008-06-20  
参加了今次google的开发者会,OpenSocial的确如robbin所说,对程序员或参加OpenSocial的双方都帮助不大

使用OpenSocial的各个方面都没有利益,没有利益驱动怎么行呢?那个weight感觉就像一个小玩意,自娱自乐一下还可以
5 楼 linchanx 2008-06-20  
很精辟,支持一下
4 楼 JerryZheng 2008-06-20  
robbin,我有点好奇javaeye会在facebook vs opensocial中怎么做:
现在facebook推出了简体中文版,你会将javaeye作为一个app发布在上面吗?
如果校内网(号称中国的facebook)推出自己的平台,你会将javaeye作为一个app发布在上面吗?
你会针对支持opensocial的社区的某些特定版面(IT)上面开发javaeye的widget提供某些服务提高流量吗?
3 楼 avaj 2008-06-20  
精辟,利益是永恒的主题。从商业回报这个角度看,的确是很有说服力!

佩服。
2 楼 boogie 2008-06-20  
问题是facebook在国内会不会有个好的发展,毕竟中国的社会环境不同于美国。

相关推荐

Global site tag (gtag.js) - Google Analytics