Archive for November, 2007

GFW 三定律

November 28th, 2007

Fenng 总结的 GFW 三定律:

GFW 第一定律: 只要是 “用户产生内容” (User-generated content, UGC) 的国外网站都会被和谐   

GFW 第二定律: 只要是被和谐的网站, 国内一定会有个克隆版

GFW 第三定律: 没有被和谐的网站一定不是同类竞争者中最出色的

如果你还不明白 GFW 是什么,请看看 “GFW非官方网站”。既然以成定律,那就不容置疑,往往只有技术的革新、思想的进步、或者是那些埋藏在灵魂深处的寻求真理的决心被诱发,定律才能够推翻,让我们一起缅怀那些被 GFW 和谐调的网站吧!

你需要了解的 Google OpenSocial 的六大要点

November 9th, 2007

自从 Google 宣布了 OpenSocial API 以来,关于它的新闻和网志就开始连绵不绝了。OpenSocial 一个新的为社会化网络应用设计的模型,现在已经被描述成为用来击败 Facebook 的重要一步棋。除非你真的是两耳不闻窗外事,不然你就应该知道 Facebook 已经超越 MySpace 成为世界上最成功的社会网络,很显然他为社会化服务提供了一个更有竞争力的模式。因为 Facebook 允许第三方的公司参与进来,与其分享用户资源,提供 Facebook 的应用插件,到目前为止已经有 7100 个第三方的应用插件在 Facebook 的平台上面运行了。在 Web 2.0 时代(相对于之前的 PC 时代),成为核心的真理是平台而不是应用本身。很显然社会化网络第一轮的竞争结果已经出来,Facebook 胜出。这次表明一个强大的依赖于网络的软件特性:你交出区的控制权越多,你能得到的回报价值就越高。

然而 很多blog文章 都指出了 Google 用他的开放式 SNS 应用模型在殴打他的竞争对手,Facebook 的开放式 SNS 平台,因为使用 OpenSocial,你可以让你的程序在任何一个支持 OpenSocial 的社会化平台上运行,而不用限制在一个平台之上,至少 OpenSocial 现在已经拥有了一大批支持者

但是按照 Don Dodge 在他的 OpenSocial Coverage 所描述的,Google 的这一举动并不会让第三方开发这们很快停止为 Facebook 开发应用,因为那里还有许多已经存在的用户,开发这们没有理由要放弃这些用户。况且,现在还没有一个真正的基于 OpenSocial 的应用出现。

按照 OpenSocial 现在的策略,它实际上是建立在551a8b" title="Google Gadget" id="rg1x">Google Gadget 的技术之上,开发者能够很容易的通过 551a8b" title="Google Gadget Editor" id="f.o3">Google Gadget Editor 来创建基于 OpenSocial 的应用,你只需要会 HTML 和 Javascript 就行。OpenSocial 目前所提供的 API 实现了一套规范的组件容器的接口,他们实现了三个标准的社会化特性,个人档案、好友列表和更新通知,在任何一个支持这些接口的社会化网站上都可以部署你的 Gadget 应用,而不仅限于 iGoogle 的入口页,同时你还能够调用那些社会化网站上的用户资料,实现一些你之前都没有想到过的很 Cool 的应用。

