<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <channel>
    <title>Process&#45;one Blogs</title>
    <link>http://www.process-one.net/en/blogs/blogs</link>
    <description>Process-one Blogs</description>
    <dc:language>en</dc:language>
    <dc:creator>Process-one</dc:creator>
    <dc:rights>Copyright 2008</dc:rights>
    <dc:date>2008-03-05T14:32:00+01:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.pmachine.com/" />
    

    <item>
      <title>Open AIM: AOL opens its Instant Messaging protocol</title>
      <link>http://www.process-one.net/en/blogs/article/openaim_aol_is_opening_its_instant_messaging_protocol/</link>
      <guid>http://www.process-one.net/en/blogs/article/openaim_aol_is_opening_its_instant_messaging_protocol/#When:14:32:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[Today, AOL relaunched its OpenAIM initiative and published the specifications of the AIM and ICQ protocol. <p><a href="http://dev.aol.com/aim">OpenAIM</a> is an initiative from AOL that aims at building a development community around its Instant Messaging service and protocol. This time it seems that they are dedicated to seriously open their Instant Messaging network and give access to their IM platform. You can now officially build a compliant AIM / ICQ client, use the platform to push presence back and forth, write plugins and bots that plug to the AIM network. The protocol is called Oscar and fully described <a h href="http://dev.aol.com/aim/oscar/">here</a>.</p>

<p>This is a very clever move from AOL. They decided that the value lies in their users base and in the network they provide. They thus want to grow the community usage of their platform. Revenue is based on advertising. You can filter ads in your client but you can also decide to build an ads supported software and benefit from AOL advertising network. You will thus be able to share advertissement revenues with AOL. I bet that MSN and Yahoo! will now think about the large set of opportunity that this model opens.</p>

<p>What does this move mean for the Instant Messaging community ? Simply, it means that building a client for AIM is now officially possible. Building an Instant Messaging aggregator is possible regarding the AIM / ICQ protocol aggregation.</p>

<p>For ProcessOne, it also means that AOL and ICQ gateway software can be published officially. Maybe it is time to dream about the most scalable AIM / ICQ gateway ever published (<b>hint, hint !</b>).</p>

<p>AOL has now opened the AIM / ICQ platform and protocol. Now, there is no major reason to not fully adopt the XMPP protocol. See my previous blog post on that topic for more information: <a href="http://www.process-one.net/en/blogs/article/the_aol_xmpp_scalability_challenge/">The AOL XMPP scalability challenge</a>. The missing part is still allowing to chat with a contact without requiring an AIM or ICQ account. In the XMPP world, this is called federation. I am not convinced that they will do this move if they managed to extend advertisements and revenue sharing to this larger community.</p>

