<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Jabber on Notes</title>
    <link>https://www.simplicidade.org/tags/jabber/index.xml</link>
    <description>Recent content in Jabber on Notes</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <managingEditor>melo@simplicidade.org (Pedro Melo)</managingEditor>
    <webMaster>melo@simplicidade.org (Pedro Melo)</webMaster>
    <copyright>(c) 2016 Pedro Melo.</copyright>
    <atom:link href="/tags/jabber/index.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsuhhubbub.superfeedr.com/"/>
    
    <item>
      <title>Google Talks, bullshit walks</title>
      <link>https://www.simplicidade.org/notes/2005/08/24/google-talks-bullshit-walks/</link>
      <pubDate>Wed, 24 Aug 2005 11:06:50 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/08/24/google-talks-bullshit-walks/</guid>
      <description>&lt;p&gt;Ok, it&amp;rsquo;s &lt;a href=&#34;http://talk.google.com&#34;&gt;out&lt;/a&gt; for real. First things first: &lt;a href=&#34;http://www.google.com/talk/about.html#new&#34;&gt;question 15&lt;/a&gt; of their &lt;a href=&#34;http://www.google.com/talk/about.html&#34;&gt;FAQ&lt;/a&gt;, first paragraph, last sentence:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We  can say this, though: we believe strongly in user choice and open standards, and we are committed to letting users access Google Talk using  the client and platform of their choice, &lt;strong&gt;as well as to enabling our users to talk with users from other service providers&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Emphasis mine. The entire point is clearly stated in &lt;a href=&#34;http://www.google.com/talk/about.html#open&#34;&gt;question 16&lt;/a&gt; though: we are in business to open up IM networks. The &lt;a href=&#34;http://www.google.com/talk/developer.html#service&#34;&gt;developer FAQ&lt;/a&gt; is also filled with &amp;ldquo;service choice&amp;rdquo; questions and answers. But it&amp;rsquo;s also filled with &lt;a href=&#34;http://www.google.com/talk/developer.html#service_2&#34;&gt;federation stuff&lt;/a&gt;. They want to balance openness with security. I&amp;rsquo;ll guess we need to wait to see what that really means.&lt;/p&gt;

&lt;p&gt;So although the SRV DNS records for server-to-server are still MIA, I suppose its just a matter of time. The subject of SRV recored is specifically covered in the &lt;a href=&#34;http://www.google.com/talk/developer.html&#34;&gt;developer FAQ&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I haven&amp;rsquo;t downloaded the Windows client, being on a Mac myself, so I&amp;rsquo;ll check the other reviews to figure it out some more. Main features seem to be: no ads, voice (SIP in the future, according to the &lt;a href=&#34;http://www.google.com/talk/developer.html&#34;&gt;developer FAQ&lt;/a&gt;, and we can speculate that the door was left open to IAX), Gmail address book integration.&lt;/p&gt;

&lt;p&gt;For me, working at &lt;a href=&#34;http://www.sapo.pt/&#34;&gt;Sapo&lt;/a&gt; in the &lt;a href=&#34;http://messenger.sapo.pt/&#34;&gt;XMPP area&lt;/a&gt;, and being in the team that launched a &lt;a href=&#34;http://messenger.sapo.pt/&#34;&gt;XMPP/VoIP client&lt;/a&gt; last July, it&amp;rsquo;s exciting to see some of our decisions validated by Google. Also, it&amp;rsquo;s nice to see some of our regrets also validated by Google. They are not using SIP for signaling, they are using some custom made signaling protocol over XMPP. There is a rough standard to do SIP over XMPP called &lt;a href=&#34;http://www.jabber.org/jeps/jep-0111.html&#34;&gt;TINS&lt;/a&gt;, but Google seems to have taken their own route. We can only hope the they will honor the community by writing a &lt;a href=&#34;http://www.jabber.org/jeps/&#34;&gt;JEP&lt;/a&gt; about this custom signaling protocol.&lt;/p&gt;

&lt;p&gt;In terms of Codecs, we are compatible with Google using iLBC, and G711. They don&amp;rsquo;t have Speex yet, though.&lt;/p&gt;

&lt;p&gt;Some reviews, more to come:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://missig.org/julian/blog/2005/08/23/google-talk-released/&#34;&gt;Julian&amp;rsquo;s take&lt;/a&gt;: no offline messages, also talks about the custom voice signaling protocol Google is using, and possible iChat integration in the future. This one seems a no brainer as long as Apple and Google agree to it: they are both using Jabber.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://radar.oreilly.com/archives/2005/08/google_talk_rel.html&#34;&gt;Nat&amp;rsquo;s O&amp;rsquo;Reilly Radar entry&lt;/a&gt;: that get&amp;rsquo;s the quote of the day so far: &lt;em&gt;make MMS messaging on cellphone look like a W3C hot-tub party&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.russellbeattie.com/notebook/1008597.html&#34;&gt;Russell Beattie&lt;/a&gt; about Y! and XMPP, we are all pulling for you, Russel&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.downloadsquad.com/2005/08/23/googe-talk-review/&#34;&gt;Download Squad&lt;/a&gt;: speculates to new features, we should see a lot of that in the future :)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some first comments about the client from the reviews:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;900kb download (!!), that&amp;rsquo;s impresive. Must check if it&amp;rsquo;s just the installer or the real thing;&lt;/li&gt;
&lt;li&gt;very clean interface.&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
    
    <item>
      <title>Google Talk is live</title>
      <link>https://www.simplicidade.org/notes/2005/08/24/google-talk-is-live/</link>
      <pubDate>Wed, 24 Aug 2005 00:42:55 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/08/24/google-talk-is-live/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://talk.google.com/&#34;&gt;Google Talk&lt;/a&gt; service is now live although you still get a 404 at the site. I was able to connect with Adium using Jabber as the account type, and my gmail login.&lt;/p&gt;

