top 500

Friday; the week's sunset.
As the sun slips out of sight on my Thursday night, I’m sitting at the computer listening to tunes with a full belly. When I got home, the fridge beckoned – Sharaun’s famous cornbread – leftover from the days of cornbread past. And even though I’m supposed to be at Pat’s in less than an hour for a BBQ – I’m full-up. Owell, such is the life of a shameless glutton. Today went fine, once again not terribly taxing – which I rather like. It was another mild sunny day in Northern CA, and my drive home was particularly liberating to my work-shackled mind. I put on the Black Keys’ “When the Lights Go Out,” which is about as good a driving song as there ever was, cracked the window and slipped on my shades – y’know, start the end of my day in style.

Remember my paragraph yesterday about my writing process? I mentioned something about how I wish people could actually see me type an entry in real time, so they could get some idea what a labor of love sounds familiar really is to me. Well, the more I thought about it, the more I thought it might actually be a cool idea. So, I did it. Click here to watch me “type” (more like bang out) the preceding paragraph – technology is so cool, right? (Oh, and if you can figure it out, just hit the somewhat camouflaged “play” button near the top of your screen.)

But, enough with the novelty… to the cream filling.

I’m not much of a doomsayer. I’ve never proclaimed the nighness of the end or paraded on the street wearing a sandwich board and handing out “repent now” pamphlets; but you’d have to be blind and deaf to not have noticed the foreboding undertones in recent world media. Rice, Cheney, Ashcroft, all currently beating around the war chest with Iran, who may or may not have nukes; Korea’s got nukes and doesn’t want to play in the global non-proliferation sandbox with everyone else. While it’s not a full-on proclamation of impending calamity – it is disconcerting to me.

Over the small time I’ve labored in my chosen career, I’ve gained more confidence with each passing year. An interesting side-effect, however, of me becoming more confident at work – is the fact that I’ve also become more confident about what I don’t know, and letting people know it. I mean, when I was starting, I always wanted to tell someone that I thought I could do whatever they were asking – regardless of whether or not I really thought I could, I could always learn later. I felt I should always tell people I “got it,” when a lot of times I was nowhere near “getting it.” As I’ve grown more confident about what I do know, and and what I do get – I’ve lost a lot of that fear of looking stupid, and replaced it with honesty about not knowing. I knew all along that admitting ignorance is the easiest way to fix ignorance, but I was too eager to impress.

I don’t think I’ve mentioned it before, but way back when, Rolling Stone magazine released an issue that summed up their idea of the “Top 500 Albums of All Time.” I remember when it came out, because Kyle told me about. I can remember him talking about flipping out over the fact that no matter which album he got from the list – he liked it. Specifically, I remember him getting into some Roxy Music and Talking Heads albums (and, if I’m remembering right, a Big Star album too). I had always admired his tastes in music, they were much more flexible than mine (my mind would often get “closed” onto a certain sound/genre, blinding me to new stuff). I thought his idea to use the list as a diving board into new music was brilliant. Since then, Rolling Stone has made the list available online – and I stop by from time to time to see where I stand. Y’know, how many of the albums I’ve given a proper listen, how many I agree or disagree about, that kinda thing.

One album that always bugged me, mostly because of the incredible praise it always seemed to garner, was the Kinks’ The Village Green Preservation Society. As I studied my rock music history, I read countless fawning reviews of the LP, and noticed it had the received re-release treatment (“deluxe,” “extended,” and “remastered”) several times – the canonical release clocking in at 3 CDs worth of material. Despite its acclaim, I’d never really been able to “get” the album. Recently though, I managed to score the 3 disc set I mentioned above. And, after several listens, I’m ready to agree that this is a great effort. If you’re period-piece-phobic, this is not for you – it absolutely bleeds 60s. You may get a kick out of recognizing the track “Picture Book” from a recent HP commercial (the cool one with all the frame/photo effects). I won’t heap any praise on top of the precariously large mound already bestowed on the album – but I will say that I can finally see what everyone’s on about. And, if you’re interested in hearing the 255th best album of all time, and getting a healthy dose of late-60s musicana at the same time – check it out.

Enough cream filling, back to the novelty.

A narcissistic look back over some sounds familiar hard data and personal favorites.

