An Illusory Intertwingling of Reason and Response

Tafelmusik is a look askance at life. It is a chronicle of the Dance of the Good Thing, a part in which I strive always to take. Here lie my musings, my thoughts, my beliefs, and my desires. Join me. Dance.

Tafel :: meta

Tuesday, February 20, 2007

Comments at Long Last: ScaloHan!

The most perfect comment system is HaloScan. It's versatile, allowing you to place comments on any web page whatsoever. It's spiffy. There's only one thing wrong with it: it's not a product, it's a service. That's right. If you use HaloScan for commenting on your weblog or other website, you're tied to a service which, while free, is by the very nature of free web-based services, ephemeral.

Presenting ScaloHan. ScaloHan is an implementation of a HaloScan-like commenting system which can be hosted on any server where you are permitted to run PHP. It's JavaScript-based on the client side, but is very efficient: even rather large pages shouldn't see a significant loadtime increase.

Kinda funny, though . . . I've been looking at several comment implementations for Blosxom, and any one of them would have taken the four hours I spent implementing ScaloHan simply to set up and integrate into my weblog. Having taken the effort to "roll my own", I not only didn't lose time, I gained in having it "tailor-made": it's the only comment system that does everything I want it to do, and nothing I don't want it to do. (Yes, it's all about me. *grin*)

The ScaloHan code will be available for download as soon as I've audited it for security. While it doesn't use a DBMS backend (it's flatfile, like Blosxom itself), there still may be lingering security issues.

So, what are you waiting for? Comment away!

Oh, I forgot to warn you. I've implemented a captcha system I've dubbed "Meanie", since it's similar to the MonkeyMath I use on one of my contact forms, of which one of my friends is always complaining. Meanie currently has two plugins: "Linear Equation" and "Stupid Question". It randomly selects a plugin, and spits out a challenge, which must be answered correctly in order for the comment to go through. (Don't worry. Form fields are persistent, so if you solve the linear equation incorrectly, you won't have to retype your comment.)