&lt;p&gt;Some notes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;this is NOT jabber, it&amp;rsquo;s XMPP: Google Talk &lt;strong&gt;requires&lt;/strong&gt; TLS for connection at port 5222;&lt;/li&gt;
&lt;li&gt;Server-to-server is not yet operational, don&amp;rsquo;t know if it will: SRV DNS records are still MIA;&lt;/li&gt;
&lt;li&gt;Port 5223 is open and Psi with SSL can connect. I used &amp;ldquo;Allow plaintext password&amp;rdquo;, but I&amp;rsquo;m not sure if it is required;&lt;/li&gt;
&lt;li&gt;Disco queries and Jabber:iq:agents return 503 for now;&lt;/li&gt;
&lt;li&gt;Gmail address book integration: your buddies appear in your contacts inside GMail;&lt;/li&gt;
&lt;li&gt;The other way around: Gmail contacts with a @gmail.com address appear in your roster with subscription none. Current clients don&amp;rsquo;t send the invitation automagically for now :).&lt;/li&gt;
&lt;li&gt;1:41 WET: got kicked, server restart or premature err&amp;hellip; launch? :); 2:33 back on.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some other articles about this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://www.smashsworld.com/2005/08/im-on-google-talk-right-now.php&#34;&gt;Smash&amp;rsquo;s world&lt;/a&gt;: I found out from this article&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://the.taoofmac.com/space/blog/2005-08-23&#34;&gt;Rui&amp;rsquo;s take&lt;/a&gt;, although he hasn&amp;rsquo;t updated yet it&amp;rsquo;s page :). Ok, now he did, but &lt;a href=&#34;http://the.taoofmac.com/space/Google/Talk&#34;&gt;use this instead&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;My dear friend &lt;a href=&#34;http://www.livejournal.com/users/pfig/41283.html&#34;&gt;pfi&lt;/a&gt;, to the point as usual :)&lt;/li&gt;
&lt;li&gt;Celso&amp;rsquo;s &lt;a href=&#34;http://celso.arrifana.org/?p=37&#34;&gt;point of view&lt;/a&gt;, lot&amp;rsquo;s of good stuff that I won&amp;rsquo;t duplicate here with one exception: federation &lt;strong&gt;not&lt;/strong&gt; good.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://bobwyman.pubsub.com/main/2005/08/what_is_talkgoo.html&#34;&gt;Bob Wyman at his best&lt;/a&gt;: use XMPP to track XMPP news. And also talking about &lt;a href=&#34;http://bobwyman.pubsub.com/main/2005/08/will_yahoo_be_n.html&#34;&gt;Yahoo! and XMPP&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;A new edition of &lt;a href=&#34;http://www.jabber.org/journal/2005-08-24.shtml&#34;&gt;Jabber Journal&lt;/a&gt;, with lot&amp;rsquo;s of cool information&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;My take: I&amp;rsquo;ve been following XMPP for some years now, and tomorrow it will be a big day for all of us who believe that it is a excellent technology for IM and presence applications.&lt;/p&gt;

&lt;p&gt;Although the service is still pretty basic, we are still poking in the dark to see what is out there. The small Gmail address book contact is something that a lot of people have talked about, but it might be the tip of the iceberg yet. I personally can only think about a Google-scale pubsub service. Imagine all those Google APIs with a push model to your desktop, using your XMPP stream. Bob Wyman is also &lt;a href=&#34;http://bobwyman.pubsub.com/main/2005/08/will_yahoo_be_n.html&#34;&gt;talking about this&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Also, notice that server-to-server connectivity is still not there. And that&amp;rsquo;s the big one for me.&lt;/p&gt;

&lt;p&gt;Will Google open up it&amp;rsquo;s network? I really &lt;strong&gt;really&lt;/strong&gt; hope so.&lt;/p&gt;

&lt;p&gt;In the following days and weeks to come, I&amp;rsquo;m going to find it interesting to see Yahoo, Skype and AIM response. MSN will be fun to see, at best.&lt;/p&gt;

&lt;p&gt;AIM already has a server-to-server XMPP connectivity, but only to Jabber.Inc customers and the price point is not something to brag about, I&amp;rsquo;ve been told.&lt;/p&gt;

&lt;p&gt;Yahoo and Skype don&amp;rsquo;t seem to have many technology barriers to implement a XMPP server-to-server gateway: all their clients share a single domain name under their control.&lt;/p&gt;

&lt;p&gt;As for MSN, well, the only domains that they can open up to XMPP is the ones they control: hotmail.com. All the other MSN users that use their own email address to authenticate themselves into the MSN network are out of luck.&lt;/p&gt;

&lt;p&gt;This new service, for those of us who work in the instant message area, is not a small issue, and it&amp;rsquo;s not hype. IM networks have been for some time isolated, closed islands, in which the only ways to interop are reverse-engineered software bridges like pyMSNt, pyMSNt or pyICQ, to name just a few.&lt;/p&gt;

&lt;p&gt;But having a big name such as Google opening up it&amp;rsquo;s network, we get traction. Maybe enough of it to level the playing field.&lt;/p&gt;

&lt;p&gt;It&amp;rsquo;s going to be a hell of a ride&amp;hellip;&lt;/p&gt;

&lt;p&gt;&lt;!-- technorati tags start --&gt;&lt;p style=&#34;text-align:right;font-size:10px;&#34;&gt;Technorati Tags: &lt;a href=&#34;http://technorati.com/tag/google&#34; rel=&#34;tag&#34;&gt;google&lt;/a&gt;, &lt;a href=&#34;http://technorati.com/tag/jabber&#34; rel=&#34;tag&#34;&gt;jabber&lt;/a&gt;, &lt;a href=&#34;http://technorati.com/tag/talk&#34; rel=&#34;tag&#34;&gt;talk&lt;/a&gt;, &lt;a href=&#34;http://technorati.com/tag/xmpp&#34; rel=&#34;tag&#34;&gt;xmpp&lt;/a&gt;&lt;/p&gt;&lt;!-- technorati tags end --&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Forked files and Tiger Server</title>
      <link>https://www.simplicidade.org/notes/2005/05/02/forked-files-and-tiger-server/</link>
      <pubDate>Mon, 02 May 2005 13:15:44 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/05/02/forked-files-and-tiger-server/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.afp548.com/article.php?story=2005041722220621&#34;&gt;AFP548 - Tiger Server Overview&lt;/a&gt;:
&amp;gt; Another welcome feature is a new API that lets traditional UNIX tools such a cp, mv, tar, and
&amp;gt; rsync work with forked files. This should open up a much easier world of scripting
&amp;gt; for Mac OS X.&lt;/p&gt;

