As both of my avid readers have likely noticed, this blog has not been particularly active of late. That is to say, today is the one year anniversary of the last time it was actually used. :-) So what do I do to celebrate? Rebuild the whole thing from scratch, of course!
In the past year, I've become more and more involved in the Drupal project. While certainly not a major contributor, I have been spending time when I can reviewing patches, writing patches, offering support via IRC, and all those other wonderful Open Source things; plus spending a great deal of time being verbose about opinions on the way things should be done, another standard Open Source thing. I also can now boast two contrib modules to my name (NodeReview and GoogleSearch), and one somewhat broken theme that I intend to fix up at some point in the future. I can confidently say that I am an Open Source Developer(tm), even though it's not my day job. Hooray!
Of course, for the past year and a half this blog has been powered by WordPress. Nothing against WordPress, mind you; it's quite a nice blogging application. But so is Drupal, and it's one with which I am far more intimately familiar and therefore far more able to customize.
So behold, the New And Improved(tm) GarfieldTech web site and blog, now Drupal Powered(tm). So far it's still fairly standard Drupal, but this time I actually plan to reskin it at some point. Now that my hands are dirtier on a regular basis with Drupal code, I should also be posting tech tips more often as well, in addition to non-blog content. Yes, you may believe it when you see it.
So what has gone into a Drupal Blog? Well, out of the box Drupal offers a fair to decent setup for blogging without any add-ons. Never one to leave well enough alone, however, I've spiced it up with some additional modules to make it more stable and powerful from the get-go. For those interested in the recipe, here it is in true Open Source fashion:
- This non-hosted spiffy module really needs to get moved to Drupal.org proper. As you might imagine from the name, it's a module that imports content from a WordPress site to Drupal. It almost works out of the box. Almost. The only caveat is that it refuses to run unless the blog module is enabled and PHP's iconv extension is available. Well I'm not using the blog module, but enabling it temporarily didn't hurt anything. However, my web host for whatever reason doesn't have iconv enabled. iconv is an extension for handling non-English characters cleanly in pre-6 versions of PHP. I didn't actually have any non-English characters in my site, but the module still demanded it. Fortunately simply commenting out the check for it did the trick and there were no further complaints from the module.
- Of course, silly me, I didn't clear out the last day's worth of comment spam from the old site before converting. By default, Drupal's comment module lets you preview pending comments and even has a mass-delete function, but amazingly lacks a "Check all" option to make said mass-delete process non-painful. Enter the Spam module, which provides algorithms and filters to protect against spam. Filters can be run on existing comments as well, so after a few well-chosen rules I was able to pair the spam down and flush it out. We'll see how long it takes the spambots to realize the site has changed applications.
- Which brings us to the next item of spam protection (never surf without protection, kids!), Captcha. CAPTCHAs are frequently annoying, but Drupal's offers a nice dual-feature. Rather than the usual obscure graphic that humans can't read any more than computers can, it asks the user to do simple arithmetic. You'll see it if you try to comment on a story. I hope you paid attention in first grade...
- Comment Info
- And for your anonymous cowards who don't want to sign up for a real account on the site (slackers!), you can at least save your information from one comment to the next.
- Of course, no blog is complete without trackbacks. No spammer is complete without a trackback attack-bot, either, so I also have those set up to require approval. We'll see how long it takes for that to drive me batty.
- These modules are rather standard Drupal modules, so I will leave them the Drupal site to explain in more detail. Although not blog-specific, they are helpful for blogging sites.
- This module isn't blog-specific either, really. I am just a fan of random and insightfully weird glib commentary. Expect a lot of it on this site, both in blog entries and side-blocks. ;-)
- Saving the best for last, the Views module is one of the coolest examples of flexible coding I've ever seen. If you don't think Views are awesome and the future of Drupal, then you haven't used Views yet. Try it. You'll like it.
A big round of thanks to the authors of the modules above, and of course the cast of thousands behind Drupal.
See you around the web.