March 19th, 2002

Live Journal Backup Utility

Hey guys, I've been a live journal user for a two whole years now, and even paid for 'em both! Wow!

Anyhow, I'm also a budding young programmer who is in the middle of developing a LJ Backup Utility called Roylee Backup... I'm not exactly sure who I'm supposed to clear this with, but I've been basing a lot of my code on what's been posted already in the various developer's journals.

I just thought I'd make my introductions, say hi and hello there, and see if anyone has any cute suggestions that they'd like to see... I've created a journal for the development at roylee_backup but I haven't posted anything there yet cause I'm not exactly sure WHAT I should...

but like I said, I've written lots of code, libraries and dialogs... just a matter of sitting down and getting my to-do list done (right Brad?)

Modification to intrerests.bml

I was wondering if it would be possible for someone to make a small modification to the file intrerests.bml file

the modification would be changing line 170 from:

$list .= "<li>(=LJCOMM $_ ->{'user'} LJCOMM=) - $name\n"; to
$list .= "<li>(=LJCOMM $_ ->{'user'} LJCOMM=) - $name<!-- end -->\n";

this will make it a lot easier to have sherlock parse the results and display the username in the status bar so I can hack up the Sherlock plugin to include a feature request I got for a user.

let me know


renaming users


In addition to everything we've discussed regarding username renames, consider also the following:

We don't want URLs to break, and since they now contain usernames, do this:

User "old (1)" wants to be become "new". User registers "new (2)", with same password and email address. User pays $10 change fee. Log to renames table (or whatever) the plan, and that its status is "pending". Nightly at 3am, do 'em all, then ljrpc sighup. Log to statushistory table for both users what happened.

New "old (1)" is "new (1)" and "new (2)" is "old (2)". But then we also want to set old's user.statusvis to be "R" (renamed) and set to be "new".

Now whenever we encounter $u->{'statusvis'} eq "R", we can just look at $u->{'name'} to see where we have to redirect to. Make userinfo/users/talkread all HTTP redirect.

Sound good?

NNTP Interface

Every few weeks somebody brings up the possibility of an NNTP interface to read LiveJournal. I've always been quasi-enthusiastic about it at best, but now I realize that news servers can require logins, and that means a shitload of things:

-- we can restrict NNTP access to paid users (important for load)
-- we can allow posting (both comments & in journals)
-- we can respect security of entries (though posting with security would be weird... perhaps by subject starting with [private] or [friends])

I started reading the NNTP protocol spec for fun but quickly got distracted because 1) I'm super tired today, and 2) there's a lot of shit in there about inter-server communication and news replication, which I couldn't give a half-damn about. (don't even bring up this issue... it's not going to happen. I've thought a lot about it.)

Does anybody have much NNTP experience and want to head this project, with as much help from me as reasonably necessary? I'd do all parts related to getting you the data needed quickly.

This project is somewhat interesting, albeit being Python:

A Perl rewrite wouldn't be too hard. (bring up language flamewars and die... we want to be able to use the existing LJ API)

I don't want to spend too much time with this, though, so I want somebody to pick this up.

My priorites are:

This week: UTF-8 live & directory
After: S2 finish


Why would requesting a copy of your journal online, if you were a paid user using the faster servers, require so much processing time? I can't imagine that an XML or even text file could be more than a few hundred KB if the journal had been in operation for over a year or more.

Grrr... maybe what I should do is find out HOW you guys store your records and retrieve them, before I complain...