&lt;p&gt;This is way cool! At last! Can anyone confirm that &lt;code&gt;rsync&lt;/code&gt; that comes with Tiger Client is already using this API?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; More information from &lt;a href=&#34;http://mjtsai.com/blog/2005/05/01/random-tiger-notes/&#34;&gt;Michael Tsai - Blog  -  Random Tiger Notes&lt;/a&gt;:
&amp;gt; A Mac-savvy rsync was, for me, one of the most anticipated features of Tiger. Unfortunately, it’s been unreliable so far. Nearly every time I use it to sync a large folder using the -E flag, it either crashes or stops with an internal error.
&amp;gt; The Mac-savvy tar, cp, and scp rock. So does BOMArchiveHelper.&lt;/p&gt;

&lt;p&gt;Again from the &lt;a href=&#34;http://www.afp548.com/article.php?story=2005041722220621&#34;&gt;AFP548 - Tiger Server Overview&lt;/a&gt;:
&amp;gt; Secondly, we have synchronized mobile homes now! Macintosh Manager
&amp;gt; had a &amp;ldquo;Check Out&amp;rdquo; feature that would sync your data down to a
&amp;gt; workstation and then sync it back when you checked it back in. Tiger
&amp;gt; brings a new feature called Portable Home Directories that allows
&amp;gt; us several ways to synchronize the mobile home to the network one.
&amp;gt; You can define how the sync takes place in Workgroup Manager&amp;rsquo;s
&amp;gt; Mobility preferences. The Portable Home Directory is synchronized
&amp;gt; on it&amp;rsquo;s first login after creation and is then kept synchronized in
&amp;gt; several ways. You can define a periodic background sync, or a login
&amp;gt; or logout sync. Also the user can select Sync Home Now from the menu
&amp;gt; bar at any time. You can also specify rules to determine what gets
&amp;gt; synced, for example you might not want to sync the Safari cache folder.&lt;/p&gt;

&lt;p&gt;This is so cool. I have to find a way to put a 10.4 server at the office, even if inside a Mac mini.&lt;/p&gt;

&lt;p&gt;The bad part: the VPN server did not change much. We are using the 10.3 version at the office and I would like to have firewall and routing tables per user. Doesn&amp;rsquo;t seem that we are getting them.&lt;/p&gt;

&lt;p&gt;Also the XMPP server included is based on Jabberd 1.4.x, which is too bad. I was hoping for a more recent server, maybe one of the new ones in Java. Hoping for &lt;code&gt;ejabberd&lt;/code&gt; was a bit too optimistic.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Johannes Ernst&#39;s Blog</title>
      <link>https://www.simplicidade.org/notes/2005/04/30/johannes-ernsts-blog/</link>
      <pubDate>Sat, 30 Apr 2005 13:45:52 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/04/30/johannes-ernsts-blog/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://netmesh.info/jernst/2005/04/25#4-point-architecture&#34;&gt;Johannes Ernst&amp;rsquo;s Blog&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I&amp;rsquo;d like to suggest that some of the world&amp;rsquo;s most successful distributed software
architectures are neither client-server nor peer-to-peer when you look
at them closely. They follow an architectural pattern that I&amp;rsquo;d like to call
the 4-Point Architecture.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I like his point of view. Yet, I don&amp;rsquo;t think that all of the rules make sense. In particular:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;No dark point ever interacts directly with another dark point, they
always go through their respective bright points first.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That&amp;rsquo;s not right. I mean it does not scale. Imagine VoIP or other stream-oriented medium to high-bandwidth protocol. It just doesn&amp;rsquo;t scale unless you throw huge amount of bandwidth to the problem.&lt;/p&gt;

&lt;p&gt;Most of the architecture presented seems right, but the bright points should also allow for point-of-meeting to the dark points so that they can agree on a direct connection if at all possible due to NAT/Firewall restrictions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; Johannes comment (thanks, btw) below that it&amp;rsquo;s true that dark points can talk to each other due to performance issues. He&amp;rsquo;s right, that should be the only reason. Of course, my comment about his architecture was just a minor pet peeve. I do agree with him about the rest.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Psi nightly builds</title>
      <link>https://www.simplicidade.org/notes/2005/04/15/psi-nightly-builds/</link>
      <pubDate>Fri, 15 Apr 2005 11:38:14 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/04/15/psi-nightly-builds/</guid>
      <description>&lt;p&gt;So I&amp;rsquo;m a lazy bastard, so far nothing new. But I also want to look at the latest &lt;a href=&#34;http://psi.affinix.com/&#34;&gt;Psi&lt;/a&gt;, ze mozt powerfull Jabber client out there, releases for Mac, and lo and behold &lt;a href=&#34;http://psi.affinix.com/?page=development#nightlies&#34;&gt;they have nightly builds&lt;/a&gt;&amp;hellip;&lt;/p&gt;

&lt;p&gt;This is the script I ended up with to update my Psi every day:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;melo@RoadRunner(~/Desktop/psi-night-build)$ cat update_psi.sh
#!/bin/sh
#
# Updates Psi with latest nightly build
#

today=`date +%Y%m%d`

if [ -d &amp;quot;psi-mac-$today&amp;quot; ] ; then
  echo &amp;quot;You already have build $today, restart your Psi to use it, maybe?&amp;quot;
  exit 1
fi

curl -O http://spike.ulyssis.org/psi/mac/psi-mac-$today.zip

unzip psi-mac-$today.zip
rm psi-mac-$today.zip
rsync -a into_frameworks/ psi-mac-$today/Psi.app/Contents/Frameworks
rm -f psi-latest
ln -s psi-mac-$today psi-latest
growlnotify -n &amp;quot;Psi Nightly build updater&amp;quot; -s -a Psi &#39;Psi is updated!&#39; &amp;lt;&amp;lt;EOF
You Psi was updated with the latest nightly build, $today. Please Quit and restart you Psi.
EOF
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Make sure you &lt;code&gt;chmod 755 update_psi.sh&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Now you just need to restart you Psi every morning after the nice growl notification appears. I keep &lt;code&gt;~Desktop/psi-night-build/psi-latest/Psi.app&lt;/code&gt; on my Dock.&lt;/p&gt;

&lt;p&gt;Couple of notes: on the directory where you run &lt;code&gt;update_psi.sh&lt;/code&gt;, you must have a directory &lt;code&gt;into_frameworks&lt;/code&gt;. Inside you need to put all the Frameworks required to run Psi. Right now, you need to have the &lt;code&gt;libqt-mt.3.dylib&lt;/code&gt; (found on the same directory where you can find Psi nightly builds), and the &lt;a href=&#34;http://growl.info/&#34;&gt;Growl&lt;/a&gt; framework.&lt;/p&gt;

