Data goes in, Data comes out.

Data Portability

When you’re building a web application (you know, like Twitter, or Flickr, or Facebook, or Last.FM, or Posterous) you obviously want people to put data into it, and you’re going to make it easy to do.

But are you making it easy for people to get their data out of it?

Here’s my simple rules for building a web application:

  1. Make it easy for users to get their data into your system.
  2. Make it easy for users to get their data out of your system.

That’s it. Do number 1, then do number 2, Do not stop in between number 1 and number 2.

If you’re convinced your application is amazing, you shouldn’t have to rely on lock-in to keep people using it. They’ll praise it openly, they’ll become your fans, they’ll shout it to their friends. Anything else is bullshit.


Scuttle rides again!

Because I always fear the CloudFail™, and because I like hacking on open source projects and interesting APIs, and because I like to store my own data… I’ve got Scuttle up and running again.

p2url: Bookmarks I started using in 2003 to store my bookmarks. I loved it. Over time had some issues with reliability and there were times when I could not access my bookmarks that were stored in This made me sad. Around 2005 an open source project named Scuttle appeared, which was basically a clone of you could run on your own server. I ran it on my own server, and put together some code to make it sync up with (At some point the name changed from “” to “Delicious” but I am calling it here for historical reasons.)

For years this ran on my own home server, and served as a great backup for my bookmarks in This was all very easy because Scuttle implemented (most of) the API, so syncing the data between the two was so trivial, even a hacker like me could cobble a bit of code together to make it work.

As an interesting sidenote, while ended up being pretty darn reliable (Yahoo! eventually acquired it) others were not so lucky. Ma.gnolia was another social bookmarking site. Ma.gnolia died a tragic death, and lost all data. See for details. This is why having an API is important. This is why having a backup is important. This is why you should trust yourself with your own data.

I’ve collected a few links for the blog posts I wrote about Scuttle,, and related sites.

(Most of the bits above can also be found on the page at:, and while you are welcome to browse through as it is a public site, I’m the only on who will be adding bookmarks to it, because it’s there for me. If you want your own, I encourage you to go make it happen. Let me know if you need help.


Steve Jobs Hates Freedom

Look, I know that Steve Jobs wants nothing but the very best for his customers, and he thinks the only way to provide the “very best” is to create unnecessary restrictions on what’s allowed to run on his platform (the iPhone and iPad.) Steve wants you to have a great user experience… but to me, the removal of freedom is a bug, not a feature, and less choices negatively affect my user experience.

Maybe Steve underestimates his customers… See, I’m fine with cross-platform development. Really, I don’t mind it. In fact, I think it’s a good idea and I’m very much in favor of it. Let the best application win… Not by being the only application, but by being the best among many.

I’m happy to hear that there will not be an app store for the Mac OS X platform, but really, I think the reason for that is that the genie has been out of the bottle for so long (30 years?) that it would be impossible to put back in.

And as for the iPad, I have this to say about that… if it helps bring the death of Flash, and the rise of HTML5, bring it on! Apple has been responsible for the death of technologies in the past that were meant to die, and this is one more. I mean, you all miss that built-in floppy drive on your MacBook, right?


Twitter-Free Friday Explained

Maybe I did a poor job of explaining Twitter-Free Friday. See, it all goes back to 2001 when Dave Winer suggested Microsoft-Free Fridays, and was followed up by my idea for Google-Free Friday (which was resurrected last year by Danny Sullivan of Search Engine Land.)

It’s not so much a boycott of Twitter, or a condemnation of Twitter. I like Twitter. I’ve been using it since late 2006 when there were less than 6200 users. I’ve convinced other people to use it, I’ve written code that uses it, and I was even interviewed about Twitter a few weeks ago.

Twitter is a monopoly. Just like Microsoft was and Google is. And any time you rely on one single entity for something, that’s bad news. Even worse news if it’s something you need or really want, because at some point, after you are hooked, they will screw it up, and you’ll have no alternative. As much as I am a fan of Apple, they got problems, and I’m glad Microsoft (and the Linux folks) are there to keep Apple on their toes, and keep them honest, and keep them innovating. Competition drives innovation, and we need innovation in this MicroBlogging world.

But… Twitter is this proprietary thing, owned by one company, and in the end, I am still a big fan of a decentralized system, and open source software, and standards… and that’s when (and Laconica, the software behind comes it.

It took Twitter 9 months to add the ability to search for people. got the feature in a week. And while still does not match all the features of Twitter, I believe it will, and it will surpass it. Things are moving fast, and not because of dollar signs, or the future hope of dollar signs, but because people are excited about the possibilities. With Twitter you see the fail whale and we all go “oh well, try later!” and that’s not good enough. Laconica, in a free and open environment offers the ability for us to do better, and to have some control over such things.

When I find blog posts from people about they are often from people I know and respect as visionaries of the web, people who have had good ideas in the past, and put those ideas into code… Those are the kind of people I trust to build an open system for the future.

So join us tomorrow for Twitter-Free Friday. Go a day without using Twitter and see how it goes. Maybe it will suck, and you’ll appreciate Twitter even more, or maybe you’ll find an alternative. I know, it’s all about the network right? If you’re friends stick with Twitter and you leave, you will be lonely, and sad, and cry… but the idea behind a federated system is that your friends could use a different system than you do, and that’s ok, cuz it all hooks together. Yeah, that’s the idea.

So while other came along (Jaiku, Plurk, etc.) none of them made me (and so many others) say “Damn! This could be it… what we are after! An open source, distributed system like Twitter” that, you know… isn’t Twitter.

I am raster on See ya there tomorrow!


Twitter-Free Friday

Remember Google-Free Friday, and The Return of Google-Free Friday? Well, I propose Twitter-Free Friday…

That’s right, on Friday, don’t use Twitter.

Does that sound difficult? Is it anymore difficult than a Google-Free Friday would have been in the past? In fact, Twitter might make it easier for you by failing anyway, in which case it’ll be Fail Whale-Free Friday.

On Friday, I will plan to not use Twitter. I will use though, so you can see what I’m up to over there.

It’s an experiment, and who knows where it will go. Join me if you dare.