<br/>
<script type="text/javascript">
digg_url = 'http://www.process-one.net/en/blogs/article/openaim_aol_is_opening_its_instant_messaging_protocol/';
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
<script type="text/javascript" src="http://reddit.com/button.js?t=2"></script>
<script type="text/javascript">
slashdot_badge_style='v0';
</script>
<script src="http://slashdot.org/slashdot-it.js" type="text/javascript"></script>
 
]]>
</description>
      <dc:subject>Jabber / XMPP</dc:subject>
      <dc:date>2008-03-05T14:32:00+01:00</dc:date>
    </item>

    <item>
      <title>XMPP DevCon day 2</title>
      <link>http://www.process-one.net/en/blogs/article/xmpp_devcon_day_2/</link>
      <guid>http://www.process-one.net/en/blogs/article/xmpp_devcon_day_2/#When:09:58:00Z</guid>
      <author>Jérôme Sautret</author>
      <description><![CDATA[Quick summary of the second and last day of the XMPP DevCon. <br/><br/>
On this second day, participants have talked about file transfer. There is some incompatible different needs (streaming vs offline/MUC, web clients constraints, NAT...), so we've finally focused on a negotiation protocol that would allow clients to choose the right method. The next discussion was about server side messages archiving. IMAP was considered as an option, but <a href="http://www.xmpp.org/extensions/xep-0136.html" title="XEP-0136">XEP-0136</a> seems almost fine. We've finally addressed some miscellaneous topics like SSO/OAuth (how to share XMPP authentication with web applications) and distributed MUC (so that people can consider replacing IRC with MUC) which led us to consider SRV records for XMPP services. 
]]>
</description>
      <dc:subject>Jabber / XMPP</dc:subject>
      <dc:date>2008-02-26T09:58:00+01:00</dc:date>
    </item>

    <item>
      <title>XMPP DevCon day 1</title>
      <link>http://www.process-one.net/en/blogs/article/xmpp_devcon_day_1/</link>
      <guid>http://www.process-one.net/en/blogs/article/xmpp_devcon_day_1/#When:17:54:01Z</guid>
      <author>Jérôme Sautret</author>
      <description><![CDATA[Quick report of the first day of the XMPP DevCon in Bruxelles. <br/><br/>Today was the first of the two days <a href="http://wiki.jabber.org/index.php/FOSDEM_2008" title="XMPP DevCon">XMPP DevCon</a> at the Atlas hotel in Bruxelles, Belgium. Lots of interesting people were here and we even ran out of chairs in the room, which may be a sign of the growing interest in XMPP...
<br/>
So far, we've talked about the abuses that a public XMPP server may face (botnets, spam, DoS...) and how we can prevent them (providing operators contact information, servers reputation, shared black lists...). XMPP on mobile devices was also a hot subject, with proposed solutions to limit CPU and traffic usage (traffic filtering based on profiles, fast reconnect, cached rosters...). Finally, we had some vast discussions on synchronizations (whiteboarding, shared editing...), with many different approaches. Now it's beer time before day 2...
 
]]>
</description>
      <dc:subject>Jabber / XMPP</dc:subject>
      <dc:date>2008-02-24T17:54:01+01:00</dc:date>
    </item>

    <item>
      <title>ejabberd 2.0.0</title>
      <link>http://www.process-one.net/en/blogs/article/ejabberd_200/</link>
      <guid>http://www.process-one.net/en/blogs/article/ejabberd_200/#When:14:27:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[ejabberd 2.0.0 has been released after more than one year and a half of work. <p>We are already working on improvements for ejabberd 2.1 branch. The roadmap is still described on this page: <a href="http://www.process-one.net/en/blogs/article/angie_ejabberd_roadmap_updated/">Angie: ejabberd roadmap updated</a>.</p>
<p>For now, let's celebrate !</p> 
]]>
</description>
      <dc:subject>Jabber / XMPP, ejabberd</dc:subject>
      <dc:date>2008-02-21T14:27:00+01:00</dc:date>
    </item>

    <item>
      <title>We are hiring Erlang developers</title>
      <link>http://www.process-one.net/en/blogs/article/we_are_hiring_erlang_developers/</link>
      <guid>http://www.process-one.net/en/blogs/article/we_are_hiring_erlang_developers/#When:09:16:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[Join a company of talented developers today ! We are working on innovative projects with one goal in mind: build the de facto reference instant messaging platform. <p>We are now hiring Erlang coders to join our development and support team. You will participate to ejabberd development, customer projects but also work on the  new exciting projets we are currently preparing.</p>
<p>Experience in Erlang and/or XMPP protocol is a big plus, but is not mandatory.</p>
<p>The jobs are preferably based in France, but our company being international and our team distributed across the world, remote work is possible.</p>
<p>If you are interested, please drop me a mail (mremond at this website domain) with a summary of your technical achievements and a description of why you would love working at Process-One.</p>

 
]]>
</description>
      <dc:subject>Jabber / XMPP, Erlang</dc:subject>
      <dc:date>2008-02-20T09:16:00+01:00</dc:date>
    </item>

    <item>
      <title>IM 2.0 or how XMPP can become the network protocol of the Web 2.0 era</title>
      <link>http://www.process-one.net/en/blogs/article/im_20_or_how_xmpp_can_become_the_network_protocol_of_the_web_20_era/</link>
      <guid>http://www.process-one.net/en/blogs/article/im_20_or_how_xmpp_can_become_the_network_protocol_of_the_web_20_era/#When:07:58:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[Tim Julien has written an interesting blog post explaining how XMPP is slowly being adopted to power the social web. <p>I found this nice blog post by Tim Julien: <a rel="nofollow" href="http://blog.limewire.org/?p=252#">IM 2.0</a>. Regarding the recent acceleration in XMPP usage, he says <i>I believe it will spark a wave of IM 2.0 startups (not just ones focused around mobile IM, which is where you see a lot of the focus today). [...] XMPP could become the standard machine-readable way to represent a social network.</i>.</p>
<p>I think this is an interesting read.</p> 
]]>
</description>
      <dc:subject>Jabber / XMPP</dc:subject>
      <dc:date>2008-02-20T07:58:00+01:00</dc:date>
    </item>

    <item>
      <title>Programmez: Introduction article on ejabberd XMPP application server</title>
      <link>http://www.process-one.net/en/blogs/article/programmez_introduction_article_on_ejabberd_xmpp_application_server/</link>
      <guid>http://www.process-one.net/en/blogs/article/programmez_introduction_article_on_ejabberd_xmpp_application_server/#When:16:32:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[The French Magazine Programmez has published an introduction article on ejabberd module programming. <p>The French magazine <a rel="nofollow" href="http://www.programmez.com/magazine.php">Programmez!</a> has published a full <a rel="nofollow" href="http://www.programmez.com/redaction_interactive.php?article=996&&titre=D%E9marrer%20avec%20ejabberd">article on ejabberd programming</a> in the February 2008 issue.</p>

<p align="center"><img src="http://www.process-one.net/images/uploads/programmez_200802.jpg" style="border: 0;" alt="image" width="231" height="314" /></p>

<p>The article has been written by Jérôme Sautret and presents basic ejabberd architecture and concepts.</p> 
]]>
</description>
      <dc:subject>Jabber / XMPP, ejabberd</dc:subject>
      <dc:date>2008-02-19T16:32:00+01:00</dc:date>
    </item>

    <item>
      <title>After AOL, Yahoo! is also experimenting with XMPP</title>
      <link>http://www.process-one.net/en/blogs/article/after_aol_yahoo_is_also_experimenting_with_xmpp/</link>
      <guid>http://www.process-one.net/en/blogs/article/after_aol_yahoo_is_also_experimenting_with_xmpp/#When:15:35:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[Interest among big instant messaging players is suddently rising. Yahoo! is now experimenting with the open XMPP protocol. <p>After <a href="http://www.process-one.net/en/blogs/article/the_aol_xmpp_scalability_challenge/">AOL experiments</a> to give access to AIM and ICQ with the XMPP protocol, This time, it has been found that Yahoo! is also experimenting with XMPP to provide chat for its new video sharing service called <a rel="nofollow" href="http://live.yahoo.com/">live</a>.</p>

<p>Proof is given with the following sequence:</p>
<pre>
Memphis-2:~ mremond$ telnet chat.live.yahoo.com 5222
Trying 68.180.220.125...
Connected to chat.live.yahoo10.akadns.net.
Escape character is &#x27;^]&#x27;.
&lt;?xml version=&#x27;1.0&#x27; encoding=&#x27;UTF-8&#x27;?&gt;
&lt;stream:stream xmlns:stream=&#x27;http://etherx.jabber.org/streams&#x27; version=&#x27;1.0&#x27;
 xmlns=&#x27;jabber:client&#x27; to=&#x27;chat.live.yahoo.com&#x27; &gt;

&lt;?xml version=&#x27;1.0&#x27; encoding=&#x27;UTF-8&#x27;?&gt;&lt;stream:stream
 xmlns:stream=&quot;http://etherx.jabber.org/streams&quot; xmlns=&quot;jabber:client&quot;
 from=&quot;chat.live.yahoo.com&quot;
 id=&quot;5d46000b&quot; xml:lang=&quot;en&quot; version=&quot;1.0&quot;&gt;&lt;stream:features&gt;
&lt;mechanisms xmlns=&quot;urn:ietf:params:xml:ns:xmpp-sasl&quot;&gt;&lt;mechanism&gt;PLAIN&lt;/mechanism&gt;
&lt;mechanism&gt;JIVE-SHAREDSECRET&lt;/mechanism&gt;&lt;/mechanisms&gt;&lt;compression
 xmlns=&quot;http://jabber.org/features/compress&quot;&gt;&lt;method&gt;zlib&lt;/method&gt;&lt;/compression&gt;
&lt;auth xmlns=&quot;http://jabber.org/features/iq-auth&quot;/&gt;&lt;/stream:features&gt;
</pre>

<p>This is a bit technical, but what what this command shows, is that Yahoo! server is replying on the standard XMPP port. When sending the stream opening XML, it replies with a server stream, meaning that there is this is really an XMPP server.</p>

<p>Note that we have no reason to believe yet that those experimentations will ever come to Yahoo! Instant Messaging service. However, as they gather XMPP knowledge, they are more and more likely to progressively add XMPP support to their main instant messaging service.</p>

