delisync for Scuttle

So much for “release early” eh? I finally, after a few requests, got around to putting up the code I used to sync my bookmarks with Scuttle. (See: Why Scuttle is neat.)

Go ahead and grab delisync and please make it better, because while it sort-of works, it also sort-of sucks… And I’d like a better version.

This code assumes you have a local Scuttle install, if not, change the code. (You should be able to point it at or any Scuttle install where you have an account.) Also, you will have to hardcode your username/password’s for and Scuttle…

All of this magic is really possible because Scuttle supports (most of) the API, so in theory you could do things in reverse, or upside down, or 3 ways from Tuesday, whatever that means. If only all of the “social bookmark” sites had API’s… (At least one other has told me they are “working on it” or something like that…)

Let me know how it goes. I’m not completely against improving it, but I think others may be better suited than me to do so… It’s GPL‘d so have at it.

(See Also: Scuttle at Sourceforge.)


Why Scuttle is neat

Remember Of course you do! You probably use it daily… Don’t we all?

Heck, long ago I even proclaimed that is neat. gosh, I even wrote some nasty code named, and some people even used it. was a hack, and it’s got some problems, but with many things, it’s just a proof of concept to me. (Note: It’s a massive memory hog since it builds a lot of large hashes in memory while running.)

So what does this all have to do with Scuttle? See, Scuttle is neat. It’s bascially a GPL‘d clone written in PHP using MySQL. There is also, which uses Rubric, which is written in Perl. Now, I’m a perl guy and installing Rubric was a royal PITA for me, so I gave up on it quickly. Scuttle on the other hand, was dead simple. (Grab the 0.5.0 version from cvs though.)

You could use either the or Scuttle web sites, where you get to leverage the social aspect of these apps, but are at the mercy of things you don’t control, or you could install Scuttle on your own server and control it, but lose the social aspect… What do to? Behold! Scuttle supports the API! This opens up a world of possibilities…

  • Use as your primary source, and Scuttle (the site or your own install) as a backup.
  • Use Scuttle as your primary source, and write code to sync everything to (except the entries marked as ‘private’ which Scuttle supports but does not.
  • Install Scuttle inside the firewall for others in your workgroup to use.
  • Hack up Scuttle to do crazy things, slap it on a server and try to build a Web 2.0 business around it.

Ok, that last one is (sort of ) a joke, but the point is, for most of the complaints I’ve heard about, you can probably solve them with some combination of all of these things. servers down, or too slow, or doesn’t support private bookmarks? Scuttle not social enough, not enough users, lacking features? Fix, fix, fix…. (Need more ideas? See How to Make Delicious Not Suck.)

Code? Yes, I have some code… Right now my code pulls the entries from my account and syncs them to my Scuttle account, as well as a local install of Scuttle. I should get around to cleaning it up and releasing it, I just want to run it for a bit first to see if it behaves well…

Open-source, and just as important, open API‘s make it all possible. It’s exciting stuff!


So you’ve learned how to backup your data with something like this:

curl -o delicious.xml -u username:password ""

(Well, the 10000 most recent entries anyway!)

(Note: Since originally writing this, a new method was added: might be used instead. See the API docs for details.)

Now what?

Obviously you run some sick and twisted Perl code on it and you get an HTML page that lists all your posts, by tag, with posts displaying under each tag they belong to…

Anyway, that’s what does…

(It ignores the timestamp and extended field, but you could hack those in if so inclined…)


Why is neat

I’m here to tell you why I think is neat.

Perception, baby! I go to and it’s simple. really simple. Too simple. Can it be this simple?

The About page has some disclaimer text:

This system is pre-pre-alpha; many features have yet to be added. Additionally, many, many bugs remain. Please be careful.

I reserve the right to take appropriate measures if you misbehave.

Is that it? It’s run by “some guy” and it’s “pre-pre-alpha” and it might go away at any second. That’s all ok though, really it is.

When I go to Furl (and even though it’s at .net and not .com) I see that it’s Copyright 2003-2004 Furl, LLC. So I start to wonder about the business model, and how they plan to move forward in the future, and if it’ll be free, or subscription based, or whatever… (See: Say farewell to Blogs and Bookmarks and get your Furl on for background info.) I know, Furl is not exactly the same as, but they share similar traits.

Ok, forget about Furl for a minute and go to Spurl. Hmmm, similar name (and another .net and not .com) and it looks really nice, and they have a privacy policy and terms of use that look ok, but they have this page about partners that mentions:

Spurl is building a group of strong partners to help us reach our goals.

Though what those goals are, I’m not quite sure.

I’ll admit, I have not dug deep into Furl or Spurl (are there others in this space I don’t know about?) but the beauty of is in it’s simplicity and it’s elegance, as well as it’s depth. On the surface it’s really not that complex. From a front end view, a good programmer could write a clone of it for personal use in a few days time. (Of course part of the value of is in the “social” aspect of it all.) As for the API, that might take a bit more time, and if you wrote your own version, you might not even bother with it. But the API is where the action is, it’s what allows you to easily backup everything you’ve put into the system at any time, and you should do this regularly in case it does disappear one day. (There are many links to backing up your data, or pulling it into your own site, do some searching…) almost begs you to do cool things with the data, and people do… Ok, here’s a few random links: