Blog posts tagged "jabber"

WeeWar needs XMPP

May 14th, 2008

WeeWar broke in a wave across the office this afternoon. (thankfully late afternoon, or I might have gotten nothing done today). Its a Web-based turn based strategy game, thats very well done. Sort of a “Flickr for Risk”, with a nice value add pro account ($24.95/year), and APIs, social networking features, and a chatty tone.


But I’ve never run into an application that needed an XMPP interface more.

The most fundamental missing functionality is a convenient, light weight way of getting notified that your turn has rolled around again. WeeWar will send you email, but now your inboxes is even more cluttered, and you’re having to check your inbox constantly. (something I try to keep to 1-2 times an hour)


A Jabber interface you could trust to push to you the state changes news, and thereby remove the nagging, “Is it my turn?” and the variable positive reinforcement relationship it sets up with your inbox.

Additionally its a classic app where, if you’re polling, you want to keep the polling time very low, but the actual incident of change is fairly spare, which means WeeWar is going to at some point start resenting their polling based APIs.


Ideally messages would also include an XML payload describing either the changes since your last turn, or the current state of the map, allowing for rich consuming clients to build alternate interfaces to the world.

New Games

Orthogonally, a new games, and new games from your “preferred players” would also be excellent to get pushed out over Jabber.

XMPP in TiVo

January 11th, 2008

“Today each TiVo polls TiVo’s severs roughly every 15 minutes to check for new scheduled recordings, TiVoCast downloads, Unbox downloads, etc. That’s highly inefficient – nearly all of those polling calls are for nothing. There is nothing waiting to be done. And it introduces a lag when you want to start a download – up to 15 minutes. And it doesn’t scale well as TiVo’s user base keeps growing.

So what’s changed? The polling system is gone. TiVo is using XMPP now instead. What is XMPP? The Extensible Messaging and Presence Protocol – better known as the instant messaging protocol that powers Jabber, Google Talk, and other IM systems.” – Peter St. Andre noticed as interesting announcement coming out of CES. (via aaron)

Google Talk Architecture, and High Availability (HA)

July 29th, 2007


Via the HA blog (an obviously unserved niche in retrospect), a very interesting 30 minute presentation on the Google Talk architecture.

ConnectedUsers * BuddyListSize * OnlineStateChanges

Interestingly people keep independently re-discovering that maintaining presence is the hard part of scaling these systems.

Its something that really came home hard in my talking with Twitter helping with their scaling challenges (so much so that we took a slide out of our “Social Software for Robots” talk to talk about it, and Blaine mentioned it again in his “Scaling Twitter” talk)

So by way of a PSA:

Presence isn’t easy.

Growth in social systems in non-linear. Ignore the network effect at your peril.

Kick the Tires

Also interesting was “Real Life Load Tests”. The GTalk team deployed to Orkut and GMail weeks before actually turning on the UI for the features to be able to monitor the load. These are the practices that make Bill’s recent observation on HA systems possible:

An interesting takeaway is that it’s clearly possible to re-architect data storage on super-busy production systems seemingly no matter where you start from.

For the rest of bullets see the HA blog post.

Slides: Social Software for Robots

May 18th, 2007

Blaine and my slides from XTech07. (Oh, and SlideShare needs co-presenter features!)

More XTech ’07 slides.

Crumbling Illusion of Phone Network Security

April 11th, 2007

Tetanus Factory

It’s been “big news” that Twitter and Jott are vulnerable to CallerID spoofing. Can’t speak for the Jott kids, but I know this isn’t news to Twitter kids, given that Blaine and Rabble were demonstrating CallerID spoofing (and related techniques) over Asterisk several years ago.

This is one of those security problems that everyone knows about and quietly agrees not to speak too loudly about because alternatives like Nitesh proposes are usability disasters.

The carriers have designed their networks around the assumption of monopoly practices and zero information sharing, and it means they’re slow and make dumb mistakes. (I always think of it as a nice parallel to the current U.S. administration — organizational tactics constrain your imagination and your coping techniques)

Jabber, btw doesn’t have this problem.

Photo by thristian

Coding a Twitter killbot

March 9th, 2007

j =, pass)

j.received_messages.each do |mesg|
    if mesg.body.match(/austin|sxsw/i)
        sender = mesg.elements['//screen_name'].text
        j.deliver('', "leave #{sender}")

Though truth be told, it isn’t running.

Weather over Twitter

January 12th, 2007