<p><b>Update 1:</b> I have checked and server-to-server connections are not open: It means you cannot join a Yahoo! Live chat room with your usual XMPP account and client.</p>

<br/>
<script type="text/javascript">
digg_url = 'http://www.process-one.net/en/blogs/article/after_aol_yahoo_is_also_experimenting_with_xmpp/';
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
<script type="text/javascript" src="http://reddit.com/button.js?t=2"></script>
<script type="text/javascript">
slashdot_badge_style='v0';
</script>
<script src="http://slashdot.org/slashdot-it.js" type="text/javascript"></script>
 
]]>
</description>
      <dc:subject>Jabber / XMPP</dc:subject>
      <dc:date>2008-02-09T15:35:00+01:00</dc:date>
    </item>

    <item>
      <title>Introducing the XMPP application server: The Twitter example</title>
      <link>http://www.process-one.net/en/blogs/article/introducing_the_xmpp_application_server/</link>
      <guid>http://www.process-one.net/en/blogs/article/introducing_the_xmpp_application_server/#When:16:09:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[ejabberd is probably the first XMPP application server ever released. This article introduces this new concept and explains how to build a distributed event-based infrastructure for social networking. The example application that illustrate this article is a distributed Twitter-like microblogging platform. <br/><br/>
<h2>Introduction</h2>

<p>Since I designed the first version of the pluggable pubsub module for ejabberd in early 2007, I had in mind to turn it into a powerful application server. I have already blogged about the power of the new <a href="http://www.process-one.net/en/blogs/article/angie_flexible_plugin_based_publish_and_subscribe/">API of ejabberd 2.0 pubsub engine</a>. However, this single article does not do any justice to this idea and how it can change the face of the web.</p>

<p>Customizable services based on pubsub is <a href="http://www.xmpp.org/">XMPP</a> (eXtensible Messaging and Presence Protocol) at its full speed. The XMPP protocol has been designed since the beginning to be a near real time routing / distribution engine. A piece in the puzzle was missing however. This is where I think our new plugin based pubsub API fills the gap and turn ejabberd into the first XMPP application server.</p>

<p>As a proof of concept and as a way to robustify our API, we have written the <a href="http://www.xmpp.org/extensions/xep-0163.html">Personal Eventing via Pubsub</a> (PEP) as a plugin of our pubsub engine. It is a big specification and should clearly show the potential of the framework.</p>

<br/>
<h2>The XMPP application server: The Twitter case</h2>

<p>The PEP implementation was still not enough to demonstrate that ejabberd is a fault-tolerant, highly scalable application development platform for the Web 2.0 era. I decided to start a serie of articles demonstrating how to build a distributed Twitter-like microblogging platform based on ejabberd 2.0.</p>

<br/>
<h2>Step 1</h2>

<p>The goals of the first development step are the following:</p>
<ul>
<li>Write a new ejabberd service as a pubsub extension: this is a XMPP Twitter-like application code itself.</li>
<li>Show that you can integrate with other pieces of the XMPP framework and not only the event distribution: The code uses the service browser as a user interface, building a fully dynamic hierarchy.</li>
<li>Write the near realtime publishing / distribution code. To show how powerfull it is, I wrote the code in a way that node creation and subscriptions are not necessary. You only have to publish content and it is distributed to anyone that can see your presence. The end result, like PEP, is closely integrated to the user roster.</li>
</ul>

<p>The architecture is distributed across as many user base (domain) as you want: A user can get events from users having their account in a large number of different servers.</p>

<br/>
<h2>Writing a new plugin to define custom node hierarchy</h2>

<p>I wanted to build a special service hierarchy so that the application integrates nicely in XMPP service discovery. I wanted a dynamic discovery tree whose content was depending on who was doing the query. This would make the application more user friendly and the example much more impressive.</p>

<p>To write a custom node hierarchy with our API, you simply have to write a <i>nodetree</i> plugin. I have written the nodetree_twitter module to handle our special hierachy looking like the following:</p>

<ul>
<li>Root node: "twitter"</li>
<li>Special node: MyStream. This is a collection displaying your latest published posts.</li>
<li>Special node: FriendsStream. It contains the latest posts of my friends.</li>
<li>Special node: MyFriends. It contains the list of your friends and allow you to see the latest posts of a given contact.</li>
</ul>