&lt;p&gt;I used the copy of the Growl framework that comes with Ecto. Use &lt;code&gt;locate Growl.framework&lt;/code&gt; to find a copy on your system, and copy it into &lt;code&gt;into_frameworks&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;My &lt;code&gt;into_frameworks&lt;/code&gt; looks like this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;melo@RoadRunner(~/Desktop/psi-night-build)$ ls -la into_frameworks/
total 18376
drwxrwxr-x  4 melo  melo      136 15 Apr 11:01 .
drwxrwxr-x  9 melo  melo      306 15 Apr 11:29 ..
drwxr-xr-x  7 melo  melo      238  4 Apr 04:17 Growl.framework
-rw-r--r--  1 melo  melo  9404804 16 Aug  2004 libqt-mt.3.dylib
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The main directory where I keep &lt;code&gt;update_psi.sh&lt;/code&gt; looks like this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;melo@RoadRunner(~/Desktop/psi-night-build)$ ls -la
total 128
drwxrwxr-x   9 melo  melo    306 15 Apr 11:29 .
drwx------  23 melo  melo    782 15 Apr 11:21 ..
drwxrwxr-x   4 melo  melo    136 15 Apr 11:01 into_frameworks
lrwxrwxr-x   1 melo  melo     16 15 Apr 11:12 psi-latest -&amp;gt; psi-mac-20050415
drwxr-xr-x   5 melo  melo    170 15 Apr 02:25 psi-mac-20050415
-rwxr-xr-x   1 melo  melo    598 15 Apr 11:27 update_psi.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Although the Growl framework is required in latest builds, I cannot seem to get it working. If you know how, xmpp me at melo funnychar simplicidade.org.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Update:&lt;/em&gt; Growl works very well if you use the Remko versions. See his &lt;a href=&#34;http://www.cs.kuleuven.ac.be/~remko/psi/&#34;&gt;Psi page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Update 2:&lt;/em&gt; small bug in the &lt;code&gt;if [ -d ...&lt;/code&gt; in the script, change &amp;ldquo; to &amp;ldquo;&amp;rdquo;. Thanks go to &lt;a href=&#34;http://pensamentos.profundos.org/&#34;&gt;rebarbado&lt;/a&gt;.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Do you know your friends?</title>
      <link>https://www.simplicidade.org/notes/2005/04/09/do-you-know-your-friends/</link>
      <pubDate>Sat, 09 Apr 2005 12:41:14 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2005/04/09/do-you-know-your-friends/</guid>
      <description>&lt;p&gt;I was looking at the demo video of &lt;a href=&#34;http://locus.e-mu.org/&#34;&gt;Locus&lt;/a&gt; and talking with &lt;a href=&#34;http://the.taoofmac.com/&#34;&gt;Rui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Locus analyses your chats (Jabber-based but you could use over anything, even multi-protocol) and creates a bayesian profile of your friends. It&amp;rsquo;s then able to create connections between friends sharing the same interests.&lt;/p&gt;

&lt;p&gt;The interesting part of the idea is that you could extend it beyond chat, into mail. You could link all your own friends interactions (mails, chats) to find hidden links between people.&lt;/p&gt;

&lt;p&gt;That would be&amp;hellip;. interesting.&lt;/p&gt;

&lt;p&gt;An extreme example from my chat with Rui: &amp;ldquo;Locus wants to know if you&amp;rsquo;d like to meet Mandy. Mandy is an air hostess that enjoys Macs, scuba diving, raw photography and bayesian filtering&amp;rdquo;.&lt;/p&gt;

&lt;p&gt;A dream come true to a &lt;a href=&#34;http://cafeteira.pedro.nu/&#34;&gt;special common friend&lt;/a&gt; of ours.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Examples of notifications via XMPP</title>
      <link>https://www.simplicidade.org/notes/2004/12/03/examples-of-notifications-via-xmpp/</link>
      <pubDate>Fri, 03 Dec 2004 14:37:45 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/12/03/examples-of-notifications-via-xmpp/</guid>
      <description>&lt;p&gt;Yesterday, I wrote an unusually long article about &lt;a href=&#34;http://www.simplicidade.org/notes/archives/2004/12/xmpp_jabber_and.html&#34; title=&#34;More stuff about notifications via IM&#34;&gt;IM systems as a transport mechanism to notifications&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I got a comment from &lt;a href=&#34;http://bobwyman.pubsub.com/&#34; title=&#34;Bob Wyman blog&#34;&gt;Bob Wyman&lt;/a&gt;, of &lt;a href=&#34;http://www.pubsub.com/&#34; title=&#34;PubSub homepage&#34;&gt;PubSub.com&lt;/a&gt; fame, getting my attention to PubSub usage of JEP-0060 as a &lt;a href=&#34;http://bobwyman.pubsub.com/main/2004/11/we_only_do_half.html&#34; title=&#34;Bob Wyman on prospective search&#34;&gt;prospective search&lt;/a&gt; mechanism.&lt;/p&gt;

&lt;p&gt;Well, I didn&amp;rsquo;t forget. I use it everyday. I have a pubsub subscription on &amp;ldquo;JEP-0060&amp;rdquo; and less than 30 minutes after I posted my article, my pubsub feed was telling me that I had a new article, my article. So it works extremely well.&lt;/p&gt;

&lt;p&gt;PubSub is without a doubt the largest implementation of JEP-0060 I know about. The other big implementation is also a service I use a lot: &lt;a href=&#34;http://mimir.ik.nu/&#34; title=&#34;Mimír homepage&#34;&gt;Mimír&lt;/a&gt;. It sends me messages whenever certain feeds have new items. It also does aggregation of items while I&amp;rsquo;m offline, and send&amp;rsquo;s me a summary whenever I get back online. It&amp;rsquo;s an excellent service, and it&amp;rsquo;s also supported with JEP-0060 (ralph, the Mimír creator, is also the creator of &lt;a href=&#34;http://idavoll.jabberstudio.org/&#34; title=&#34;Idavoll homepage&#34;&gt;Idavoll&lt;/a&gt;). Since I subscribed to mimir, I dropped a lot of subscriptions from NetNewsWire, and my RSS reading in the morning is now much more managable.&lt;/p&gt;

