Category Archives: Software

Mail Server Comparison

After my mail reader comparison, I’ve been fortunate enough to have a few mail server troubles. So here, to help you with your mail server decisions, is my mail server comparison.

  • Postfix: Your mail can now have the distinction of being deleted by 53 individual subservers
  • Sendmail: Priority treatment if you can write, while holding down your Shift key, an m4 macro to calculate the airspeed velicoty of an unladen swallow. All other messages will be summarily deleted in 6-8 weeks, or whenever the queue daemon catches up, whichever is later
  • Exim: Conveniently marks every message as “unrouteable” to reduce the hassle of making up reasons to bounce mail
  • Courier: Promptly delivers, but then quickly hides, all mail
  • Qmail: Might actually receive mail from DJB. The rest of the world will receive rude, copyrighted bounce messages.
  • Exchange: Storing mail is irrelevant since the server isn’t up often enough to actually receive any. This server is also perfectly secure unless it is running.

Switched to Serendipity!

Well, finally! I’ve switched to Serendipity!

The best part: comment spam blocking that works. So to those of you that had trouble commenting on this site… try again. It should just work! (And I’m sorry you had to put up with the hassle so long.)

Serendipity is a very nice system. I’m glad I chose it. And the support from Garvin and the others has been great too.

I’m running 1.0beta2 and have found a few bugs, but nothing serious.

As I mentioned before, I wrote a tool in Haskell to convert posts, comments, and categories from Drupal to Serendipity. If you use darcs, you can fetch it with:

darcs get --partial http://darcs.complete.org/unmaintained/blogcvt

The darcs-impaired may download a tarball.

I’ve chosen Serendipity

I wrote the other day that I was considering Serendipity, and had a few concerns about it.

Those concerns have now been pretty well resolved.

I also looked at WordPress. It looked like it had more features, but the whole lack of a central plugin store bothered me. I’d have to scour all over the net to find plugins, and half of them are just on a random person’s blog. Very few mentioned support for WordPress 2.0; most were for 1.5.

Then I looked at anti-spam options in both. The major anti-spam plugin for WordPress had two big strikes against it, in my mind: it’s not Free software, and it doesn’t work with PostgreSQL.

I am really ticked off by webapps that only support MySQL. There is no reason not to support PostgreSQL (especially when WordPress itself does).

So I am going with Serendipity.

Now, I have to write a Drupal to Serendipity conversion tool.

Initial thoughts about Serendipity

I downloaded Serendipity 1.0beta2 over the weekend and started trying it out.

My initial thought after setting it up was: *wow*. It really is incredibly easy to set up. No hand-editing of config files. No weird menus or scattering things all about. The whole system speaks of elegance and good coding practices. Except the fact that it ships some files world-writable in the tarball.

As I looked at it some more, I noticed a few problems, though. I submitted bugs or feature requests to the project as appropriate, and am including links to them here:

  • No option to display the number of reads for each story. SF 1459385
  • No tracking of HTTP referers (or, at least, no integrated interface for viewing them). SF 1459389
  • Spartacus, the tool to automatically download and install new plugins over the Web, was broken. The netmirror.org site was unresponsive and the s9y.org site gave a 404 to it. SF 1459370
  • It doesn’t seem to offer an RSS feed for the comments on individual posts. SF 1459391
  • There’s no RSS feed for individual categories. SF 1167982
  • Captcha support is built-in, but seems broken out of the box. (It rejected every attempt to post). SF 1459374

Despite these problems, this looks like a very strong contender. And I was using a beta.

Next up for testing: WordPress.

Tuttle, OK city manager offered choice about being an idiot

I just read a story on The Register entitled Oklahoma city threatens to call FBI over “renegade” Linux maker. Quite hilarious.

Apparently Jerry Taylor, city manager for Tuttle, Oklahoma, noticed that the city’s webpage wasn’t working right. He got the default “test page” for the Apache webserver on CentOS.

Instead of calling the hosting company, he sent a series of vicious emails to CentOS, even threatening to call the FBI. The CentOS folks really went out of their way to help this guy — he was not even their customer. And he repaid them by saying they should have helped him sooner.

