Category Archives: social networks

Shipping software

Custom vertical social network, with feed integration (kind of like the Facebook activity stream, but driven by RSS), communities and single-sign on across a number of other applications.

Open Social support coming soon. I should do a post on how the open source implementation of that works. For the time being, though, this is all the code you need to show a Google Gadget into your app:

<c:import url=”/ifr”>
<c:param name=”url”></c:param>

The Napster (Grockster?) of Facebook

IANAL, but how can Audibie possibly be legal? Since the doctrine of inducement appeared (ref Grockster) I can’t see how the DCMA safe-harbor provisions would save them. Perhaps they are relying on the fact that they don’t host the files themselves – although that didn’t save Grockster or Napster.

It’s interesting to think what Facebook’s liability would be over an application like this. Facebook have a currently have a copyright policy which passes responsibility for DMCA takedown requests onto the application author. Audibie have posted their takedown procedures, in accordance with the DCMA.

If I was Facebook I’d be pretty worried that might not be enough.

Preserving privacy while promoting social network portability

Brad Fitzpatrick and David Recordon recently wrote an interesting paper Thoughts on the Social Graph which gathered quite a lot of attention. They addressed some themes which I’ve been thinking about for quite a while now, and certainly moved the issue on a lot more than the recent Wired article did.

There’s no doubt that Brad & David know what they are talking about, either. Indeed, if Tim O’Reilly invented Web 2.0, then I think it’s not much of an exaggeration to say that Brad wrote the software which powers it.

However, I think their approach to the social network problem is surprising. In particular, I think it’s odd that the people who invented OpenID are proposing a centralized repository for all social networking data.

I believe there are better approaches. I’ve proposed and built a demonstrator for a system using what must be one of the most under appreciated data structures of all time: the Bloom filter. In short, a Bloom filter is a compact data structure which will remember if it has seen a piece of data previously, without remember the data itself. Obviously, this is useful in the social networking context because you can do things like load up all a users contact and then make the Bloom filter public. That allows system to query the filter to see if they know another user, without exposing their contact list to privacy leaks.

Incidentally, that demonstrator is my first Facebook app. Writing Facebook apps turns out to be pretty nice, although in this case I wrote it in PHP -which is less enjoyable. Have I ever mentioned that I’m not a huge PHP fan? Perhaps that’s partially because I don’t know PHP at all, but it’s just such a goopy language. Mucking around with Ruby (which I don’t know either) makes you go hmmm.. that’s nice. Even in Javascript I find myself going hmm… okay.. not quite what I expected, but it kind of makes sense. Doing the same in PHP just makes you go hmmm… – not in a good way, either.

Open social networks?

At work I’m building a custom vertical social network. It’s interesting work, and so I’ve been following some of the stuff about how social networks need to become “open”

I had a half-written post about how an “open” social network means such different things to different people that it is pretty much meaningless. Dare says it much better, than I could.

I still think someone needs to point out what a crap article the Wired piece “Slap in the Facebook: It’s Time for Social Networks to Open Up” is.

They spend a long time listing different web tools you can use to build some kind of nice looking website, and then miss the “social network” bit of building a social network.

A social network isn’t about a stupid frigging BLOG (yes, I’m quite aware of the irony of saying that on a blog). It’s about the personal interactions and relationships the software enables. Go and listen to some of the Danah Boyd podcasts recorded at the seminars – you’ll note she talks about the social pressures of how to order your friends lists, how bands on MySpace are identity markers and how the “wall” is useful as a publicly witnessed space. There’s nothing in about blogging or social bookmarking or group calendaring – as useful as those things may be.

So anyway – the social network I’m building is going to be as open as I can make it – but it’s MY definition of open. Specifically, it’s going to make it as easy as possible to use external applications like blogs, and yet still tie them into your identity on the system. That sounds pretty obvious of course, but that doesn’t mean it is wrong.

Hmm.. I seem to be discussing work projects on here a lot more than I used to.. not sure what that means.