Osmotic communication – keeping the whole company in touch

At the FOWA conference Matt and Anil, from Last.FM spoke about their use of IRC as an internal communication channel to improve their comms across the whole company.


For those that aren’t familiar with IRC its short for Internet Relay Chat and is a real-time Internet chat protocol designed for group (many-to-many) communication.

One of the things that is interesting about IRC is that it supports automated clients or bots that can be used (queried) to provide specific information via the chat window. So for example, at Last.FM they have a bot called IRCcat (now released under an open source license) that posts to the IRC channel when stuff happens within the development environment – so for example when code is committed to Subversion or a bug closed in Trac these events becomes part of the chat conversation; or it can be used to hand off commands from IRC to another program such as a shell script.

Because everyone at Last.FM has IRC running everyone is aware of what is happening across the company. For example, everyone knows when a bug is fixed, when a new one is entered, when the application throws an exception, or when new code is committed; it also means you can ask the whole company a question, their opinion, let them know the latest news.

This doesn’t (or shouldn’t) mean that all communication is carried out online but it does mean that everyone can keep up-to-date with very little overhead and that this happens passively, by osmosis, rather than relying on a separate (active) reporting process. This is of course good because it means people can focus on their job and data flows out as a by-product; it also means that there’s less (possibly no) opportunity for someone to fudge the data – to hide what is really happening, it’s all out there and transparent.

Now my understanding is that the Last.FM folk’s IRCcat use is restricted to reporting on code and tickets via Subversion and Trac (apologies if I’m wrong).

At SPA Dave Thomas outlined an interesting idea – version everything. Put backlogs, risk and issue logs, time estimates, burn-down charts all into your configuration management tools. Use a wiki or IDE to enter data (tied into your configuration management tools) and tie this into the code (ref); and use the data to automatically generate project reports. The benefits are again obvious: transparency and automation of project reporting. If someone decided to reprioritise the product backlog or reassign work everyone knows when it happened and who did it, and everyone has access to the burn-down charts so everyone knows if the project is on target or not.

I think it would be really interesting to tie these two ideas together: store all your project artefacts in your configuration management tools (entered via a wiki and/or IDE) and automatically generate reports from it; but also provide a live, real-time commentary on the project by hooking in IRC.

Photo: Communications, by assbach. Used under licence.

Future Of Web Apps, London – review

Future of Web Apps logoAs I mentioned previously I went to the Future of Web Apps conference this week. The conference had the usual mix of interesting, not so interesting and sales pitches – here then is my take on the interesting.

Simon Willison gave a great, very entertaining, presentation on OpenID – which for those that don’t know, is a framework for creating a decentralised service to manage your online identity. OpenID uses a single website URL, instead of a username and password, to identify yourself with a site. There are a number of OpenID providers or you can setup your own, if you’re that way inclined.

Over the last few weeks both AOL and Microsoft have come out in support of OpenID – and I would love the BBC to replace their Single Sign On service with OpenID. Anyway, at FOWA both Digg and Netvibes announced that they too will support OpenID, this is great news; I suggest you should take this as a sign to find out more – 2007 will surely see an increasing number of services adopting OpenID and new business models enabled by it.

Netvibes also announced that they will launch a Universal Widget API (UWA) with the objective of “build your module once, deploy everywhere [Vista, Mac, Google, Yahoo!]”. As part of the UWA Netvibes are releasing:

  • An open source Javascript runtime environment
  • A UI library for widgets
  • Netvibes also want to build a community of APIs

All interesting stuff but I fear that the UWA won’t be compatible with the proposed W3C widget standard which would be a real shame, anyway more information over at Techcrunch.

Other consistent themes included the importance of building an API into your web app from the outset, the use of attention data and being open and honest with your users; of these attention data is, to me, the most interesting.

When you pay attention to something, or when you skip it, data is created
(Matthew Ogle, Last.fm).

I suspect that we will start to hear a lot more about attention data in the coming year both in terms of functionality and generating revenue. For example, Flickr uses attention data to calculate which photos are ‘interesting‘: “We looked at how many times was a photo commented on, viewed, blogged about, and saved as a favourite” (Bradley Horowitz); or how Last.fm uses attention data to moderate the importance of user tags (if you listen to a piece of music your tags count more than if you don’t). And of course if someone knows what you pay attention to, and what you don’t, that data is incredibly valuable to advertisers.