E-Scribe : a programmer’s blog

About Me

PBX I'm Paul Bissex. I build web applications using open source software, especially Django. Started my career doing graphic design for newspapers and magazines in the '90s. Then wrote tech commentary and reviews for Wired, Salon, Chicago Tribune, and others you never heard of. Then I built operations software at a photography school. Then I helped big media serve 40 million pages a day. Then I worked on a translation services API doing millions of dollars of business. Now I'm building the core platform of a global startup accelerator. Feel free to email me.


I co-wrote "Python Web Development with Django". It was the first book to cover the long-awaited Django 1.0. Published by Addison-Wesley and still in print!


Built using Django, served with gunicorn and nginx. The database is SQLite. Hosted on a FreeBSD VPS at Johncompanies.com. Comment-spam protection by Akismet.


Pile o'Tags

Stuff I Use

Bitbucket, Debian Linux, Django, Emacs, FreeBSD, Git, jQuery, LaunchBar, macOS, Markdown, Mercurial, Python, S3, SQLite, Sublime Text, xmonad

Spam Report

At least 237138 pieces of comment spam killed since 2008, mostly via Akismet.

Comment Spam Stats

Since January 12th:

I don't have a number for false positives, but given that I've received zero email complaints I'll assume the number is low if not zero. This gives Akismet about a 98% success rate on catching spam, which is pretty good. It makes my life better. Having more spam comments than real comments get through the gates can be really depressing for a blog owner.

At some point I'll post my Django newforms/Akismet integration code. It's very simple, and clearly worth the effort.

Update: James Bennett reminds me that his comment_utils wrap up anti-spam and comment moderation measures in one tidy package.

Tuesday, January 29th, 2008
+ + +

0 comments pending approval
Comment from Alex Ezell , later that day

I like to say that comment spam is the reason I always quit blogging, but I suspect it's because no one wants to read what I write about :)

I guess one of these days, I'll get around to redoing my blog with Django.

Does anyone else think that Akismet should be doing better? For a distributed spam system, I would expect 99% or better catching spam. I say that based on my, perhaps incorrect, belief that comment spammers usually post the same junk on tons of sites all in a short period of time.

After the first 2 or 3 bloggers mark this stuff, shouldn't Akismet catch the rest? I probably just don't know enough about how it happens.

Comment from Paul , later that day

I suspect that there's a significant random component to the spam, so that it's not exactly the same junk everywhere. But given that good Bayesian email filters seem to be able to do better, I do agree that there seems to be room for improvement.

Nonetheless, I can't begrudge the free service that Akismet is giving me. As we've both experienced, comment spam is demoralizing, and it's nice to be (mostly) free of it.

Comments are closed for this post. But I welcome questions/comments via email or Twitter.