- 浏览: 4821598 次
- 性别:
- 来自: 上海
博客专栏
-
robbin谈管理
浏览量:137077
文章分类
最新评论
-
xly1981:
领导者是团队的灵魂。深入一线的过程,包括代码review,能帮 ...
robbin谈管理:改造团队的经验(2) -
jiehuangwei:
像这种总结比较性的ppt文档可以多发啊
Web并发模型粗浅探讨 -
linux1308:
看完学习到了很多东西,感谢推荐!
推荐一篇很好的RoR部署方案性能评测 -
zweite:
直接对搜索的结果进行缓存是不是会更快一点呢
漫谈应用缓存的命中率问题 -
kaogua:
现在已经是ruby2.0了, 不知道这个的效率是怎么样的, 是 ...
Ruby作为服务器端应用已经成熟了
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,不如趁早洗洗睡了吧。
我还没有orkut开发人员账户,如果啥时候能弄一个,会试一下。
如果这个xml可以根据请求参数的不同进行动态生成的话,我有四个问题请教:
1、为什么OpenSocial官方文档没有这方面的说明?这是OpenSocial标准的一部分吗?
2、请求参数和xml内容是什么样的对应关系?如果是开发商自己定义而不是OpenSocial的标准,那么OpenSocial的通用性立刻就丧失了,所以还是第1个问题
3、如果xml根据请求参数动态生成的话,开发商势必要自己写一个请求处理器来动态生成xml,那么开发商就不是直接针对OpenSocial编程了,而是编程创造一个可以生成OpenSocial的代码生成器,然后再用这个代码生成器动态生成OpenSocial的gadget,那么你不觉得这样搞法太复杂了点吗?
4、如果xml可以动态生成的话,为什么不像facebook那样直接整合,非要搞得这么复杂?
现在说我下结论的技术基础对错还早了一点,OpenSocial的标准文档我都看了一遍,并不能证明我说的是错的,而现在的OpenSocial容器们还没有正式发布,再等等看就知道了。
即使不被Google忽悠,也不需要表现出来非要和Google过不去阿。假设Google找上JavaEye的话,我也很愿意成为Google OpenSocial的联盟成员,替OpenSocial摇旗呐喊一番,毕竟这种好处是可以看得见的,得到了Google的资源支持,还出了一把风头,免费推广了自己的网站,这便宜干吗不沾? 但暗地里我并不需要把自己的身家都赌到OpenSocial上去,找几个程序员开发一个差不多的容器,应付一下Google不就行了?至少在我看来,目前很多宣布支持OpenSocial的SNS网站都是虚以为蛇、首鼠两端的态度,所以你怎么知道他们就被Google给忽悠住了呢?
我倒觉得腾讯是最有资源成为中国的facebook,要是有朝一日腾讯开放QQ数据库API,那会踏破门槛.
我为什么鼓吹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,不如趁早洗洗睡了吧。
评论
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
http://code.google.com/intl/zh-CN/apis/gadgets/docs/dev_guide.html
19 楼
zhengshina5
2008-06-20
一切只不过是浮云,去注册个facebook吧,一次注册你就不想用了,验证码,看不懂,网页刷新N慢,
as3lib有的时候还有点小问题,不过找找就行了,
验证比较复杂了点。
as3lib有的时候还有点小问题,不过找找就行了,
验证比较复杂了点。
18 楼
robbin
2008-06-20
to sakinijino:
你好!感谢你详细的回复,让我对OpenSocial了解了更多从别的途径无法知道的事情。我申请过orkut的开发者账号,还没有批下来,所以没有机会在orkut上面开发gadget,而iGoogle又太简陋。不过从我目前对OpenSocial文档阅读下来的感觉是,我个人从技术上面不喜欢这个东西,认为他给开发人员施加了过多不必要的限制,而且从商业前景上面来说OpenSocial整个战略极度不看好。
当然OpenSocial技术本身并非一无是处,说OpenSocial是公关骗局也不过是借用已有的说法,我不介意用比较夸张的标题,目的自然是吸引真正对OpenSocial和Facebook了解的人参与讨论,所以看起来这个目的达到了。
你好!感谢你详细的回复,让我对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的源代码。
不好意思,刚才把你的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写得有些阴阳怪气,十分不好意思。
建议你应该可以去注册一个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可以读懂人。是挺可怕的。
完全支持你的观点。我在杭州参加侠客行,天极网的cto讲了Open social。听下来第一个感觉和你的这两篇文章完全吻合。毕竟google只做过iGoogle的Widget,没有做过social network,属于半道出家而又特别喜欢定标准但却不了解需求。
facebook确实让google有些不知所措又乱了正交。google可以读懂机器而facebook可以读懂人。是挺可怕的。
10 楼
泡泡
2008-06-20
Robbin说得有理,等一两年后,就能看到你的判断的最后结果。
9 楼
王者之剑
2008-06-20
这个还需要讨论吗?
奇怪。
OpenSocial和facebook天生就不是差了一点儿半点儿,如果还想后起直追,我想就是瞎子赶婆娘,越赶越远。
奇怪。
OpenSocial和facebook天生就不是差了一点儿半点儿,如果还想后起直追,我想就是瞎子赶婆娘,越赶越远。
8 楼
xiuxiuxiu
2008-06-20
嗬嗬,在facebook上作了自己的一个application.
fbml感觉还不够完整,但是profile box, action ,feeds这些切入点确实很能吸引人.
不过总体感觉还是idea称王,
哎哎,没啥好创意,我的application也就1,2个朋友称称场面了....
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感觉就像一个小玩意,自娱自乐一下还可以
使用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提供某些服务提高流量吗?
现在facebook推出了简体中文版,你会将javaeye作为一个app发布在上面吗?
如果校内网(号称中国的facebook)推出自己的平台,你会将javaeye作为一个app发布在上面吗?
你会针对支持opensocial的社区的某些特定版面(IT)上面开发javaeye的widget提供某些服务提高流量吗?
3 楼
avaj
2008-06-20
精辟,利益是永恒的主题。从商业回报这个角度看,的确是很有说服力!
佩服。
佩服。
2 楼
boogie
2008-06-20
问题是facebook在国内会不会有个好的发展,毕竟中国的社会环境不同于美国。
发表评论
-
robbin谈管理:大公司体制内创新的困境
2012-05-07 22:49 40655周末在家,随手翻看了 ... -
我来CSDN的这一年
2011-07-31 21:36 81920从ITeye(JavaEye)被CSDN收购 ... -
去跨国公司还是去创业公司?
2010-08-05 17:26 57634去跨国公司工作可能是 ... -
计划写个和苹果有关的系列文章
2010-03-02 15:27 8092最近计划写写和苹果相 ... -
做互联网产品的节奏感
2009-11-19 17:33 12158仅仅是一点点感悟: 从无到有刚开始做一个网站或者一个产品,要 ... -
配置电信网通双线双IP的解决办法
2009-09-01 01:16 22465做互联网网站,最头疼 ... -
SNS的价值在于改变互联网信息传播的方式
2009-02-12 17:51 14203在国外,SNS对于用户的 ... -
个性化BBS必将取代公共BBS
2009-01-04 23:48 8411ouspec 写道Twitter,Facebook ... -
开心001的Google trends数据一窥
2008-10-23 14:00 43673今天看了一下开心001网站的Google Trends数据: ... -
对Friendfriend一点思考之二
2008-10-21 16:41 6172这是接上一篇文章对Frie ... -
对FriendFeed的一点思考
2008-10-21 00:41 12320一、SNS的魅力在什么地 ... -
社区的多种形态
2008-08-04 07:53 8249回复:精英还是草根? ... -
SNS的路径选择问题思考
2008-07-31 21:47 6863SNS和UGC的关系 UGC和交 ... -
SNS的工具化思考 - SNS之我见(六)
2008-07-17 23:39 12726我上一篇文章的标题是 ... -
珍爱创业,远离SNS - SNS之我见(五)
2008-07-15 18:39 17539我泡5G这个SNS只有三天 ... -
SNS网站的用户流失率怎么会高得如此惊人?
2008-07-15 17:07 20219平生第一次博客转载别 ... -
什么样的社区能够成为集大成者?- SNS之我见(四)
2008-07-13 17:54 13767一、题外话 最近我的 ... -
社区网站SNS化的思考 – SNS之我见(三)
2008-07-12 19:15 18221一、 SNS工具还是社区网站? Facebook的创始人马克 ... -
Facebook的成功秘诀是什么 - SNS之我见(一)
2008-07-11 03:13 90854SNS是2008年中国互联网最火爆的现象了,无数的SNS网站一 ... -
关于OpenSocial讨论的总结
2008-06-23 17:58 9273最近我写了两篇关于Goog ...
相关推荐
opensocial-python-client
OpenSocial 是一种开放标准,旨在简化社交网络应用的开发,使得开发者可以编写一次应用,就能在多个支持OpenSocial的社交平台上运行。这个框架的核心是一组API,它允许开发者使用JavaScript、XML和HTML来构建跨平台...
通过提供一套标准的接口,OpenSocial简化了开发者的工作流程,使他们能够更高效地为各种社交平台创建应用。OpenSocial的核心组成部分包括JavaScript API、RESTful API以及OAuth认证机制。 - **JavaScript + REST + ...
OpenSocial 是一个开放标准的框架,旨在帮助社交网络平台开发者创建可跨多个网站运行的应用程序。这个框架的主要目标是提供一套通用的API(应用程序接口),让开发者能够轻松地构建社交应用,无需为每个社交网络单独...
OpenSocial规范是一个旨在促进社交网络应用跨平台互操作性的开放标准。这个规范由一系列API组成,允许开发者创建可以在多个社交网站上运行的应用程序,而无需为每个平台单独编写代码。OpenSocial的出现是为了打破...
通过深入学习和实践这个"Opensocial Sample",你可以掌握创建社交网络应用的核心技能,为未来在社交网络领域的工作打下坚实基础。同时,这也将有助于你理解开放平台的运作机制,提升跨平台开发的能力。
Opensocial简介.pdf
OAuth在OpenSocial中的应用是社交网络和开放API领域的一个重要话题。OAuth是一种授权协议,它允许第三方应用在用户授权的情况下,安全地访问其在其他服务上的数据,而无需获取用户的登录凭证。OpenSocial则是一个...
OpenSocial是由Google发起的一项开放标准,旨在为社交网络提供一个统一的应用程序接口(API),使得开发者可以编写一次应用程序,就能在多个社交网站上运行。这个标准定义了一系列JavaScript和RESTful API,允许...
OpenSocial 是一个开源标准,旨在帮助开发者创建可以在任何社交网络平台上运行的应用程序。Java 版 Shindig 是 OpenSocial 的实现之一,它提供了一个服务器端的框架,使得开发者可以使用 Java 语言开发这些社交应用...
从给定的文件信息来看,这是一本关于OpenSocial网络编程的专业书籍,由Lynne Grewe撰写,出版于2009年4月,出版社为Wiley Publishing, Inc.。该书旨在深入探讨OpenSocial平台及其在社交网络编程中的应用,提供了从...
骨干开放社交AppDataStore AppDataStore是用于Backbone数据持久性的OpenSocial适配器。 它代替了Backbone.Sync()来处理保存到OpenSocial容器的AppData存储中。用法包含Backbone.js之后,包含Backbone.OpenSocial....
Aipo-opensocial是一个专为Aipo应用程序设计的OpenSocial容器,它的主要目的是在Aipo平台上提供一个环境,使得开发者可以创建并运行基于OpenSocial标准的社交应用。这个项目不仅支持基本的OpenSocial规范,还可能...
4. **应用层**:实际的平台应用开发,如Facebook APP和OpenSocial APP的开发。 #### 独立平台开发之Facebook篇 **Facebook平台简介** Facebook是最早开放其平台的社交网络之一,允许开发者使用Facebook API创建...
opensocial-gadget-angularjs-sample 这是一个与angular.js一起... 上载我的小工具opensocial-angular-sample.zip。 转到管理员页面>菜单,然后在菜单上注册小工具。 现在,您可以从门户网站的菜单上删除该小工具。
OpenSocial 是一个开源标准,旨在为社交网络平台提供一套统一的应用程序编程接口(API),让开发者能够轻松地创建可在多个社交网站上运行的应用程序。这个标准最初由Google发起,后来得到了许多其他社交网络的支持,...
在React中编写的OpenSocial小工具介绍这是创建用于在opensocial容器中托管的opensocial小工具的示例项目。 该项目是通过引导的。 有关如何执行常见任务的信息,请参见最新版本的create-react-app指南。脚步首先安装...