Of course, there was the obligatory comment about being computer literate: “I am computer literate! I have 22 years in computer systems engineering and operation. Now, can you tell me how to remove ‘your software’ that you acknowledge you provided free of charge? I consider this ‘hacking.'”

The Register story is hilarious, and the original discussion even more so because it includes a full transcript of the event. Favorite quote (to the city manager):

If you will not let me help you, or at least talk to someone who knows what Linux is, then you will look like an idiot.

Your choice.

Should anyone wish to write to the city manager of Tuttle, OK, to complain about his outrageous behavior, his e-mail address is citymgr@cityoftuttle.org. Assuming they have figured out how to properly configure e-mail.

He’s probably not worth his $63k salary and with a personality like this almost certainly isn’t giving his employees the “feeling that we’re ‘working together'” (see that link).

Sigh. Why do people hire a guy like this in the first place?

Something other than Drupal

I’ve been using Drupal for this blog for most of its life. However, I’m starting to be quite annoyed by several things:

  • The Captcha module is seriously broken and opens up the door for various security problems
  • The Spam module is there, and works mostly, but is not effective enough to keep spam down
  • The badbehavior module is over-aggressive and doesn’t work well anyway
  • Spam becomes a serious drag on load of the server

So I’m planning to switch to something else. Something where blogging will be fun again, without all the hassle of tracking down spam. It looks like either WordPress or Serendipity, and I’m leaning towards Serendipity for now.

Backing up

Just about everybody hates backing up computers. But it’s important. With more of our information being stored digitally — even photos — it’s critical to back them up.

At home, I’ve been using rdiff-backup for years now. Very slick. It stores backups on the filesystem — they look as if you had used rsync. It also stores metadata (owner, mode, etc.) in separate files, so you don’t have to back up using root. But the neat thing is how it handles incrementals. Incremental backups will update the backup image files to the current state, and store binary diffs to the past state. So you can access the latest backup instantly, and re-generate the previous state if needed. Very nice.

I had just been backing up to a regular IDE drive. But this week, I ordered two Seagate ST3400601CB-RK external drives. The drives support both USB2 and FireWire. We will get a safe deposit box at a bank. At any given moment, one drive will be at home, and one will be safely at the bank. They’ll be rotated periodically.

At work, we’ve been using Amanda for years. It does its job well. (Except on AIX, where both dump and tar are broken in obscure, hideous ways, but that’s not Amanda’s fault.) Recently, I discovered Bacula. This looks very slick. It seems to be the direction Amanda would evolve, if it would ever evolve. We’re going to test it out soon.

And besides, who wouldn’t love a program whose slogan is “Bacula: It comes in the night and sucks the essence from your computers”?

Today’s Pet Peeve: Stupid GTK File-Open Dialogs

Have you noticed the incredibly annoying dialogs appearing in new Gnome/GTK apps in sid? They no longer allow you to use the keyboard to enter a filename. Not only that, but they are *incredibly* slow when working with large directories. You better go get some caffeine when if you need to open something under /usr/share/doc.

Here’s an example from Firefox:

Other apps, such as Gimp, also have this problem.

I have one thing to say to these people: WHAT WERE YOU THINKING?

The keyboard is still a useful part of a computer, and I have absolutely no inclination to wait 45 seconds for some annoyingly slow dialog to populate because you prefered to remove the ability for me to enter a filename in a dialog box myself.

Haskell #1 in the Shootout

Wow. Some Haskell hackers have started paying a small bit of attention to the Great Computer Language Shootout site, and the results are impressive.

Haskell now takes first place in the lines of code competition. In the CPU time competition, Haskell is also doing quite respectably: it beats out OCaml by a small margin, and defeats Java, C++, Python, Perl, Erlang, Ruby, Mono, Tcl, etc. by significant margins.

These links are all using the Shootout default weightings for individual tests.

The only downside to the Shootout is that the programs — for all languages — are not really idomatic and don’t show off a language’s natural beauty. Sounds like it’s time to gather up some Haskell hackers to rally around the PLEAC effort as well.