对于 OpenSocial 的一些本质上的理解,Dion Hinchcliffe 在他的《The 6 essential things you need to know about Google’s OpenSocial 》一文中总结了六大要点,indigo 已经将它们翻译过来:

  1. OpenSocial 只会提供搭建社会网络的最小公分母,而不是功能全面的社会化网络平台。现在应用程序的开发人员们可以利用 OpenSocial 的构架来开发各种应用,并且让他们运行在一大堆各式各样的社会化网站之上,但是 OpenSocial 并不能帮你实现那些网站的所有功能。社会化网站的 API 接口虽然没有 Windows API 那样复杂透顶,但是我们可以把 OpenSocial 想象成 Java 这样的开发平台,他也没法支持底层操作系统的所有特性,和 Java 所扮演的角色一样,编写一次到处执行,支持 OpenSocial 架构的单一组件(Widget)可以在不同的产品里面蔓延。当然这也意味着你希望利用平台底层的丰富特性去创造一个有竞争力的产品,你就不得不为这个网站实现一些自定义的代码,也就不可避免的要打破了通用应用程序的构架。

  2. OpenSocial 的协议是基于开放标准实现的,因此它不会将开发人员锁定在一个私有的框架之内。你可以放心的使用 OpenSocial 的架构来开发你的社会化应用程序,它们都是使用的标准协议和语言,例如 XML、HTML、Javascript,还有通用的数据格式,就像 ATOM 和 RESTful/WOA 。你甚至可以将Flash的内容和功能寄存在 OpenSocial 的应用里面,只要你不违背规则。还有关键的一点,最近流行的开发平台,包括 Ruby on Rails 在内,也都支持这种服务器端的 API,响应来自脚本的请求。所以说 Google 现在是有意识的利用这些平等的、开放的、非私有的构架来避免那些私有的标记和协议。并且 OpenSocial 的文档和示例代码都是通过创作共用 和 Apache 2.0 的协议发布的,OpenSocial 的常见问题解答 中所有的东西他们都会在某一点上将它开源。对于 Google 来说,拥抱开源是一种荣耀。

  3. OpenSocial 向社会化网络数据的敞开了大门,同时也留下了潜在的安全漏洞。一个支持 OpenSocial 应用的网站会提供一个用户账户内的所有用户数据,包括了他们自己的还有他们朋友的信息。如果一个网站自身不直接支持用户数据的导出,也可以通过 OpenSocial 来间接的导出数据,甚至是通过特定的第三方应用将不同的网站上的用户数据给汇集起来,这是一个很强大的功能。但与此同时,这也给安全问题敞开了大门,那些未知的完全漏洞、跨域的脚本调用,都会随着今后的使用成为不可避免的问题,尤其是当平台完全向世界开放的时候。

  4. OpenSocial 使用起来不仅简单直接,还能够适应各种 RIA(Rich Internet Application)应用的开发。即使没有服务器端架构(server-side infrastructure)的支持,开发者也能简单的通过标记语言和过程代码在 OpenSocial 的生态系统中进行他们自己的发明创造,那些使用了 OpenSocial 网站的架构和用户开发这们也都能构利用上。OpenSocial 甚至能够支持交互式的 Web 接口模型,例如 Ajax。就像我们最近几年所见到的,随着各种面向产品的Web开发平台的出现,一堆一堆的毫无用处的应用服务相继出现,但是其中也不乏真正有价值的作品。现在 OpenSocial 也会制造各种野花盛开繁荣局面,其中也必定会出现有价值的应用。

  5. OpenSocial 出自于 Google,所以不要期望他会不求回报的为互联网无私奉献。Google 几乎可以确定 OpenSocial 最终能够给他带来好处,对于其他的对手来说也不一定是件坏事情(例如 facebook)。开放是一件激动人心的事情,如果 OpenSocial 成功了,Google 会有计划充分的利用它所带来的好处。但是那些计划不一定对 OpenSocial 体系之下的所有玩家都是有益的,所以使用者们需要谨慎。333333; font-family: Verdana; font-size: 13px; line-height: 19px" class="Apple-style-span">

  6. 一个社会化软件的新纪元正在被 OpenSocial 这样的模式所迎来。随着社会化平台的流行,越来越多的社会化应用被创造出来,但是搭建一个成功的社会化应用会和搭建传统的商业和消费应用有许多的不同。在我们学会用不同的观点和角度去思考那些需求之前,很多开发者和软件设计人员的建立成功的社会化应用的愿望都会以失败告终。以人为中心,去理解他们,这是构建一个有效的社会化网络应用的关键,但这这对于我们大多数人来说是件困难的事情,毕竟这个行业还是被 0 和 1 所连接起来的。

indigo 翻译整理至 Dion Hinchcliffe 的《The 6 essential things you need to know about Google’s OpenSocial