&lt;p&gt;Both of these systems work very well, and with a decent IM client, I also get Growl notifications of the items. Is pretty cool.&lt;/p&gt;

&lt;p&gt;One thing I wonder is if Mimír receives updates via JEP-0060 from pubsub.com? That would interesting. It doesn&amp;rsquo;t seem so, looking at the &lt;a href=&#34;http://mimir.ik.nu/about&#34; title=&#34;Mimír architecture&#34;&gt;architecture&lt;/a&gt; of it.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>XMPP, Jabber and Growl: notification systems</title>
      <link>https://www.simplicidade.org/notes/2004/12/02/xmpp-jabber-and-growl-notification-systems/</link>
      <pubDate>Thu, 02 Dec 2004 13:30:44 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/12/02/xmpp-jabber-and-growl-notification-systems/</guid>
      <description>&lt;p&gt;&lt;em&gt;Updated:&lt;/em&gt; fixed all the links, sorry, I&amp;rsquo;m a markdown beginner. Thanks Ralph.&lt;/p&gt;

&lt;p&gt;&lt;a href=&#34;http://the.taoofmac.com/space/&#34;&gt;Rui&lt;/a&gt; did some work on
&lt;a href=&#34;http://www.growl.info/&#34; title=&#34;Growl homepage&#34;&gt;growl&lt;/a&gt; remote notifications, and then he made a question: &lt;a href=&#34;http://the.taoofmac.com/space/blog/2004-12-01&#34;&gt;why don&amp;rsquo;t
we make this a standard&lt;/a&gt;?
In doing that, he also talks about &lt;a href=&#34;http://www.jabber.org/&#34; title=&#34;Jabber Software Foundation&#34;&gt;Jabber&lt;/a&gt; and the failure of that
project. I don&amp;rsquo;t agree with the last part at all, and I&amp;rsquo;ll try to answer
his question.&lt;/p&gt;

&lt;p&gt;First, let&amp;rsquo;s talk about Growl. I really really like Growl, I think it is
the second best thing that has happened to the Mac this year (the first
being Quicksilver). I like the fact that with it I can have a single app
and a single prefpane that controls all my notifications. I even changed
IM clients (from Proteus to Adium) because I could not find Growl
support in Proteus, and Adium 0.7 had it.&lt;/p&gt;

&lt;p&gt;But Growl has some problems. First, I don&amp;rsquo;t have a history of
notifications. Sometimes I&amp;rsquo;m away from my TiBook, and I lose
notifications. I don&amp;rsquo;t have a place where I can see the last 20 minutes
of notifications.&lt;/p&gt;

&lt;p&gt;Second, when I&amp;rsquo;m offline, I cannot receive notifications, and while the
servers could keep on trying to send them, it wouldn&amp;rsquo;t work very well.
The moment you get online, you&amp;rsquo;re bombarded with notifications, so
you&amp;rsquo;ll probably just skip most of them. If you want to see what I&amp;rsquo;m
saying, download &lt;a href=&#34;http://homepage.mac.com/jeremy_knope/&#34;&gt;Rawr-endezvous&lt;/a&gt;,
connect your Mac to a local network with lots of other Macs,
and fire it up. Expect to be looking at several screens worth of
notifications.&lt;/p&gt;

&lt;p&gt;Third, you can specify a title and a text for each notification, but you
cannot follow it through to the tool/site/server where you can fix the
problem. Growl really needs support for a URL, a clickable one. The lack
of a &amp;ldquo;tell me more&amp;rdquo;-action limits the usefulness.&lt;/p&gt;

&lt;p&gt;Fourth, I have 200+ systems, in several places, behind several types
of firewalls. My own laptop is behind another corporate firewall, and
I don&amp;rsquo;t expect the local firewall admins to open up yet another port
for notifications. Also, I don&amp;rsquo;t think it is reasonable to have
systems on the other side of the planet sending me notifications
directly to my laptop.&lt;/p&gt;

&lt;p&gt;Growl is the last mile of notification systems. It&amp;rsquo;s a personal
notification system, not a network notification system. Does it need to
receive events from the network? Sure! Should we create another protocol
for that? Maybe not.&lt;/p&gt;

&lt;p&gt;A network notification system needs a lot more than displaying the
notifications. It needs aggregation of events, it needs to know that the
user is online or offline, to route the notifications to the most
available person to handle it. And that brings us to IM systems.&lt;/p&gt;

&lt;p&gt;If you use an IM system for transport of notifications, you get a lot of
those things for free. When I say IM system, I don&amp;rsquo;t limit myself to
XMPP/Jabber. You can use SIMPLE if you want. I really don&amp;rsquo;t care. I use
XMPP/Jabber because that&amp;rsquo;s what I know. I&amp;rsquo;ll use XMPP in the rest of
this article because of that. Fell free to s/XMPP/IM system/g.&lt;/p&gt;

&lt;p&gt;With XMPP you get a lot of things out-of-the-box:
  * You get an extensible protocol;
  * You get all the authentication stuff (with TLS support);
  * you get a bi-directional protocol, so you can ask the source of the
    notification &amp;ldquo;Tell me more&amp;rdquo;;
  * you get a global scalable reliable protocol;
  * you get powerful publish/subscribe primitives.&lt;/p&gt;

&lt;p&gt;Let&amp;rsquo;s look at each of these in turn. XMPP is an extensible protocol and
that allows you to define new packets (stanzas in XMPP lingo) to
transport all the information and semantic hints you want.&lt;/p&gt;

&lt;p&gt;You can ask people who know me, I&amp;rsquo;m not a big fan of XML. I think it is
over-hyped and over-used. It seems that, like IBM mainframes in the 60&amp;rsquo;
and Cisco gear in the 90&amp;rsquo;, you won&amp;rsquo;t be fired if you use them. XML is
also lousy for transport of information. Network protocols should be
efficient and XML is not. An XML parser is more complex and heavy than a
XDR or ASN.1 parser, for sure. Also the amount of useless information in
XML is very high. &lt;a href=&#34;http://en.wikipedia.org/wiki/David_A._Huffman&#34; title=&#34;David A. Huffman&#34;&gt;Huffman&lt;/a&gt; must be turning in it&amp;rsquo;s grave.&lt;/p&gt;