One of my all-time favorites, the “you can’t fake your way” entry.
The satanic flier.
Like the commentary on Papa’s passing, and the McRib.
The last paragraph makes this one.
Hammertime.
Rock in the ear.

The most visited post (by far) is my account of the Pac Man underlay artwork (linked from my Pac Man pages). The second most visited is the poop story (which makes sense according to some search analysis I’ve mentioned before). And the bronze (surprisingly) goes to my religion-statistics rant. There are 329 posts total. 181 posts contain the word “anyway.” 157 posts contain the word “Sharaun.” 141 posts contain the word “hate.” 140 posts contain the word “love.” 60 posts contain the word “god.” 19 posts contain the word “sex.”

Well, that should about do it for the week. It’s 11pm, I just pulled the garbage to the curb, and I’m about ready to settle in for a good night’s rest. Sharaun and I decided that when we wake up Saturday morning, we’ll just fill the truck with gas and strike out into the Sierras looking for a nice place to Valentine (used here as a verb). The element of the unknown makes it sound kinda fun, I’m sure we’ll be around Tahoe… but where we end up I have no idea.

And with that ask your leave and wish you a good weekend. ‘Night.

cussing in church

Curse like one.
Several paragraphs, some well thought-out and written with care, some written fast without much style – every single one about something different. Taken together though, I think it stands as one of the better entries I’ve done in a while. You be the judge.

A much better day, a return to normalcy: meetings, e-mails, phone calls; no clenched teeth or fevered concentration. Instead bracing myself against the stormy seas of imagined deadlines, I was able to loose myself from the mast and enjoy the slow rollers of a normal workday. I like it that way, actually. With a little spare time to refresh CNN in between meetings and keep up with what’s going on outside the cubicle. Speaking of the cubicle, I had the chance last night to chat with a guy who does electrical work for new construction – wiring, etc. We hadn’t yet got around to what I do for a living when he mentioned that he “…couldn’t stand to be inside all day, stuck in front of a computer.” There’s something to that, y’know, although I’m not entirely sure I’d like to be inside walls or crawling on rafters all day either. For the job-satisfaction to money ratio, I like what I’m doing better than anything else that’s immediately available to me. And, to me, that’s enough to keep me happy. And everyone knows, happiness is what counts.

Taiwan is looming. I’ll be doing a return appearance as a speaker at a conference I actually attended last year. Funny thing is, I presented twice at the conference last year – my first appearance being what I remember as my worst public appearance ever (you can read about my post-presentation shame in my entry that day). I can recall the feeling like it was yesterday, and I’ve made it a point to not get myself into the same situation this year. This year, I am a master of the material… and I have enough “extra” info to expound if necessary or answer tough questions. If pre-conference confidence is an indicator of pending success, I’ll do 100 times better this year than last. Honestly, I don’t think I’ve ever given such a stinker as that single hour last year… it pains me to recall it.

I think it would be cool to build a simple plugin for Winamp that keeps track of the songs you play, and can then analyze time-defined chunks of the logs to see what mood you are/were in. AMG has all of its music organized into “mood” categories, and although I’ve never really used that information, if the classification is decent it’d be interesting to use their data to see what “mood” my last-week’s or last-month’s playlist said I was in. For instance, today I got a blues-itch, and started at Muddy Waters’ Fathers and Sons, after which I moved onto the guitar-god-rife White Boy Blues, and am currently listening to the Allman Brothers’ Brothers and Sisters. Using album-level for mood granularity, AMG’s mood-classifications tell me that I’m feeling both “earthy” and “passionate.” I like that, actually. I’m feeling rather passionate today, I mean… look at the figuratives I used in that opening paragraph… if that ain’t passion…

The other day, Pat and I were talking about how we write. The nature of the discussion was work-related, as we were saying what perfectionists/revisionists we both are when it comes to writing. It’s true, before I send an e-mail (especially if it’s an “important” one), I read and re-read and then re-re-read it again. I often decide to change the structure of my sentences as I type, reorganizing or rewording to better communicate what I want to say. Finally, when I’m satisfied with my missive, I fire it off and immediately click over to my “Sent” box and re-read the thing again. It’s a habit, or perhaps an OCD manifestation, I dunno. For me, it’s not limited to e-mail, it’s writing in general. And that’s what Pat was saying, he was wondering how I manage to write every day when I’m so picky about how things sound, how they come out. I just do it; and believe me, it takes time. I can tell you though, that I think everyone would get a good laugh if they could watch one of my entries be typed in real time… with all the backspacing, word-looking-up, organizing and re-organizing, etc. It’s a messy process.