<p>Friends are taken from the instant messaging contacts list: I defined this friends list as "the people that already share their presence with me". This way users do not have to manage the cumbersome subscription process specially for this application: Their friends from their contact list are cleverly reused.</p>

<p>Note that the node hierarchy is not defined in the Pubsub specification (XEP-0060), but is totally needed to make the application flexible. This pubsub node hierarchy does not violate the Pubsub specification, so we are fine with it.</p>

<p>This is the result as shown by Psi's service discovery::</p>

<p align="center"><img src="http://www.process-one.net/images/uploads/xmpp_app_server1.jpg" style="border: 0;" alt="Psi: Service Discovery" width="500" height="405" /></p>

<p>The contact <i>Blaine</i> (thank you for your comments, by the way) is coming directly from my roster.</p>

<br/><br/>
<h2>Posting entries</h2>

<p>Posting an event is simply sending a small piece of XML code in ejabberd. As Psi does not support publishing events to our special virtual nodes (yet <img src="http://www.process-one.net/images/smileys/wink.gif" width="19" height="19" alt="wink" style="border:0;" />), we will send it from Psi XML console.</p>

<p>For example, I can send the following piece of code in the XML console. I publish the post on my special pubsub node <i>MyStream</i>:</p>
<pre>
&lt;iq type=&#x27;set&#x27;
    to=&#x27;pubsub.localhost&#x27;
    id=&#x27;publish1&#x27;&gt;
   &lt;pubsub xmlns=&#x27;http://jabber.org/protocol/pubsub&#x27;&gt;
     &lt;publish node=&#x27;/twitter/MyStream&#x27;&gt;
      &lt;item&gt;Demoing my Twitter-like code&lt;/item&gt;
    &lt;/publish&gt;
  &lt;/pubsub&gt;
&lt;/iq&gt;
</pre>

<p>The message is received instantly by all the contacts that have subscribed to my presence. No polling mechanism is needed. This is the beauty of using ejabberd XMPP App Server.</p>

<p>The received message is the following:</p>
<pre>
&lt;message from=&quot;pubsub.localhost&quot; to=&quot;test1@localhost&quot; &gt;
  &lt;event xmlns=&quot;http://jabber.org/protocol/pubsub#event&quot;&gt;
    &lt;items node=&quot;/twitter/FriendsStream&quot; &gt;
      &lt;item id=&quot;4B2C8277256F&quot; &gt;Demoing my Twitter-like code&lt;/item&gt;
    &lt;/items&gt;
  &lt;/event&gt;
&lt;/message&gt;
</pre>

<p>Note that the dynamic hierarchy is very powerful: We publish on our special node. The message seems to come from another special node on the other end, for the sake of consistency.</p>

<br/>
<h2>Persistence</h2>
<p>I did nothing special for persistence of the published items. It is handled as a default by the ejabberd pubsub framework.</p>
<p>We can browse our new service to check  that the blog post has been actually published:</p>
<p align="center"><img src="http://www.process-one.net/images/uploads/xmpp_app_server2_thumb.jpg" style="border: 0;" alt="Psi: Service discovery" width="500" height="405" /></p>
<p>I did not yet write the part of the code to browse friends posts. This will be part of a second article.</p>

<br/>
<h2>Conclusions</h2>

<p>The end result is the basis of a Twitter-like application. It is fully distributed at the web scale. You can run this application on different servers and get events from people with account on different servers. It is compliant with ejabberd clustering and high scalability features. Most of all, thanks to our Pubsub API, I wrote this first code in 3 hours. It tooks something like 200 to 300 lines of code to write this extremely powerful infrastructure. Yes, that's amazing, I agree, as I was surprised myself by how easy and fast it was to write !</p>

<p>After a bit of clean-up, the code will be added to ProcessOne <a href="https://svn.process-one.net/ejabberd-modules/">contributions Subversion repository</a>. If you are impatient to play with the code, please drop me a mail <img src="http://www.process-one.net/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>

<p>In a next article, I will present the second stage of this application. I will add better and complete browsing of the items and publish directly for the service browser thank to adhoc commands supported in Psi.</p>

<p>In the meantime, I hope to get this experiment running with client developers: It would be very nice see the messages received properly displayed in <a href="http://www.process-one.net/en/oneteam/">OneTeam</a> and in <a href="http://psi-im.org/">Psi</a>. Stay tuned !</p>

