Projects

HTML forms suck


It didn’t shock me to discover this, but it was one of those things about the web that I hadn’t really played with seriously. Then I started trying to expose all of the parameters for my random web colors page, so people could tinker with the color-generation rules.

Not only did the form add 24K to the page size, it increased the rendering time by about an order of magnitude.

more...

Color combinations for web sites


I’ve stumbled across two interesting tools recently. The first is the Mac application ColorDesigner, which generates random color combinations with lots of tweakable knobs. The second is Cal Henderson’s online color-blindness simulator, designed to show you how your choice of text and background colors will appear to someone with color-deficient vision.

I decided to try to merge the two together into a single web page, using Mason and Cal’s Graphics::ColorDeficiency Perl module. It’s not done yet, but it’s already fun to play with: random web colors.

Right now, the randomizer is hardcoded, but as soon as I get a chance, I’ll be adding a form to expose all of the parameters.

Live Munitions!


The most popular content from munitions.com is now back online: my large photo archive, consisting mostly of fully-clothed Playboy models. It’s in serious need of a complete overhaul, including rescanning every image to get rid of the worst mistakes that my flaky LS-2000 inflicted, but it’s back.

Of course, the whole collection was apparently posted to Usenet again last week, and I’m sure that a bunch of the pictures are being fraudulently sold on eBay this week, either as “real prints from the negative” or “copyright-free image CDs.” This, however, is their home, and having it back online makes it easier for me to file copyright infringement claims with ISPs.

Custom RoboRally boards


I think everyone who ever played RoboRally has toyed with the idea of making their own boards. Indeed, a quick Google will turn up dozens of sites devoted to fan-made boards and editing tools. I tried using a few of them, but the tools were clumsy and the results uninspiring.

So I did it in Adobe Illustrator, and my first original board looks like this.

more...

D20 initiative cards


A lot of folks track combat order in D&D with index cards. I don’t know who the first person was to think of making custom index cards with a pre-printed form on them, but I first saw it at The Game Mechanics web site (great people, unfortunate choice of names).

I had just gotten back from a con where we’d run a four-party adventure with a total of five DMs, 24 players, and umpteen monsters, and the freeform index cards we used just weren’t good enough. I didn’t like the actual layout of the TGM cards, but the concept is great, and the rotate-for-character-status mechanic really improves the flow of a large combat.

My response was, of course, to come up with my own layout, adding fields and spot color to make them more useful. Along the way, I decided to increase the size from 3×5 to 4×6, greatly increasing the available space. TGM’s original cards, along with instructions on how to use them, can be found here; their forums also have several lengthy discussions on the subject.

My latest version is here. Several people have argued for a double-sided 3×5 version, and I’ve prototyped one here.

Printing Note: Acrobat has two settings that can make it annoying to print odd-sized documents: “shrink oversized pages” and “enlarge small pages.” Turn them both off if you want the cards to come out the right size.

trollbridge


Teresa Nielsen Hayden of Making Light has a charming way of dealing with obnoxious commenters: she disemvowels them. This seems to be far more effective than simply trying to delete their comments or ban their IP addresses. She apparently does it by hand, in BBEdit. Bryant liked the idea enough to make a plugin that automatically strips the vowels out of comments coming from a specific set of IP addresses.

I don’t have any comments to deal with at the moment, but the concept amused me, and I wanted to start tinkering with the guts of MT, so I quickly knocked together a plugin that allows you to mark individual entries for disemvoweling. While I was at it, I included another way to molest obnoxious comments.

more...

MTRoundRobin


Simple little MT plugin, created as a generalized alternative to FlipFlop.

Given a list of keywords to be substituted into the template, each call to returns a different item from the list, in order, wrapping back around to the beginning when it hits the end. Examples follow.

more...

Baby's First Perl Module


My blushes. I’ve been hacking in Perl since version 2.0 was released. In some ways, it’s my native programming language. It’s certainly the one I use the most, and the tool I reach for first when I need to solve a problem.

But I haven’t kept up. Until quite recently, I was really still writing Perl3 with some Perl4 features, and regarded many of the Perl5-isms with horror. It felt like the Uh-Oh programmers had crufted up my favorite toy, and it didn’t help that the largest example of the “New Perl” that I had to deal with was massive, sluggish, and an unbelievable memory hog (over 9,000 lines of Perl plus an 8,000 line C++ library, and it uses up 3 Gigabytes of physical memory and 3 dedicated CPUs for its 25-hour runtime (“Hi, Andrew!”)).

more...

“Need a clue, take a clue,
 got a clue, leave a clue”