I remember when I first started going to church with Sharaun. Coming from an established history as a drinker, drugger, and all-around foul-mouth… I was the antithesis of a good young Christian lad. People who honestly believed that swearing one swear or beering one beer might keep them from their God amazed me. During that part of my life, Sharaun and I were pretty involved with the church, and I had many occasion to be alone in the building… setting up this or working on that. And sometimes, when I was all alone in some dark storeroom, where my only companions were Sunday School supplies and Bible-times stage-props, I would give God my own little test. I’d say a big, fat, sinful word; think a big, fat, sinful thought; purposely entertain big, fat, sinful doubts I had. I’d “sin,” in the house of God, I’d deliberately do the things that I couldn’t believe people thought would incur the wrath of God. Just words, out loud and willful. And who would have known – the didn’t bring the Lord sweeping down to cleanse his temple of the scourge that was my open defiance.

If you couldn’t tell, I wasn’t able to think of a graceful exit from my “cussing in church” piece – so I just stopped writing. So, to change subjects… Because the quote seemed important, and also to test my new “quoted text” style, here’s a rather ominous-sounding one from Dr. Rice herself:

I believe that everybody is telling the Iranians that they are going to have to live up to their international obligations or next steps are in the offing. Everybody understands what next steps means.

Yeah, now that looks good. There’s probably a far simpler way to implement it using CSS, font colors and sizes, but I chose to go the old-fashioned route and used transparent GIFs and html “align” tags. I may not be the most cutting edge web developer, but I get the look I’m after most of the time. It probably renders as complete nonsense in anything other than IE, who knows.

And I’ll leave you with that. Goodnight.

a quick one

One of the spammer's specials.
I debated on even writing tonight. I had a tense day… and the prospect of having to meet another “commitment,” writing the blog, seemed like something I’d be better off skipping. Then, I figured maybe I’d write about feeling stretched, and before I knew it I had enough for a decent entry. Here we go.

Ever had a day where you feel like perpetually racing the clock, trying to come in under some non-existent deadline? That was my day yesterday. I sat at my desk, transfixed on my work, nearly sweating with determination. Laboring under some imagined race condition, I finally stopped to take a breath around 3pm and realized I’d been clenching my teeth the entire time. I did get a lot done though, even if it was at the expense of my frazzled mind. It just felt like I had to dedicate so much of my mind to my task, every little interruption threatened to bump the table where I was absorbed building my mental house-of-cards. The whole day just felt frantic… although I wasn’t really up against the wall on anything in particular. I’m glad it’s over, and I’m hoping for a less stressful day today.

After making the final changes to my stattraq referrer-spam blocking, I wanted to e-mail my hack to the author in case he might be able to use it in future releases. Turns out, he’d posted that same day about working on the next release, and had even called for any hacks that people had done. Since he mentioned referrer spam directly, I went ahead and posted a description of my mods as a comment to his announcement, with a link back here. To be honest, I didn’t think my hack through completely; I very well may have missed instances where a “good” referrer may not get logged based on my rules – but my quick spot-testing seemed to show it was doing OK. While I’m not sure using WP’s own discussion moderation keys is the best implementation, it’s working fine for me as a stopgap for the time being.

It’s all I’ve got folks, really. See ya.

you take the hookers

I have no idea what this is, it came up when I was making sure "expositionary" was a word and accidentally did an image search.  Kinda cool though.
Nothing very cohesive today I’m afraid. You’ll just have to read as far as you can before getting bored and distracted. I had a lot to write, just not very much of it ended up being terribly interesting. And now it’s going on 11pm and I’m being driven to my pillow by the drowse-demons. So, with much fanfare, is today’s entry.