&lt;p&gt;I don&amp;rsquo;t see XML as the reason for XMPP extensibility, I really don&amp;rsquo;t,
but XML is a very high-level method of encoding information, and for now
it helps to use it as the base of XMPP. Eventually, you could put a XML
dictionary-based compression scheme between XMPP clients and servers,
and still use the same protocol. Only compressed in transit. Gzip is
also an option, and it&amp;rsquo;s even mentioned in XMPP RFC (this is from
memory, I need to check the negotiation phase).&lt;/p&gt;

&lt;p&gt;Before people start telling me something like &amp;ldquo;you stupid person, my
p4 x ghz machine does not have performance problems with XML&amp;rdquo;, or &amp;ldquo;you
moron, my 2mbit ADSL is mostly empty, so if I need 400 bytes to send a
simple hello, that&amp;rsquo;s not a problem&amp;rdquo;, I have two things for you to
think about:
  * always-on mobile networks &lt;em&gt;will&lt;/em&gt; charge you for bytes transfered, at
    least in the mass-market plans;
  * it&amp;rsquo;s a waste of resources having 20000 clients connected to my
    server and having 20000 XML parsers: machines don&amp;rsquo;t need human-
    readable protocols.&lt;/p&gt;

&lt;p&gt;Back to our list, the second point is TLS support. It&amp;rsquo;s mandatory in
XMPP. It&amp;rsquo;s a standard, it works and it&amp;rsquo;s well understood.&lt;/p&gt;

&lt;p&gt;The third point is bi-directional protocol. Having a bi-directional
protocol allows you to use your notification system to query your
systems. It allows your notifications to be short and to the point,
giving you the possibility to ask for more information, so that you can
correctly evaluate the problem.&lt;/p&gt;

&lt;p&gt;The fourth point, a scalable network, is very important if you have more
than 50 or so servers. You need aggregation points for notifications,
and you need server-to-server communications. You also need reliability,
you need the assurance that if an application sends a notification to
the local notification center, the message wont be lost (insert regular
acts of god disclaimer here). You need store-and-forward semantics, or
end-to-end acknowledge of notification. Maybe a mix of both.&lt;/p&gt;

&lt;p&gt;Finally, you probably work in a team, with a on-duty staff, and with
escalation procedures for notifications. If a disk is 100% full, I don&amp;rsquo;t
care if you&amp;rsquo;re offline, someone must be notified, right? Here we get
into pubsub systems, probably the best way to deal with the problem of
one to many communications right now. You can subscribe to applications,
servers, clusters, any node or object in your infrastructure. It&amp;rsquo;s your
decision, it&amp;rsquo;s under your control.&lt;/p&gt;

&lt;p&gt;Pubsub is available in XMPP in two forms: the lazy one, and the standard
one. The lazy one is multi-user chat rooms. You can use a multi-user
chat room as a basic quick and dirty pubsub. Just create a chat room for
each topic. Whoever wants to be notified, just joins the chat room. It&amp;rsquo;s
a one-to-many system, and it works. Imagine this: all your mail servers
connected to the same chat room, and having one of them say &amp;ldquo;Hey people,
this dude at 127.0.0.1 is spamming me hard. block the sucker&amp;rdquo;, and
having all the other machines in the cluster do it. You can even go into
the chat room to monitor those events, or even to say &amp;ldquo;guys, unblock
127.0.0.1, please&amp;rdquo;. Yes, notifications can be sent between applications.&lt;/p&gt;

&lt;p&gt;The standard for pubsub is &lt;a href=&#34;http://www.jabber.org/jeps/jep-0060.html&#34; title=&#34;Publish-Subscribe&#34;&gt;JEP-0060&lt;/a&gt;, and you have at least two
implementations today: ralph&amp;rsquo;s &lt;a href=&#34;http://idavoll.jabberstudio.org/&#34; title=&#34;Idavoll&#34;&gt;Idavoll&lt;/a&gt; and &lt;a href=&#34;http://ejabberd.jabberstudio.org/&#34; title=&#34;Ejabberd&#34;&gt;ejabberd&lt;/a&gt; (which
also seems a very nice, mostly-XMPP compliant server. If only virtual
hosts where supported&amp;hellip;)&lt;/p&gt;

&lt;p&gt;So with all of this, using an IM protocol for transport of notifications
has a lot going for it. XMPP is by no means perfect. I&amp;rsquo;m still not sure
if XMPP can really assure delivery of messages between servers. I don&amp;rsquo;t
think you have the same store-and-forward with acknowledges you have in
SMTP. And I really think that a low-bandwidth version of the Jabber
network protocol is needed. But it&amp;rsquo;s a start.&lt;/p&gt;

&lt;p&gt;So answering Rui&amp;rsquo;s question: why not make Growl a standard? Well, by all
means, do it. But as a last mile solution for the notification problem,
not for the network part of the problem. The network part is complex and
we already have protocols that do it very well, we just need to glue
them together.&lt;/p&gt;

&lt;p&gt;How do we do that? Well, I have an idea, but I&amp;rsquo;ll need to talk about
something else first, to clarify something about XMPP/Jabber that Rui
also mentions (yes, the &amp;ldquo;jabber is dead part&amp;rdquo;&amp;hellip;).&lt;/p&gt;

&lt;p&gt;Saying that XMPP is an IM protocol, is like saying that SMTP is for
sending text messages. Yes, you can do it, and it&amp;rsquo;s probably the most
common use. But XMPP is so much more if you look into it. It has a
powerful resource discovery protocol (See &lt;a href=&#34;http://www.jabber.org/jeps/jep-0030.html&#34; title=&#34;Service Discovery&#34;&gt;JEP-0030&lt;/a&gt;) and at least
one decent client implementation, &lt;a href=&#34;http://psi.affinix.com/&#34; title=&#34;Psi&#34;&gt;Psi&lt;/a&gt;, very decent publish and
subscribe capabilities, and it also does IM :).&lt;/p&gt;

&lt;p&gt;Regarding the lack of clients, my answer is &amp;ldquo;it depends&amp;rdquo;. You can have
great clients today if you want the IM part only. Adium works very well,
Fire also works OK. If you really need a XMPP client (and that&amp;rsquo;s an
entirely different ball game), then no, there aren&amp;rsquo;t any good clients
out there. Again, &lt;a href=&#34;http://psi.affinix.com/&#34; title=&#34;Psi&#34;&gt;Psi&lt;/a&gt; is probably the best one.&lt;/p&gt;