<br/>
<script type="text/javascript">
digg_url = 'http://www.process-one.net/en/blogs/article/introducing_the_xmpp_application_server/';
</script>
<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script>
<script type="text/javascript" src="http://reddit.com/button.js?t=2"></script> 
]]>
</description>
      <dc:subject>Jabber / XMPP, ejabberd, Erlang</dc:subject>
      <dc:date>2008-02-03T16:09:00+01:00</dc:date>
    </item>

    <item>
      <title>Microsoft + Yahoo!: What it could mean for the Instant Messaging world</title>
      <link>http://www.process-one.net/en/blogs/article/microsoft_yahoo_1/</link>
      <guid>http://www.process-one.net/en/blogs/article/microsoft_yahoo_1/#When:18:25:00Z</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[  <p>The possible acquisition of Yahoo! by Microsoft is one of the biggest moves to control the Internet. It has lots of implications in the search engine space, but also in the social networking arena. Instant Messaging is certainly the grand father of all social networks: you have to add contacts and have them to accept to share presence, status message, avatar, and some additional personal pieces of information. As such, it could be a domain that will be heavily impacted by a Microsoft/Yahoo! merger.</p>
	
<p>Let's try some guess work imagining what it could mean in the Instant Messaging space. To keep the reasoning, we will concentrate on the biggest IM services.</p>

<h3>A bigger IM community ?</h3>
<p>I see three possible options for the Microsoft and Yahoo! public Instant Messaging and Presence service:</p>
	<ul>
		<li>Microsoft keeps both networks: I do not think it will happen, as Microsoft has always tried to increase its MSN IM community. The advantage in having one big community is much larger than probably they keep both networks, but interconnect them (already being done in MS / Yahoo! interop programme)</li>
		<li>MSN Instant Messaging user base is merged inside Yahoo! service: I do not think this will happen. MSN community is bigger than Yahoo!. MSN is a very strong leader in several parts of the world. It make more sense to do the other way around.</li>
		<li>Yahoo! IM user base will be merged in MSN. This sounds currently the most likely to happen.</li>

<h3>Forces on the public IM battlefield</h3>
<p>Merging the two Instant Messaging networks is not enough for MSN to become the biggest Instant Messaging network.</p>
	
<p>The best figures I found are the following: in 2006, according to Neilsen/Netratings, the market share in the public IM space was as follow:</p>
<ul><li>AOL: 53 million users</li>
<li>MSN: 27 million users</li>
<li>Yahoo: 22 million users</li>
<li>Google: 866,000 users</li>
</ul>
<p>The figures are a bit outdated, but the hierarchy is probably still the same. </p>

<p>As said earlier, we can expect that in a distant future MSN and Yahoo services will be at least fully and totally interoperable, if not completly merged.</p>

<p>Recently, it has been found that AOL was <a href="http://www.process-one.net/en/blogs/article/the_aol_xmpp_scalability_challenge/">experimenting XMPP</a> access to their service. XMPP stands for eXtensible Messaging and Presence Protocol and is becoming very hot. It is the same protocol that Google is using. This protocol is also used by a <a href="https://www.xmpp.net/">large federation of IM servers</a> around the world.</p>

<p>It means that the battle lines are shaping up, splitting the public IM world in two or three parts, depending on these hypothesis:<p>
<ul><li>AOL: 53 million users</li>
	<li>MSN + Yahoo!: 49 million users</li>
	<li>AOL: Google + all federated XMPP networks: estimated 100 millions (pessimistic figure if we trust <a href="http://en.wikipedia.org/wiki/Instant_messaging">Wikipedia article</a>, probably more)</li>
</ul>
<p>AOL needs absolutely to join the XMPP front if they want to keep their leadership in Public Instant Messaging service.</p>

<h3>Conclusions</h3>

<ol>
<li>What it could mean is that AOL is constrained to accelerate the move to XMPP to merge forces with XMPP players. This move seems very good for XMPP: by possibly reducing the number of proprietary protocols in the Instant Messaging world, it possibly strengthen the open standard one.</li>

<li>It also makes more fragile companies whose business model rely on Instant Messaging aggregation. The less different protocols, the fewer accounts you need, the less you need aggregation tools.</li>
</ol>

<p>I bet that the future of XMPP and XMPP companies is even brighter today.</p> 
]]>
</description>
      <dc:subject>Jabber / XMPP, ejabberd</dc:subject>
      <dc:date>2008-02-01T18:25:00+01:00</dc:date>
    </item>

	
    </channel>
</rss>