For some reason I’ve been thinking that my upcoming trip to Taiwan is perpetually “a ways off.” Then, when I realize I leave in just a week and a half, I start not wanting to go. I always have a good time when I’m there, and I’m always excited when I book the trip, but I always get a case of the I-don’t-wanna-goes just before the actual trip. I like traveling, I get a kick out of visiting customers, and I like Taipei itself – I guess it boils down to being bummed to be away from Sharaun. Not like one or two weeks is all that long, but it’s long enough to give me that moment of hesitation… wishing she could come with me or that I could stay home. It doesn’t matter really, since I’ll be going… and I’m sure I’ll have an OK time. I guess I’m just one of the old-fashioned types who feels more melancholy in leaving his wife than anticipation over cheap hookers. And believe me, a lot of people I work with who love “Taiwan” really just love Taipei’s redlight district. I enjoy the city’s more prudish offerings, like food, people, royal treatment at swank hotels, and standing in the spotlight up in front of a roomful of folks.

When my cellphone chirped and rumbled me awake this morning at 6:30am, I rolled over to prepare for the day. I wake up a little earlier of late so I have time for my peddle-powered ride into work. However, 6:30am this morning came with the sound of rain the downspout – which means reprogramming the cellphone to chirp and rumble again at 7am, and rolling back over for another half hour of rest. I didn’t mind really, I had gone to bed before 11pm Sunday night and hadn’t even heard Sharaun waking and readying – I was really out. I don’t usually sleep that hard, but for some reason I ate up my 8hrs that night without so much as a stirring. Even when 7am rolled around, I was hesitant to get moving. For a brief instant nearly every morning, a thought flashes across my mind, “I could just stay home ‘sick,’ take a ‘mental health’ day and relax.” Then I realize there’s no point, and go about my routine.

Just figured out some details about the comment spam blast I had on Superbowl Sunday. By looking at the mails WP generates to tell me of new comments, I noticed that the spam robot was just going through my entire post database. Starting with my first post, and walking sequentially through the posts until my most recent – trying to post a different piece of comment spam on each entry I’ve made (although all linking back to the same online poker website). I mentioned I’d got ~300 comment spams, which is just about right considering I’ve got 326 posts in the database. I’m happy to say, however, that every single one was blocked before hitting the main page, and none of the entries were logged in my stats database. I know, you’re tired of hearing about blog spam – but it just bugs me so much.

And while I’m on the subject: Tonight I did something I’ve never really done before, I went back and modified an old entry. It wasn’t in an effort of censorship though, it was for the best. See, I vastly improved my comment and referrer spam blocking script – and I went back and modified my previously-posted code excerpts and explanatory text. Instead of having some manual-entry list of spammer IPs and referrers, my code now checks against WordPress’ own “moderation keys” list (which get smarter with each spam comment, thanks to Kitten’s plugin). Anyway, it’s not that exciting to explain, but it sure is cool to see it work. Since wannabrowser seems to be down, I had to use a little referrer-spoofer app instead when testing the script. Good news is, it’s now successfully blocking on spammer IP, spammer keyword, and comment keywords; and my logs have never been cleaner.

I’ve sort of setup a new pattern for entries, with good stuff somewhere in the middle, expositionary fluff-intros, and link-offering denouements. Since we’re now in the link-offering denouement portion, I will use this place to offer some links (go figure). Metafilter linked this yesterday, and man… it disturbed me. The guy’s apparently been keeping a blog online for the past 11 years, way ahead of the curve. I guess it was extremely personal, and the link above is a video of him freaking out in front of a webcam. It freaked me out to see it; I feel for the guy, who has, by his own admission, something “wrong with him.” While I personally don’t get much catharsis from my own writing, I can see how someone might get so wrapped up in writing about things that they actually detach themselves from everything personal and real. Thankfully, for me, writing isn’t a crutch. It’s a pastime that I enjoy, not a necessity for sanity. Anyway, the video is interesting as a window into someone’s hangups, and I wish the guy the best on getting sorted. But y’know, human nature makes us want to observe others’ sufferings… so download QuickTime Alternative and have at it.

Goodnight.

asleepawake

Vintage fresco porn.
Sunday night of what was one of the shortest weekends I can remember.

