tools

CFGroovy 2 Has Moved

Until this evening, CFGroovy 2 has lived as a branch in the original CFGroovy project.  Now it has it's very own top-level directory.  So if you've any working copies and/or unpinned svn:externals pointed at
https://ssl.barneyb.com/svn/barneyb/cfgroovy/branches/cfgroovy2
you'll need to switch them to point at
https://ssl.barneyb.com/svn/barneyb/cfgroovy2/trunk
instead.
Apologies for any inconvenience this causes, but CFGroovy 2 really isn't a new version of [...]

FB3lite as a Custom Tag

Last night at work Koen uncovered an issue with using FB3lite as a custom tag.  Inside the tag it does "formUrl2Attributes" to merge the two scopes into the attributes scope.  What I'd done incorrectly was omit the "don't override" parameter to the structAppend calls, so the URL and FORM scopes would supercede any existing attributes [...]

Efficient Caching With mod_rewrite

Caching with mod_rewrite?  What?  I'll admit it's a slightly misleading title; the cache is actually a disk cache, but mod_rewrite is where the magic happens.  Bear with me for a moment…
Most content on the web is fairly static.  Some of it changes every few minutes, some changes every few hours, some changes a few times [...]

Minor FB3lite Update (and a Weird CF Bug)

This evening while adding some reporting to PotD (NSFW, OMM) to help nail down some performance issues that I think are Apache's fault, I noticed a strange issue with FB3lite.  If you've used it, you know the core of the "framework" are the do() and include() UDFs.  Both contain a CFINCLUDE tag, and a weird [...]

CFYourFavoriteLanguage (Formerly CFGroovy)

CFGroovy grew some wings this afternoon.  It retains it's core functionality of running Groovy code in a CFML environment, whether you have it installed on your classpath or if it's transparently loaded from the local copy of the JAR.  However, it now supports any JSR 223 scripting language as well (assuming you're on a 1.6 [...]

More CFGroovy2 Goodness

Last night at dinner I was talking with Mark Mandel and Luis Majano and realized I'd completely misunderstood the way JavaLoader worked based on my initial look see.  So for the price of 21 additional lines (nine of which are purely for misbehaving CFML runtimes), CFGroovy will transparently load an internal copy of Groovy if [...]

CFGroovy in Forty Lines

It's been a couple months since I've done anything with CFGroovy.  I've been mulling how to get back to the essence, which is Groovy scriptlets in CFML.  Today at cf.objective() I put my fingers back on the keyboard for the first time.  Here's a full implementation of the <g:script> tag in 40 lines.  There are [...]

I Love Apache

So after I got my new server online, I wanted to deal with my oversight on DSN TTLs.  Not surprisingly, mod_rewrite saved the day again.  First, since my old server is subject to the same TTLs, I added a record in my /etc/hosts file to point all of them at the new IP.  Then I [...]

Show Me Your Tool

If you read my blog regularly, chances are you write software and therefore can't, because your tools don't exist in the visual world.  They're just magic strings of minuscule magnets on a rapidly spinning chunk of plastic…
I took my chef's knife to the sharpener a few days ago.  Cost a whopping $4 to have him [...]

Firefox Spellcheck for Programmers

No, it doesn't exist, but shouldn't it?  I've found that when I write prose in Firefox, I almost invariably ignore the redlines.  Why?  Too many false positives.  Technical prose, which is usually what I'm writing,  is littered with domain-specific terms that no spellchecker will ever consider valid.  Obviously you can help your specific spellchecker by [...]