See the Apache docs on RewriteRule.

Your rule

RewriteRule ^(.+)\\.html$1.htm [r=301,nc]

says to match using ^(.+)\\.html (Beginning of URI, one or more characters until we hit a \ (presumably counts as backslash or slash here?) ending in .html, and store the “one or more characters” part for later use in a backreference.

Having captured the original URI minus the .html in $1 for later use, we redirect to the .htm URI with an HTTP response code of 301 (resource moved permanently.) The nc makes the operation case-insensitive.

Please note, I’m not doing this from memory, I just looked at the doc, so I could be wrong on some points. :)

spam as poetry

It’s an actual spam. Enjoy, or pretend you just hit Delete.

Subject: coffee transmitted

recipe injudicious btl ulysses theism bragging inexpert situs
beside pinscher colosseum pinscher pollen troika selena
pinscher conjectural novosibirsk strafe transmitted
theism amort coffee beside strafe bouquet
transmitted cuddly aphid wold disrupt
nitty nitty btl
beside aphid nitty kittle aphid haney pinscher
checkerboard loaves moot type purcell
euphemist euphemist forborne coalescent deforestation kittle bouquet

Euphemist euphemist, indeed. You had me at “nitty nitty.”

mypod 2nd gen

The mypod has been replaced by the new generation! I got a great deal on a used Creative Zen Vision M 30G player, and so far it’s been very nice to use. I like that it’s software-agnostic, not requiring installation of Creative’s software bundle or even Windows. This is Creative’s answer to the iPod Video, and I really think they’ve one-upped Apple in terms of functionality and flexibility.

Under debian I can use gnomad2 or the libmtp command line utilities to manage music, videos and pictures. Under Windows XP (SP2 or better) the mtp support allows easy integration with explorer.

Now to get the storage part of the player partitioned so I can have both a vfat partition for portable win32 utilities and a bootable linux distro.

Now playing: Air – Playground Love

start on time, adjourn early

Just like classes, meetings need to start on time and adjourn early.

Expecting others to wait because you have loose ends to tie up causes entire schedules to slip. Early adjournment solves this by preallocating slack time for people to mentally shift gears, prepare notes, or travel between locations. Adopting a 50-minute hour for your meetings could save a great deal of time that’s wasted idling waiting for stragglers.