Maybe my post last week about locking spamferres out of my blog stats database pissed someone off, because on Sunday alone I got nearly 300 spam comments. Right now, as I write, they are coming in at an average rate of one every two minutes. It’s frustrating… not because they actually make it through to the main pages (Kitten’s plugin stops that), but because they are getting recorded in my database and just taking up space. I’ve managed to create a rough hack script that takes the blocked IPs from spam comments and deletes matching rows from the visitor stats database. Deleting comment spambot IPs resulted in over a thousand rows deleted from the stats table… the only thing is that they’re coming in faster than I can get rid of them. Spam bastards.

One night last week I had a dream that I cheated on my wife with some unnamed dream-girl. You know how you can wake up from a dream feeling the consequences of what happened as if it were completely real? I woke up feeling pitiful, shamed, and guilty. For a split-second, I couldn’t believe I’d thrown so much away in a single instance of indiscretion. Almost instantly I realized it was just a dream, and that I was still as faithful as ever. But the feelings I felt in those first cobwebby waking moments were totally real. As I drove to work that morning, the Arcade Fire was in the player (I’ve been listening to that album lately as if it just came out, it’s even better rediscovered as it was discovered). And because I think the rest of this story qualifies as a separate thought, I’ll make a new paragraph now.

Anyway, the memory of my REM-tryst and faux-guilt still fresh in my mind actually served to enhance my listening pleasure. The Fire have a cut on Funeral that is perfectly suited for the guilty lover. “Crown of Love” is kinda hard to figure out. It could be a heartfelt plea to recover a lost love (as it sounded to me that morning), or maybe even some twisted tale of an adolescent stalker’s obsession. Regardless, the raw emotion the Fire manage to communicate in the words and music are incredible. There’s pain here, a deep longing, a last clutch at a hope that things can be worked out. My dream mood made the song sound better than it ever had before… almost made me wanna hook up with some hussy just so I could create something equally as honest and plaintive. Are any hussies out there willing to be my muse?

And, as I often like to do, here’s a really cool link I stumbled across one time or another. BugMeNot.com is a site that lets generates logins for webpages that make you register to read content. The NY Times site comes to mind, but there are plenty other news/media sites that require “free” registration to enter. Use this portal and register no-more. And, one more before I go – cockeyed.com’s new feature on mysterious “Levitra couches” had me laughing, and also had me amazed (make sure you read all the updates). I’m gonna keep my eyes peeled, maybe I can help solve the mystery.

Lately, I’ve been using the “random entry” feature I added to the sidebar to hop onto old posts and spot-check them for WordPress conversion errors (a lot of my commas and semicolons mysteriously turned into question marks when I went through the complicated process of switching over from my old blogging software). The conversion process was extremely manual: extracting database entries from the old software’s crazy format, using word to clean them up, hand-populating the WP MySQL database with custom INSERT statements, ugh… don’t remind me. I’m just glad I got it all transferred, hopefully I’ll eventually clean up all the artifacts too – and it will be perfect.

Goodnight.

escapism

60Hz will kill your eyes, crank that sucker to at least 75.
Sometimes I hate how completely different the ideas in a single entry’s paragraphs are. I guess it comes with writing in pieces, when time permits. Occasionally one entry will represent one thought, but most of the time there’s a few core paragraphs that gel and a bunch of random straggler paragraphs that never really developed into full-blown themes. I guess it’s OK, it’s just a little disjointed. So with that, here are some core-paragraphs about “getting away” sandwiched between a couple random paragraphs about circuit breakers and CRT screens. Enjoy.

As I was taking out the trash tonight, I considered something I hadn’t before. I think I discovered a huge design flaw in our house. Our breaker box is located outside the house, in the front yard. Yeah, that’s right… anyone can walk up to our house, without having to get through any gates or locks, and flip a single switch to kill power to the entire house. Who thought of this? Is there some benefit to putting the breakers outside the house? I mean, they’re not even covered, if it was raining I’d get wet going out there to poke around. So strange. Every other place I’ve lived had the breakers inside, on the wall somewhere or in the laundry room. I’m thinking of putting a flashing neon sign above it that reads “breakers.” Y’know, reverse psychology. Maybe it’ll deter the skeptical serial killers.

