Since I'm a programmer who writes and edits information for programmers (or, alternately, a writer who programs), I have a lot of little problems that a little bit of programming can fix. This includes several small CLI utilities and vim macros to generate common files and reformat books and articles appropriately.
It takes a bit more time to solve larger problems, though. That's a pity; I'd have the most benefit from solving them. I rarely can justify spending a couple of days automating things, though.
Fortunately, this week I'm on vacation and have planned few other productive things. So far, I've ported Everything to PostgreSQL, checked Parrot SDL into Parrot CVS, met with a potential client for a side consulting gig, and created my article manager. I'd still like to fix the SDL Perl Win32 build and port Mail::Action to Email::MIME, but that may not happen.
What's the article manager? I've needed a better way than a plain text file, saved e-mail, and my increasingly crowded memory to keep track of the status of various dozens of articles in the planning, acquiring, editing, scheduling, publishing, and paying stages. That's an ideal use of a small database.
Originally I planned to write a small CamelBones application, but then I discovered that Mac OS X isn't for me and switched back to Linux. Then I started a Jellybean version (and figured out a nifty approach to launch a new Mozilla tab from the command line) but distracted myself with something else there.
Yesterday, I dug through all of the installation requirements for Maypole, downgraded mod_perl on my laptop (not a big deal; Everything runs fine in either MP or MP2), futzed with several bugs and minor issues, and finally wrote a small Maypole application that manages articles for me.
Of course, being altogether inexperienced with Class::DBI (another learning experience goal), it took a couple of hours to figure out the right way to specify relationships. (If I'd read Simon's message on the mailing list about not using Class::DBI::Loader::Relationship unless you really need it, I'd have saved some time.) When I stopped for the night, I had boolean values showing up as textboxes and articles displaying on the author view page with their primary key as the link titles.
Today, after digging around in several modules (simplicity of use comes at a high price for implementors), I added boolean support, so the various article statuses show up as checkboxes on the edit page and checks on the view page. I also fixed the related article view to show the article description, not its primary key. In short, at the expense of possibly doing things the hard way, it does everything I want.
It could be disingenuous to say that the manual wasn't especially helpful since it's not finished yet. On the positive side, it does exist and it did point me in the right places to find some help. All in all, it was much easier than trying to figure out why my mother's computer won't detect a USB printer.