&lt;p&gt;The way I see it, XMPP is much more powerful than traditional IM
systems, and most client implementations stop after having the IM part
done. The rest of the XMPP doesn&amp;rsquo;t seem to have reached critical mass.
In XMPP, you can use pubsub to publish the current music you are
listening to, and I can subscribe to that topic to know that (and then
probably use Growl to tell me whenever that changes). But there is a lot
of framework missing that needs to be in place to make it work: how does
my XMPP client talk to my music player? In a Apple environment this is a
little bit easier, due to the iTunes domination, but these are the
problems that face XMPP extensions adoption for now.&lt;/p&gt;

&lt;p&gt;Now back to Rui&amp;rsquo;s answer: how do we do it? Well, you could build a XMPP
client not for IM, but for notifications only. Your own personal
notification avatar. Julian &lt;a href=&#34;http://missig.org/julian/blog/2004/11/27/jabber-vision/&#34; title=&#34;Jabber vision&#34;&gt;mentioned&lt;/a&gt; this recently. You can even
built it into Growl itself.&lt;/p&gt;

&lt;p&gt;This would allow you to use Growl to subscribe to topics. You still need
to solve Growl shortcomings (at least the lack of URL support), but the
rest is pretty much already in place.&lt;/p&gt;

&lt;p&gt;My own jab at the problem, &lt;a href=&#34;http://www.simplicidade.org/pocs/ambrosio.html&#34; title=&#34;Ambrosio&#34;&gt;Ambrosio&lt;/a&gt;, does some of it, but I&amp;rsquo;m
still finishing it&amp;rsquo;s infrastructure to be able to do what I&amp;rsquo;ve been
talking about. We&amp;rsquo;ll see what happens in the next weeks.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>IETF Publishes XMPP RFCs</title>
      <link>https://www.simplicidade.org/notes/2004/10/05/ietf-publishes-xmpp-rfcs/</link>
      <pubDate>Tue, 05 Oct 2004 11:16:29 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/10/05/ietf-publishes-xmpp-rfcs/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.ietf.org/&#34;&gt;IETF&lt;/a&gt; has &lt;a href=&#34;http://www.jabber.org/press/2004-10-04.php&#34;&gt;published the XMPP RFCs&lt;/a&gt;. This is great news.&lt;/p&gt;

&lt;p&gt;I don&amp;rsquo;t expect the world of IM to switch to XMPP, but if the large IM networks open up, my only hope is that they choose XMPP as the public protocol. I guess I&amp;rsquo;m a optimist :)&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Ambrosio is useful now</title>
      <link>https://www.simplicidade.org/notes/2004/07/27/ambrosio-is-useful-now/</link>
      <pubDate>Tue, 27 Jul 2004 16:05:38 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/07/27/ambrosio-is-useful-now/</guid>
      <description>&lt;p&gt;The latest version of &lt;a href=&#34;http://www.simplicidade.org/pocs/ambrosio.html&#34;&gt;Ambrosio&lt;/a&gt; is now useful. You can now send notifications from scripts or applications you write.&lt;/p&gt;

&lt;p&gt;I did this last sunday but I needed to write a small manual for notifications.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>New version of Ambrosio</title>
      <link>https://www.simplicidade.org/notes/2004/07/23/new-version-of-ambrosio/</link>
      <pubDate>Fri, 23 Jul 2004 16:21:11 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/07/23/new-version-of-ambrosio/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.simplicidade.org/pocs/ambrosio.html&#34;&gt;Ambrosio&lt;/a&gt; is almost ready for major deployment. A new version is available (0.3), and now you can subscribe the bots presence.&lt;/p&gt;

&lt;p&gt;The roadmap is something like this:&lt;/p&gt;

&lt;ol&gt;
 &lt;li&gt; Finish Notice plugin: you drop small files in a specific directory, the local bot will pick them up and forward them to the JID&#39;s specified in the file - this allows for other scripts or applications in each one of your servers to send notifications; &lt;/li&gt;
  &lt;li&gt; Better management of notifications and presence: don&#39;t send notifications to people that are away or disconnected. &lt;/li&gt;
  &lt;li&gt; Multi-User chat support: its going to be nice to enter a room filled with your webservers and tell them &lt;code&gt;all, restart apache&lt;/code&gt;, or having bots talking to one another like &lt;code&gt;people, bloody harvest at IP_ADDRESS&lt;/code&gt;  and have all the others block that IP via iptables&lt;/li&gt;
  &lt;li&gt; Log watcher: probably just a gateway to a local swatch application? &lt;/li&gt;
  &lt;li&gt; Start to think about a meta-bot: a bot controlling the other bots - he can receive notifications for disconnected users, and decide what to do with them:
     &lt;ul&gt;
        &lt;li&gt;forward part of the notification via SMS?&lt;/li&gt;
        &lt;li&gt;send a URL pointing to the note?&lt;/li&gt;
        &lt;li&gt;keep a log of unread notices?&lt;/li&gt;
     &lt;/ul&gt;    
  &lt;/li&gt;
  &lt;li&gt; Each plugin could have &lt;i&gt;variables&lt;/i&gt; that he was willing to supply to some one: uptime can have the load, df can have free_kb_partition. These variables can be watched (you get some notification if they change, or if they trigger some threshold), or even logged (sql or rrdtool).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I have more ideas, some totally crazy (like having a pam_bot that asks the admin of the machine if the person trying to logging can do so before allowing it :) ), others more useful.&lt;/p&gt;

&lt;p&gt;Remember that the core of &lt;a href=&#34;http://www.simplicidade.org/pocs/ambrosio.html&#34;&gt;Ambrosio&lt;/a&gt; is likely to change in the near future. The plugins will most likely be compatible. But the core will change &lt;b&gt;a lot!&lt;/b&gt;.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Ambrosio</title>
      <link>https://www.simplicidade.org/notes/2004/07/21/ambrosio/</link>
      <pubDate>Wed, 21 Jul 2004 15:32:00 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/07/21/ambrosio/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://www.simplicidade.org/pocs/ambrosio.html&#34;&gt;Ambrosio&lt;/a&gt; is a POE Jabber bot that you can run on each server you manage.&lt;/p&gt;