I’ve long had a fantasy about running off into the woods and striking up residence there as a squatter. I don’t know why it’s so appealing to me, it’d probably be nothing like I imagine. It’d likely be all hard work and paranoia, that someone would come in and sweep me away for illegally staying on their land. But it is; appealing I mean, for some reason. I dunno how realistic it is these days, it seems that 30 years ago it may have been as easy as finding a place to go – now it’s probably more hiding than escaping. Hiding from rightful land owners and rangers, poaching, etc… doesn’t sound as glorious as it did at first blush. Sure, the excitement of sticking it to the man lends something to the attractiveness… but so far, the man ain’t really done much to me that I consider stickin’-it-to-him worthy. That’s why it’s a “fantasy,” I suppose.

My brother-in-law is actually acting out something very similar to this fantasy right now. He up and left from his home in FL, putting his college education (and everything, really) on hold to drive to California and surf the coast. Yeah, he has no plans other than making his way up the coast, from San Diego north, surfing as he goes. He’s made some living arrangements with friends where he could – but is otherwise staying in his truck. Back home, he worked in a surfboard shop, shaping, glassing, airbrushing, doing anything really. Before he came, he made arrangements with some shops along the coast to pick up work when he was in town. He can go in when he wants, glass a few boards for cash under the table, and continue on his own personal Endless Summer. He even got a laptop and took wardriving lessons from me so he’d be connected on his journeys. Right now he’s living on a boat in San Diego… spending his days surfing. This kid is 20 years old, man I admire the gonads it takes to strike out and do something like that on your own.

Alternately, I guess I could avoid squatting or living out of my truck by actually purchasing some land as my own. I’ve often thought of doing that, y’know… with all the money we don’t have. While some good say land-ownership is good for one’s portfolio, I think I’d like to think of it less as a monetary investment and more as a spiritual one; or something profound like that. Last year we went to a cabin down south that Kristi’s family owns, on their cattle land. It’s not in any super-remote locale, but it is isolated enough to where you’d be able to enjoy plenty of solitude, and the scenery is outstanding. While I don’t necessarily want to herd cattle or anything, but I could definitely handle somewhere I could get away too. In fact, I’m still down with the commune if anyone else wants to drop out.

Every once in a while I have a wake-up moment, where I realize that I probably spend 50% of my average weekday staring at a screen. Be it my computer at work (~8hrs/day), my computer at home (~4hrs/day), or the television (~3hrs/day). Of course, I’m doubling-up sometimes with the TV on in the background while I lounge with the laptop. But… that can’t be good, right? I often try to take breaks… read or just listen to music without visual stimulation – but for the most part I’m always staring at a box. It’s depressing to me, to think about how much of my life is spent that way. I dunno, maybe guys who read or paint are semi-depressed because they’re always looking at books or canvas. In the end, I wouldn’t continue to do it if I hated it, so there’s not much worth complaining about.

I’m kinda proud that I posted 100% of the days last month (excluding weekends, of course). I think that may be the first month in blog history that got wall-to-wall entries. Probably won’t happen this month, with the travel to Taiwan in a couple weeks and all… but I can aspire.

Nite.

poker no more

Cocksure.
Good morning people! I’m happy right now because I’m writing the intro paragraph, which means this entry is almost done, and it’s only 9:30pm. Sharaun and I are doing the regular: she sits on the loveseat grading papers while I sit on the couch mucking with the laptop, all the while TiVo’d episodes of CSI play in the background. Come 10pm, she’ll head off to bed and I’ll move into the computer room where I can listen to tunes. Before that though, you can read this entry!

After a nice ride home, I turned on our electric fireplace and settled down with some cold pizza for some quality time with W. I was thinking how sucky it must be to be Cheney or Hastert and know your face will be in the shot of Bush during his entire speech. You can’t yawn or whisper or pass notes to your neighbor, you’d better applaud at the right time and look thoughtful or proud at the right time, and should laugh summarily at every joke. I also wonder how the network decided who’s face they’ll spotlight in on during certain parts of the speech. Is McCain asleep? Hillary digging at her nose? Get me tight on her face!

People who don’t care about behind-the-scenes blog technicalities can skip ahead.

For those who are interested in how I modified my StatTraq plugin to not log referrer spam, here ya go. I just added one more condition to the IF statement that enters a row into the stattraq database. This condition checks two things. First, does the referrer link contain a known spam keyword or spammer IP? Second, is the referrer link a query from a search engine? If the referrer link contains a known spam keyword or spammer IP, we don’t enter it in the database. The only exception being the case when someone is being referred to the site from a search engine where their search string contained a spam keyword. It amounts to something like this:

