October 11th, 2001

  • fg

getting great big lists of friends

i've been toying around with the idea of writing an lj app, not a client for posting and editing friends and all that, but something completely different. i've been fascinated by the interconnected aspect of LJ, and i think it would be great to have an app that mapped it out for you in a number of ways. such as:

1) showing the number of degrees of seperation between you and any other user, and what that path is
2) showing you statistical info such as the average number of hops it takes you to get to every other user, and showing the top ranked people - the "center" of the LJ universe
3) other silly things, like a graphical map of your friends and their locations... the ability to map your friends on it, your friends' friends... etc

the hardest part of writing this app would be getting an entire database of lj users and the stuff listed in their user profile. that could be kind of hairy. i can think of two ways of doing this:

1) asking the lj developers to provide an image of all the user profiles. but i don't think this would really be appropriate. after all, what i'd be writing would essentially be a toy.

this leaves me with:

2) write a mini app that slowly spiders across all the user info's it can find, using "friends" and "friends of" listings to make its own image. i see two problems with this.
- it would be an incomplete listing. it wouldn't find journals of people who aren't friends of anyone, because it would have no way of getting to them.
- in order to be polite, it would probably take a month or so for the spider to get user info on some 130,000 active users.

i think people would have a lot of fun playing around with something like this, and i know i'd have a lot of fun writing it. i'd appreciate any suggestions or comments as to how i might work through this hurdle.

Copyrights and stuff

I have played with Brad's Perl LJ client to the point where it is virtually unrecognizable (all his code it retains is the Web stuff, basically.) I really like it, and it's my primary client for posting from Linux, and I've been considering releasing it unto the world.

There is a problem. Brad's client has no copyright or licensing information on it whatsoever. The download page said "most" were licensed under the GPL, so I can't assume that it is. (Also note that no version of the GPL is specified.) So the question is, am I allowed to distribute this?

A related question is the version string. I just continued the numbering with "-SC" appended to the version string. But I noticed on test's journal that the Tk client lists itself as Tk-X.Y.Z, and others have forked the other side of the version string, e.g. "LJ::Client/X.Y.Z". So should I move the SC to somewhere else, or just leave it alone?