Tuesday, 30 December 2008

Distributed blogging

Something that I've always wanted to be able to do when traveling is to blog as you go. However, that usually means you're connected to the internet for the whole time you want to read / write. I wanted an "offline" blog that I could sync a handheld computer at a coffee shop (in the amount of time it took to buy a coffee) and then continue on my way. Perhaps to read any comments at the hotel that night. Perhaps compose a post while waiting for a leg of a flight. It's just inconvenient and expensive to have to pay by the minute to be able to write blog posts and read comments.

Ryan pointed out jekyll as a way using git to generate a static blog. That way you could write posts locally, and sync them to a service / web server that would publish them. Now that's a cool idea.

The place where it breaks down in my head is when you want some give and take on a blog - comments. For anyone leaving comments they are not going to have an account with my source control server. People are going to want to post a comment and see instant feedback. That can be done with software fine - that's how this blog works. To try and keep the garbage out (comment spam), you'll have to require some form of logic on the server to stop that.

Comments are one of my favourite things about blogging, so I wouldn't want to move to software that doesn't support that most basic of needs. I don't really want to totally re-invent the wheel and re-implement all blog software because, frankly, I'm much too lazy for that. So I see the issue not as "how do I write better blog software" but as "how do I swap out the backend of existing blog software to meet my needs". Now, swapping out a backend that was designed for db and changing it to a flat file is probably way harder that it would be in theory.

Changing a backend for existing cots products doesn't fit the do the simplest thing that could possibly work, but redoing all the front end work and anti spam measures doesn't either. I'll have to think about this one some more.

1 comment:

  1. I would do the git bit and write a script to poll a directory occasionally and write the post to the backend when a new one showed up. Or update an existing, as the case may be. OOB forever! ;-)

    ReplyDelete