Aggregating people

A number of different things have come together for me today, this post titled Is there a need for New Newsreader?, Zeldman’s post about distributed content and Kent brewster’s FOAFster which linked me off to all the things that MyBlogLog provides (a service I’ve never really looked at very closely).


These have tied together with thoughts I’ve been having about wxVenus, and more generally about social-network-on-the-desktop type software for the past few years. It makes me think again about how I browse feeds, how I access them and when.

Since people started outsourcing their content stores to and Flickr, and using blogging systems to produce their content, they’ve all suddenly got feeds for this content, so should the method of navigation actually be by person, rather than blog title? Obviously this is how systems like FriendFeed work, but it doesn’t yet seem clear to me how this relationship between a person and their data is best expressed and how to best obviate much of the need to either boil the ocean (get everyone to sign up to friendfeed) or to automatically assign feeds to a person (acronyms like “RDF” and “FOAF” spring to mind but don’t seem to actually be useful in this example).

For my use-case it’s rare that I subscribe to a lot of content from a lot of people, rather I subscribe to most of the content my friends are producing, and a single source of content from some stranger on the internet whether it be their blog or Flickr photos. From where I sit, these are two fundamentally different ways of viewing data: person-centric and data-centric and I’m less and less convinced that it’s possible to model these two views in the same application, or at least expose data sources from the two views at the same time.

There seems to be a fundamental mismatch between the way we use aggregators (whether they be river of news, multi-pane windows or whatever) and the way we consume information from people we know. I have no idea what the resolution of this impedance is, but I’d really like someone to come up with a good solution sometime soon.


bzr get

wxVenus is, at the moment, a desktop tool for browsing the cache that a local Venus installation creates when it runs. It is written in wxPython and is dependent on lxml.


It is also the first Python program of greater than ten lines that I’ve ever written, and given that we’ve already established I am very bad at it, the code quality is very low.

The long-term intention is to provide a cross-platform desktop tool which uses either a local or remote Venus installation as its aggregator and data source. At the moment I am using Lighthouse to track progress, but the free account doesn’t let me expose my tickets publically (although I will use the API to do this) I’ve moved to Google code because Lighthouse was closed and my local Trac install was slower than you could possibly imagine.

Really this is a lesson in Bazaar, Python, wxWidgets and XML parsing. Hopefully I will end up with a tool I can use. So far I’m learning a lot 🙂

Listening to podcasts

I do not listen to many podcasts. This is mainly because I used to have trouble syncing a subscription list across multiple PCs. Now I have a Nokia N95 I use that as my primary client. It works well and I have started adding some feeds.

I don’t listen to music podcasts though – I’ve tried and they are almost always too long and players don’t allow me to add a bookmark a place in the hour-long mp3 where I actually liked a song and want to look it up later, or mark a point where someone mentions a URL or whatever.

Also the default media player won’t store information for submission to I also use Symbian OggPlay, an open source C++ app which I’m tempted to see if I build a binary from and add played items storage (although it might just be easier to write from from scratch in Python if all my podcasts are mp3s).

This means the core of my subscriptions are these:

The BBC’s new musc podcasts are all under 15 minutes (AFAIK), which makes them easily searchable and I’ve subscribed to these:

I just about manage to listen to all of these in a week, but I do feel like I’m missing out on some “new music revelation” by not having an adequate player for long music podcasts like those that Alf recommends. Is there anything out there?

The dangers of relying on others

Since I am too lazy to manage my own subscriptions, I was subscribed to Planet Intertwingly. At 269 feeds though, the signal/noise ratio has taken a bad hit (what do you mean Sam doesn’t tailor his blogroll for me personally?) and I’m going to have to actually import the OPML and weed out stuff I’m not interested in. How annoying.

I strongly recommend any other subscribers tired of my witterings to do the same thing and remove me 😉

Digital Lifestyle Aggregation vs. Personal Aggregation

Following up on my Personal Aggregator (lifestream) dissing of the other day, here’s what I’d prefer to see (I should note that none of these ideas are original, and for most of my audience probably hark back to 2001):

Humans are interested in conversation. Conversation is what drives us. The things I want to see in a stream are places where I’ve previously entered into a conversation, either by starting a new conversation or by replying to someone else, and there have been responses which I’ve not yet read.

Some examples of this: comments on my blog posts, comments on blog posts which I’ve also commented on, comments on my Flickr photos, comments on Flickr photos which I’ve also commented on, emails, web pages marked as “for:pip” in, personal twitter messages (both direct messages and @pip), and so on.

After those items, I’m next interested in the conversations going on around me. That is to say, things that people I know are doing . This is where personal lifestreams can play a part – I’d want a feed from each person’s stream which I can then merge and create an contacts’ lifestream from. These activities also contain an inherent interest value. For example, blog posts and Flickr photos are almost always more interesting than twitter udpates which don’t really contain much value for me.

So let’s just review some of this, and see what we can do:

My Immediate Planet:

  • comments on my blog posts: gmail-created feed available
  • other blog comment replies: cocomment feed available
  • twitter @pip: no direct feed, can filter normal twitter feed
  • twitter inbox: no feed
  • flickr comments: feed available
  • flickr comment replies: feed available
  • for:pip in feed available

Friends’ Planet:

  • blogs: feed available
  • flickr contacts’ photos: feed available
  • network: feed available
  • twitter: feed available
  • tumblr: feed available
  • feed available
  • etc.

All of this is, of course, separate and additional to attention-data maintained resources.

A stream of rubbish

Unlike Jeremy Keith, I couldn’t care less about giving people a nice web interface onto what I’ve been doing. I’d much rather have a view onto what people I know have been doing instead.

A web view of what I’ve been doing is in fact probably the least interesting thing you could possibly do.

He briefly mentioned portable social networks. Well, those aren’t going to work until the services we use start actually providing full import and export. Maybe with the advent of services becoming OpenID providers (even if it is via a proxy) we’ll see a way to create accounts for your contacts without them having to actually do anything and thereby a way to move transparently between services. As if.

I’ve just remembered that the first thing I did with Jeremy’s original lifestream code was add OPML support and then use Leigh Dodds’ “Subscribe to my brain” service to create an OPML file listing my account subscriptions. No work from me and a full lifestream, that’s great, notably because it gives me a quick ‘in’ to the contact lists of those services. I’ll dig out my code tomorrow, but anyone could write it in a couple of minutes.