Too Close!!!

And while we’re talking about recent hacks, Blaine and I whipped up a Jabber bot using his Jabber::Simple and the Yahoo weather feeds, to provide twice daily weather updates via Twitter.

Jabber is an intriguing platform to build on top of, and the more I play with it the more potential I find. I keep checking in on it every few years (since MetaEvents days), but recently its gotten much more interesting. In part thats Google’s adoption of the standard (and the subsequent enhancement in tools, libraries, and clients), and partially standards bake slowly, but at the core of it I think we’re reaching a point in the evolution of the Web where Internet-scale deployed messaging standards have a lot to offer of us. A protocol for when HTTP fails you.

If you follow these bots, you’ll receive those updates wherever you normally get your Twitters; IM, Phone, RSS, or just on the web. So far, we have bots for the following cities: Boston, Brighton, Chicago, Helsinki, London, Los Angeles, New York, Paris, Portland, San Francisco, Seattle, Singapore, and Vancouver. If you’d like to see another city, just ask and we’ll provide.

Slightly out of date source available at twitter-weather – Google Code

And taking requests for new cities. Probably do a big batch of new ones sometime next week. (not really an automated process)

Photo by bonsaikiptb

Jabber::Simple for Ruby

November 10th, 2006

Blaine finally released Jabber::Simple! Jabber::Simple is a straightforward Ruby wrapper for talking XMPP, the perfect for scripted IM interactions, or any other async communication you’ve got in mind. Sweet.

Tagged: Uncategorized ,

GChat Mini Review

February 8th, 2006

I use the GTalk Jabber network via Adium and I’ve been very happy with it, especially since they turned on federation. And I practically live in Gmail. I should be the GChat target audience. So initial impressions.


It slows down Gmail. And that isn’t good because I already spend way too much time waiting for Gmail. Some of this will be corrected with time, but loading time is noticeably slower, and it feels like day to day operations have taken a performance hit as well.

Slow Delivery

I’ve had at least two messages take 30-40 minutes to arrive. Presumably this is just launched hiccups.


I’ve got a 12in screen, and when the chat dialogs are up Gmail starts to feel claustrophobic. This goes double when I pause for a moment, and the chat enticement dialog pops up.


Gaim and OTR (and by extension Adium) mean that for the first time its trivial to have decent privacy in your messaging, practically for free. I’m not ready to give that up, and I can’t see GChat adding it.

Tagged: Uncategorized , , , ,

Denying Gmail Talk Invites

August 29th, 2005

If I’m denying your Gmail Talk invites (and I’ve gotten an alarming number), its because I did a search of my inbox, and didn’t find you. If I’m being dumb, drop me an email reminding me of the name to email relationship. Thanks

Tagged: Uncategorized , , ,

Google Talk

August 24th, 2005

I’m sure the VOIP integration will be a long term interesting feature of Google Talk, but today the transformative experience is that my contact list just tripled as the number of people whose Gmail address I know is several orders of magnitude larger then the set of people’s IM names.

That and the choice of Jabber means, a comparatively transparent experience of participating in the new system.

Tagged: Uncategorized , , ,

RSS/RDF catch up

August 12th, 2004

Life has a been a little crazy (diagnosis: monomaniacal) of late. If I haven’t gotten back to you since around June 25th it isn’t personal, if I have, you’ve been lucky.

Among the many items piling up in my inbox, have been RSS/Magpie/RDF links. Here is a dump.

rss2jabber is a wicked cool script for sending out RSS updates over Jabber. Haven’t played with it extensively, but the possibles uses boggle the mind.

RSS-WML is a RSS feed viewer (aggregator) for WAP devices. Requires PHP, and MagpieRSS.

Jo wins the “making RDF accessible” award of late with Class::RDF, a CDBI based triplestore, and RDF::Simple. I think there must be something about England that encourages Perl coding, be it climate, or culture.

The “much anticipated” XML::RSS 1.05 should hit CPAN in the next few hours. There is also a chance it will be going to better caretaker soon. I just don’t have what it takes to drag this beast into the modern era. (but I’ll happily chatter on about what is wrong with it, if anyone cares)

In the Magpie coming soon (I promise, really) department, Steve’s character encoding patches, a patch from Glen Davies adding support for fetching RSS via authenticated proxies , improved documentation courtesy of firetrap, and an update of the recycle code to work with the latest and greatest FoF from Ernie Oporto.

Tagged: Uncategorized , , , , , ,