IF [(referrer does not contain known spam keyword AND referrer does not contain known spammer IP) OR referrer is from a search engine] THEN log referrer

I accomplish the OR referrer is from a search engine by searching for a question mark in the referrer string, since most search engine referrals have a “?” before the query string the user typed to get to your site. Today was the first day I ran StatTraq with the new conditionals, and I logged zero referrer spam links. Oh sure, since I don’t block spamferrers with .htaccess, they’re still in the main Apache logs, but I don’t care about that – I really only check stats for the blog. For those who’d like to do the same to their StatTraq, just replace the following line in stattraq.php (word-wrapped here, but will be a single line in the PHP file):

    if (!strstr($_SERVER['PHP_SELF'], 'wp-admin') && 
    !strstr($_SERVER['PHP_SELF'], 'wp-stattraq'))

With these (the IF statement is word-wrapped here, but make sure it’s just one long line in the PHP file):

    //grab modkeys from WP db
    $db_pattern = get_settings('moderation_keys'); 
    //create array on carriage return
    $db_pattern = explode("\n", $db_pattern); 
    //trim whitespace off all array elements
    $db_pattern = array_map('trim', $db_pattern); 
    //create long string with '|' separating elements
    $db_pattern = implode("|", $db_pattern); 

    if (!strstr($_SERVER['PHP_SELF'], 'wp-admin') && 
    !strstr($_SERVER['PHP_SELF'], 'wp-stattraq') && 
    ((!eregi($db_pattern, $referrer) && 
    !eregi($db_pattern, $ipAddress)) || ereg('\?', $referrer)))

The list of known spam referrers and spammer IPs is read right out of WP’s “moderation keys” option value for discussions. This is the list stored in the WP database which all comments are checked against before either going into the moderation queue or heading straight to the database. The great thing about using the WP moderation keys for the spam-compare string is that the keys are updated each time a new spammer is blocked using Kitten’s comment spam plugin. So, every time you kill a spam comment, its attributes are automagically added to the compare-string for stattraq entries. Exploiting the combination of WordPress and Kitten’s plugin serves to create the perfect spam-compare string; keeping 99% of comment-spam out of the WP database, and 99% of referrer-spam out of the stattraq database.

And, if you’re here reading about how to stop referrer spam from being logged in your stattraq table – that probably means you’ve already got some in there. So, after you’ve implemented the above code and blocked any new spam logging, you may want to go back and clean out any existing spam entries from your stattraq table. Luckily, the spam keywords list from above can be easily adapted into an SQL DELETE FROM statement which you can run on your stattraq table from within phpMyAdmin. For your reference, here’s the SQL statement:

click me for file

That should help cleanup the stattraq table a bit. I actually wish stattraq had some kind of “archive” or “clean” function built in, since that table can get really big really fast with all the search engine bot visits. Anyway, hopefully someone will find all this useful. (As an aside, do you know how friggin’ long it took me to figure out how to make that text file icon have no border and no link-underlining? Stylesheets are awesome, but can be a pain to override.)

And, before I get off the dev-talk, I’m pretty pumped about the upcoming new version of WordPress. Sounds like the UI is gonna be all new and cool looking, and the new “rel=nofollow” attribute thing will be rad too. Moving to WP as my blog software was the awesomest thing I coulda done.

Hey, non-technical-carin’ readers… we’re back to normal now.

Remember how I was gloating about getting my taxes done and filed so early? And, then, remember how I was saying it didn’t matter that I finished them so early, because I was confident I had all the data? Well, I got yet another 1098 in the mail today… some mortgage interest from a lender on my 2nd that I’d completely forgotten about since the refi. So… now I’m furiously amending my fed and state returns, to my windfall, granted, but still a pain. I guess, not only does the early bird get the worm – he also sometimes gets bitten for jumping the gun. And I was so satisfied that I was done with the whole mess. An amended tax return? What a blemish on my taxin’ skills. To ice the cake, now I’m afraid to file an amendment lest I get more stuff I don’t expect. Ugh.

I’m going to bed now, ‘night y’allz.