So a while back the comment engine here died. It was a bespoke thing called Commentator, and it was implemented as a Java servlet.

It worked really well up until the pile of software flying in close formation stopped working, and then so did it. This was a bit of a problem when something I posted a week or so ago turned out to be, briefly, insanely popular and having a working comment engine would have been useful.

Rather than rewrite it using more sensible technology (a CGI script talking to an SQLite database would be more sensible), I'm trying a cloud hosted comment engine. Current one up on the block is Disqus, which is enabled below. It's a bit... questionable... but I think I may have beaten it into submission. Best of all it supports importing and exporting comments so not only should I be able to get the old comments imported, but I can change later and export them all out of Disqus if I decide it's too evil.

Update!

So Disqus is a dead loss. The overhead for a new user trying to post a comment is prohibitive --- they have to sign up with Disqus and create an account there; even if they're using social login. After authenticating themselves via Twitter or Google Plus or whatever and then being presented with a Disqus signup form, where they have to come up with and remember a new password, is simply prohibitive. People will just give up and go away. After trying to ask them about it on Twitter it would appear that Disqus have no idea this is a problem either. Sigh.

So I wrote my own. Commentator 2 --- it's a very small Lua script hooked up to a SQLite database for the backend, and the frontend is JQuery with TinyMCE as the rich text editor. It's loads faster than the original Commentator and has a bunch of nice features. Right now it just supports logging in via Google Plus, but I want to add Facebook and Twitter to it as well.

I'll probably release the source at some point, once it's cleaned up a bit. Configuration is a bit of a pig, alas, as it involves setting lots of variables at the top of the script, but there you go.

To see it in action, scroll down a bit!