<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>A colourful bubble? &#187; Google</title>
	<atom:link href="http://www.paopao.name/tag/google/feed" rel="self" type="application/rss+xml" />
	<link>http://www.paopao.name</link>
	<description>生活 读书 新知</description>
	<lastBuildDate>Wed, 20 May 2009 02:22:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>你的第一条饭否/ Twitter 消息</title>
		<link>http://www.paopao.name/programme/javascript/your-first-fanfou-twitter-message.html</link>
		<comments>http://www.paopao.name/programme/javascript/your-first-fanfou-twitter-message.html#comments</comments>
		<pubDate>Mon, 27 Apr 2009 02:59:58 +0000</pubDate>
		<dc:creator>paopao</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[WebDevelop]]></category>
		<category><![CDATA[饭否]]></category>
		<category><![CDATA[GAE]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[JSONP]]></category>
		<category><![CDATA[tinyurl]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://www.paopao.name/fanfou/your-first-fanfou-twitter-message.html</guid>
		<description><![CDATA[前天在饭否上看到有些人在玩一个 Twitter 应用，这个应用可以查出你加入 Twitter 的时间。觉得蛮好玩的，因为我用 Twitter 很少（主要是觉得网页版速度不够快，又不想再开一个客户端），所以... ]]></description>
			<content:encoded><![CDATA[<p>前天在饭否上看到有些人在玩一个<a href="http://whendidyoujointwitter.appspot.com/" target="_blank"> Twitter 应用</a>，这个应用可以查出你加入 Twitter 的时间。觉得蛮好玩的，因为我用 Twitter 很少（主要是觉得网页版速度不够快，又不想再开一个客户端），所以想看看能不能移植到饭否来。虽然<a href="http://code.google.com/p/fanfou-api/wiki/ApiDocumentation" target="_blank">饭否的 API</a> 和 Twitter 的基本相同，但是在用户信息这部分稍有不同，饭否并没有提供用户的创建时间这个字段。</p>
<p>没办法，只好曲线救国了&#8230; 我用了搜索用户消息的办法来查找用户的第一条消息，虽然这和用户的创建时间不一定一样，不过这也算是另一种应用吧 ^_^</p>
<p>第一次使用 <a href="http://code.google.com/appengine/" target="_blank">Google App Engine</a> 来部署应用，不过没用到 Python (因为不会 =,= )，只是直接使用了静态文件：</p>
<p><a href="http://yourfirstfanfoumessage.appspot.com/" target="_blank">你在饭否的第一条消息？</a><br />
<ins datetime="2009-04-28T01:46:47+00:00">不幸的发现饭否的 API 也有同样的限制，虽然没有在文档里写明，但是经过测试，只能得到最多 3,200 条用户消息&#8230;</ins><br />
<ins datetime="2009-04-30T04:04:02+00:00"><strong>Update 了一个新的版本，现在应该可以查询所有人的第一条消息了，即使你是消息数超过 3,200 的饭否狂人 <img src='http://www.paopao.name/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </strong></ins></p>
<p><a href="http://yourfirsttwitter.appspot.com/" target="_blank">Your First Twitter?</a><br />
<ins datetime="2009-04-27T03:50:20+00:00">Twitter 这个版本有点问题，由于 API 的限制，只能得到最多 3,200 条用户消息，所以消息数超过 3,200 的目前还无法查到第一条消息&#8230;</ins></p>
<blockquote><p>Rest API Limit<br />
Clients may request up to 3,200 statuses via the page and count parameters for timeline REST API methods. </p></blockquote>
<p><a href="http://yourfirsttwitter.appspot.com/search.htm" target="_blank">Your First Twitter? (Search Version)</a><br />
<ins datetime="2009-04-27T13:55:03+00:00">Twitter 消息数超过 3,200 的 Twitter 狂人们可以尝试这个版本，通过 google 搜索来查找的，不一定能成功</ins></p>
<p>另外第一次用到了 <a href="http://www.google.com/search?q=JSONP" target="_blank">JSONP</a> 技术，和 <a href="http://jquery.com/" target="_blank">Jquery</a> 结合起来使用的话，很好很方便。</p>
<p>感谢 James Padolsey 的 <a href="http://james.padolsey.com/javascript/create-a-tinyurl-with-jsonp/" target="_blank">TinyURL JSONP API</a> ，可以很方便的得到缩短网址。</p>
<img src="http://www.paopao.name/?ak_action=api_record_view&id=114&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.paopao.name/programme/javascript/your-first-fanfou-twitter-message.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Google为何选择Jabber(转载)</title>
		<link>http://www.paopao.name/web/why-google-choose-jabber.html</link>
		<comments>http://www.paopao.name/web/why-google-choose-jabber.html#comments</comments>
		<pubDate>Wed, 30 Nov -0001 00:00:00 +0000</pubDate>
		<dc:creator>paopao</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Gtalk]]></category>
		<category><![CDATA[jabber]]></category>

		<guid isPermaLink="false">http://paopao.yiblog.com/index.php/2006/05/16/googlejabber/</guid>
		<description><![CDATA[转载注：
昨天突然心血来潮，安装了gtalk中文版来试试，感觉界面很漂亮，用起来蛮顺手的(就是目前还没有多少联系人-_-)，然后就google了一下相关文章，看到这篇觉得写得蛮有道理的。
以下... ]]></description>
			<content:encoded><![CDATA[<p>转载注：</p>
<p>昨天突然心血来潮，安装了gtalk中文版来试试，感觉界面很漂亮，用起来蛮顺手的(就是目前还没有多少联系人-_-)，然后就google了一下相关文章，看到这篇觉得写得蛮有道理的。</p>
<p>以下为转载内容：</p>
<p><a HREF="http://www.earlzhang.com/lblog/trackback.asp?id=250">http://www.earlzhang.com/lblog/trackback.asp?id=250</a></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>Google终于插手IM，推出了Google Talk。当众人惊艳于GTalk漂亮的界面时，笔者更关心的却是GTalk背后协议—GTalk此次采用了基于Jabber的XMPP协议，一个开源同时强调互联互通的业界标准协议。<br />
Google到底是Google，总是不断在给人惊喜，进军IM也没有步MSN，ICQ这些竞争对手的后尘使用封闭专用协议，而是拥抱开源，拥抱互联互通。当然，我绝不认为Google这么做只是为了与众不同，选择XMPP，自然有其深意。<br />
我不是Google的肚中蛔虫，当然不知道它的真实目的，但本文至少可以尝试分析一下XMPP对Google的好处。<br />
IM这个东西，巨头们都在积极参与，虽然市场规模和分额都不算小，可是行之有效的赢利模式却始终欠奉—踩了狗屎运在中国抓住短信浪潮的QQ除外。目前唯一有点苗头的，也就是广告了，而Google以关键字广告起家，将这套模式搬到IM上来，也是顺理成章的事情—要论广告价值，IM上你来我往的文字信息不会比Gmail电子邮件来的小。<br />
谈及IM上的广告投放，那么第一渠道自然便是IM本身，就像MSN们现在所干的那样。但是GTalk使用的是开源的XMPP协议，任何支持此协议的IM软件都可以连接上GTalk的服务器—事实上笔者正是使用GAIM来连接GTalk服务的。如此一来，通过客户端投放广告的如意算盘岂不是落空了？的确有这个可能，正是基于这个原因，小气的腾讯才不屑余力的打击任何意图兼容它的第三方软件，尤其是那些去广告的补丁，以此避免广告的流失。但是笔者却不得不佩服于Google的自信，Google似乎从来就没有害怕过这个问题。不说GTalk，就先说已经大获成功的Gmail，这个以大容量免费邮箱为卖点的服务，赢利的手段便是用户通过WEB登录系统后，Google提供的基于邮件关键字的文字广告，从这一点来说，类似Pop3这样的客户端协议应该是GMail绝不该提供的功能—一旦用户通过客户端收取邮件，那就无须登录WEB系统，Google的关键字就无从投放了。可是，Google还是让人出乎意料，它没有如竞争对手比如Hotmail那样始终不开放Pop3协议，反而认为这应该是用户的基本权益，大大方方的提供了。虽然的确会有用户流失，但是考虑到这年头上网的用户越来越多，可是高水平会在客户端设置Pop3协议的却并不算多，绝大多数的用户还是乖乖成为了Gmail的广告受众。更何况，那些高水平用户虽然没有成为Gmail的广告受众，可是他们却是Gmail发展中的中坚力量，正是他们的大力推广，Gmail申请需要邀请的病毒式营销才会如此成功，从这个角度而言，提供Pop3恐怕是利大于弊的高招，这种胸襟微软是该学习一下的。说回GTalk，虽然它采用了开源的XMPP协议，甚至还在主页上详细的说明了如何用第三方软件连接Gtalk，可是你问问身边使用Gtalk的朋友，有多少人是真正使用客户端的，大多数人还不是对于基于XMPP的其他Jabber客户端缺乏了解，乖乖使用Google自己的客户端。<br />
更何况，IT服务发展至今日，独家的技术或者排他的应用早就不是制胜的唯一法宝了。Gmail的病毒式营销虽然厉害，但那也只能吸引用户尝试，要让他们常用甚至作为首选，同时还不计较广告，Gmail靠的还是优于竞争对手的界面涉及；至于大热的iPod就更明显了，所谓一个MP3播放器，她今天能够成为一种潮流一种文化现象，靠的不是播放文件的独家协议，而是漂亮的外观设计。我们听到关于GTalk界面的赞美难道还少吗？即使今天真的有许多客户端设置好放在用户面前供选择，恐怕大多数用户还是会拥抱漂亮的GTalk。<br />
显然，即使Gtalk使用开放的XMPP协议，只要客户端做得足够讨用户喜欢，全然不用害怕用户另投他家。<br />
更何况，XMPP协议的背后，还藏有更高妙的绝招呢。<br />
传统上，我们将IM软件归类为P2P应用中的一种，一般IM软件在登录服务器获得在线好友名单以及它们在线的IP地址后，一般便直接利用IP地址和对方直接联系了，仅在对方不在线或者网络有问题时才通过服务器中转。但是XMPP协议则有所不同，为了实现在不同平台的服务器和客户端之间互联互通，它采用类似传统的Email运作原理，所有的通信都是基于客户端和服务器之间的联系的。当你要与其他用户交流时，信息首先由客户端发送至你使用的服务器，再由你的服务器发送至对方使用的服务器，最后才由对方服务器转发给对方使用的客户端。<br />
这种服务器为中心的运作模式绝对是最对Google胃口的。Google靠卖搜索引擎的关键字发家，对其而言搜集用户的信息从而知道该投放什么关键字广告是发家之本，要搜集用户信息，利用客户端固然方便，但最理想的还是服务器中心论，用户所有的网络应用都由Google的服务器代劳，这样Google对于用户的动态就可以知道的一清二楚，这方面最佳的例子便是Google推出的类似代理服务器的网页加速器。在这样的前提下，还有什么比以实现互联互通为借口将IM由P2P模式改为服务器为中心的XMPP协议来的更讨Google喜欢的呢？在服务器中心的模式下，Google要想加强广告实在是易如反掌的事情—即使用户使用第三方软件，Google仍旧可以通过转发文字内容的时候在末尾加入广告内容，或者通过IM收集信息，将对应的广告投放到Gmail的对应帐户中去，Google甚至还能借此获得其他使用非Google服务器的Jabber用户的具体信息，你说Jabber对Google来说怎么不是一块宝呢。<br />
近日，微软收购了Teleo，一家同样基于GIPS提供VOIP服务的企业。如此一来，Google、微软、Skype三家都使用GIPS，在语音引擎上站在同一起跑线上，要在VOIP上比个高低，就看各自在网络连接上的本事了。VOIP这个东西，目前各家都靠PC2Phone来赢利。可是从长远来看，当大家都基于IP时，互相间通话就是免费的了，届时从何收费就是问题了。不过，GTalk在这个问题上也许是最不用担心的，此次其提供的语音聊天服务同样也是通过Google服务器中转完成的，这也就意味着届时只要在服务器那边加上一个语音识别引擎，就可以根据语音关键字出售关键字广告，继续通过老本行赢利了。<br />
有分析者说，同样使用GIPS协议的skype和GTalk之间的竞争，其实是一场以skype为代表的P2P模式和以GTalk为代表的服务器中心模式之间的竞争。对此，笔者深表同意，不过在这两者之间，笔者宁可选择也许不算新潮的服务器中心模式，毕竟花钱买服务器的是Google，享受到互联互通好处的是笔者。</p>
<img src="http://www.paopao.name/?ak_action=api_record_view&id=21&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.paopao.name/web/why-google-choose-jabber.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
