WordPress Shortcodes in CFML

If you've used WordPress, you may have run across shortcodes.  They're little directives you type into the editor box which then evaluate dynamically when the content is rendered on the outside of you site.  Plugins can register new shortcode handlers, which are implemented as a simple function callback.  It's a really simple way to expose [...]

More About Me

If you've had any contact with me (meat- or net-space) for the past few months/years, you undoubtedly know that my life has been a bit rough. But it seems that the worst is behind, which is a relief such that I cannot express. I've been officially divorced for two months, living on my [...]

Moving Pic of the Day Foiled Again

A while back I made an attempt to move Pic of the Day (NSFW) off of ColdFusion 8 and onto Railo 3.  I can't afford a license of CF9, so my only upgrade path is through a free alternative.  Unless someone has an extra four grand they want to give me….
Last time I was foiled [...]

Fake Filenames for Far Future Expires Headers

Everyone knows that one of the best ways to increase page performance is to reduce the number of HTTP requests required for related assets.  There are a pile of ways to approach this (JS/CSS aggregation, image sprites, caching), but the best (and simplest) is client-side caching.  It doesn't help your first-time visitors at all (which [...]

REReplaceCallback UDF

If you've used pretty much any modern language, you know all about callback functions.  Unfortunately CFML is capable of doing it, but the language itself doesn't leverage the feature anywhere.  In particular, a callback for the replace operation is of great value.  Ben Nadel has blogged about such things a couple times, and now I'm [...]

Sudoku PointingPairStrategy

The next sudoku strategy is called a "pointing pair" which I'm going to start by generalizing into "pointing triple".  The strategy is pretty straightforward: if, for a given number in a given block, all the potential cells are in the same row or column, then that number cannot exist in any other block's cells of [...]

Scaling Averages By Count

One of the problems with statistics is that they work really well when you have perfect data (and therefore don't really need to do statistics), but start falling apart when the real world rears it's ugly head and gives you data that isn't all smooth.  Consider a very specific case: you have items that people [...]

A Drastic Change

So today I decided to upgrade to WordPress 2.9.2 (I'd been running 2.7 since forever), and unfortunately it broke K2, which is the theme I've been using since I switched to WordPress years ago.  K2 was a solid theme, but it started getting rather unstable I thought, so it was hard to get a good [...]

Wow Am I UGLY!!

Yeah, so apparently WordPress 2.9 totally broke K2.  My apologies for the horrific appearance of the site, though I'm delighted to say the admin area still looks awesome!  Or something.  I'll get it fixed here shortly, I promise….
UPDATE: apparently WordPress not only deprecated `attribute_escape`, they also changed it's functionality (despite it's widespread use in the [...]

Public URLs via Amazon S3 CFC

I made another minor update to my Amazon S3 CFC this evening, this time to support PUTting public objects.  To this point, the CFC left the default ACL on new objects PUT on S3, meaning that you needed an authorized URL (via a query string signature) to retrieve them.  That was the use case I [...]