&lt;p&gt;It gives you three commands: uptime, df and ps. It also responds to help.&lt;/p&gt;

&lt;p&gt;It&amp;rsquo;s pluging based, you can extend it easily. In the few days, I should post plugins to control access to those bots, notification of events on other applications, and more commands.&lt;/p&gt;

&lt;p&gt;It&amp;rsquo;s a &lt;a href=&#34;http://www.simplicidade.org/pocs/&#34;&gt;proof of concept&lt;/a&gt;  only. I&amp;rsquo;m doing it to gain some experience with POE::Component::Jabber::Client and other stuff. It will evolve into a small framework for making multi-network bots.&lt;/p&gt;

&lt;p&gt;You can find it &lt;a href=&#34;http://www.simplicidade.org/pocs/ambrosio.html&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Oh, BTW, it requires a modified POE::Component::Jabber::Client::Legacy module (included in version 0.2 and above). The CPAN version doesn&amp;rsquo;t seem to allow automatic registration, and I needed that. I have to cleanup my patch and send it upstream to Nick.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Yahoo changes IM protocol</title>
      <link>https://www.simplicidade.org/notes/2004/06/25/yahoo-changes-im-protocol/</link>
      <pubDate>Fri, 25 Jun 2004 12:41:25 +0000</pubDate>
      <author>melo@simplicidade.org (Pedro Melo)</author>
      <guid>https://www.simplicidade.org/notes/2004/06/25/yahoo-changes-im-protocol/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://yahoo.com/&#34;&gt;Yahoo&lt;/a&gt; &lt;a href=&#34;http://yahoo.weblogsinc.com/entry/3622731284116041/&#34;&gt;changed their IM protocol&lt;/a&gt; &lt;a href=&#34;http://news.com.com/Trillian+plugs+back+into+Yahoo%2C+MSN/2100-1012_3-5078708.html?tag=nl&#34;&gt;once again&lt;/a&gt;. The &lt;a href=&#34;http://news.com.com/Yahoo+to+Trillian%3A+Talk+to+the+hand/2100-1032_3-5245821.html&#34;&gt;official reason&lt;/a&gt; is to prevent IM spam (or spim). I felt this in the flesh yesterday, when my client Proteus refused to connect to Yahoo network, but I didn&amp;rsquo;t have a clear opinion about this. Parts of &lt;a href=&#34;http://jeremy.zawodny.com/blog/archives/002121.html&#34;&gt;Jeremy post&lt;/a&gt; helped me put it all in perspective.&lt;/p&gt;

&lt;p&gt;First, I never got IM spam over Yahoo or any other network, so my perspective over this could be somewhat biased.&lt;/p&gt;

&lt;p&gt;IM spam is nothing like mail spam. IM solutions have from the start the concept of establishing a trust relationship between two users. All the clients I know have a checkbox (the good ones make it the default) that only allows people in your buddy list to send you messages. So the spam issue, at least for me, is a non-issue.&lt;/p&gt;

&lt;p&gt;The other issue people are talking about is that &amp;ldquo;It&amp;rsquo;s Yahoo network, it&amp;rsquo;s Yahoo protocol, and it&amp;rsquo;s Yahoo resources, so they can do with them whatever they want&amp;rdquo;. Well, yes it&amp;rsquo;s true. But thats a shallow analysis of the problem.&lt;/p&gt;

&lt;p&gt;Think about why &lt;a href=&#34;http://www.trillian.cc/&#34;&gt;trillian&lt;/a&gt; and others have to, or want to reverse engineer the Yahoo protocol. I came up with two reasons:
&lt;ol&gt;
  &lt;li&gt;there is a user demand of a multi-network application: my friends are in multiple networks, and I want to talk to them without having to run multiple clients;&lt;/li&gt;
  &lt;li&gt;Yahoo does not have a open-protocol gateway to the outside.&lt;/li&gt;
&lt;/ol&gt;
The first one is interesting to me: the current official clients for the major networks are not good enough, they have limitations, because they cannot connect to multiple networks. So the market has this need, and the major networks &lt;b&gt;choose&lt;/b&gt; not to compete, but to stifle competition by starting a arms race that they have &lt;a href=&#34;http://www.ceruleanstudios.com/news_press/index.php&#34;&gt;little&lt;/a&gt; &lt;a href=&#34;http://gaim.sourceforge.net/&#34;&gt;chance&lt;/a&gt; of winning, while &lt;a href=&#34;http://news.com.com/Users+fume+over+Yahoo-Trillian+scuffle/2100-1032_3-5246933.html&#34;&gt;pissing of their own or potencial customers&lt;/a&gt;. Smart, eh?&lt;/p&gt;

&lt;p&gt;The second is more subtle. Given that the spam issue in IM networks is moot, I don&amp;rsquo;t see a reason  for Yahoo and the other networks not having a open transport gateway. Jabber or SIMPLE, for instance.&lt;/p&gt;

&lt;p&gt;In my view, if they had one, they would be giving more power to their own users, and give them a reason to stay with Yahoo network, and use their own client. It would become the race for the best client, and frankly, I don&amp;rsquo;t see what Yahoo and the others fear in that race: they have the resources and the content integration to provide the &lt;b&gt;best&lt;/b&gt; IM client out there, hands down.&lt;/p&gt;

&lt;p&gt;Imagine this: Yahoo and the others open up a Jabber gateway, and launch a new client to match. &amp;ldquo;Talk to anybody in the world, and you can still get personalized news feeds, your calendar, your mail notifications, in a single app&amp;rdquo;.&lt;/p&gt;

&lt;p&gt;I&amp;rsquo;m a believer in real-time always-on internet. I don&amp;rsquo;t need super-amounts of bandwidth, but I need it there, all the time. I would love to see a application that would be the center of my internet presence, gathering all my friends, all the &lt;i&gt;events&lt;/i&gt; of my online life: mail notifications, IM messages, calendar notifications, new post in my favorite feeds. I see it as: a social network-based app (maybe Google will open Orkut via an API&amp;hellip;), with touches of &lt;a href=&#34;http://www.nat.org/dashboard/&#34;&gt;dashboard&lt;/a&gt; for cross-linking of information. Add mobile connectivity (GPRS or better), a PDA or smart-phone, and your done!&lt;/p&gt;

&lt;p&gt;We can only hope&amp;hellip;&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>