Oops – Mea Culpa!

Just discovered a bug in my new anti-spam WordPress plugin that made it impossible for anyone to comment. It’s been fixed, but this, of course, brings to the front the critical need for a proper testing environment!

Posted in Updates | Tagged , | 13 Comments

Trying Some new Anti-Spam Techniques

If you’ve been paying attention to my Akismet counter on the sidebar, you’ve probably noticed the number trending upwards quite rapidly over the last week. Apparently the spambots have found me.

Akismet’s done a superb job of preventing you fine folks from seeing the spam. And WordPress similarly does a superb job of providing a single-click interface to purge all that spam. But I’d really rather not have to be bothered with that.

So I’ve just implemented a quick-and-dirty plugin that uses Tornevall‘s DNSBL service to bar these spambots from posting at all. With any luck none of you will be affected or even notice at all, but do let me know if you find yourself unable to post comments (assuming you have another way of reaching me, that is).

Coincidentally, this is providing a handy lesson in writing WordPress plugins. In the dive-in-headfirst-and-hope-you-can-swim sort of way…

Posted in Updates | Tagged , | 3 Comments

India or Bust!

So, I’m going to India. When? Dunno – 3 or 4 weeks, maybe 5. How long? Dunno – 2 weeks? Maybe as much as 4. Why?

Because the company I work for is expanding into the Indian market. We’ve got a potential client, but to give them the best we can we’re working with an Indian development company to branch and then customize our product for them. It’s a great opportunity to expand and grow our product and our company.

I’ll be heading over there to train the developers on our code base and our development practices. Should be fun.

I’ll be in Trivandrum, for those who are curious.

Posted in Life | Leave a comment

Apache on Windows: Serving Files From the Network

Recently I had a problem: Without going into the “whys” here, I found myself on a Windows XP system needed to parse and serve PHP files in Apache from a network share. Sounds easy enough, right? Unfortunately, the obvious answer didn’t work, and hours of Googling turned up countless suggestions, most of which didn’t work at all. I even found some very detailed step-by-step instructions that turned out to be based upon a premise that doesn’t work at all.

As it turns out, this is a problem with a very simple, yet unobvious, solution, and today I will share it with you. With any luck, Google will start serving up this post to others looking to serve files in Apache on Windows from a network file share. Continue reading

Posted in How-to | Tagged , , | 3 Comments

The Day the World Ended

nickmccabe :( RT @jennispinner 2000yrs ago we lived in tents and had to catch/kill our food. Now, we curl up into the fetal position when Gmail’s down.

I’m sure you already know Gmail went down today. Well, to be precise, the web interface went down. IMAP, POP3, and the API remained available, however users who hadn’t enabled access for the former 2 options (such as myself) found themselves cut off from all access to their Gmail. Many of us rely on Gmail for our work, so it was more than a nuisance for us. Continue reading

Posted in Tech | Tagged , , , | 1 Comment

The 49th at 50

Ever been curious about the history of the Union’s largest state? A local radio station has produced a 50-part series of short spots covering the highlights of our 50-year history as a state to celebrate the bicentennial. It’s a good listen, and they’ve made it available as a podcast.

Posted in Random | Tagged | Leave a comment

Security Through Obscurity in the News

Shortly after my previous post regarding security through obscurity, I spotted an article on ZDNet detailing a new vulnerability affecting Cisco wireless routers. If not for the reference to “skyjacking” in the title, I would have stopped reading halfway through the article and dismissed the whole thing as nothing more than a spot of sunshine lighting up a “vulnerability” in a network’s obscurity.

Continue reading

Posted in Security | Tagged , | Leave a comment

Take Note: Cryptic Error Messages Help No One

I’m a techie. A nerd, if you prefer. When my computers break, I like to fix them. I will spend more hours than most people would consider sane Googling for answers to my current woes rather than take my computer to someone who gets paid to do the same thing (and likely already has, and thus can fix my problem in a fraction of the time).

I’m also a programmer, but at the same time I’m human – that means my code is imperfect. Being that PHP has been my bread-and-butter for the last 5 years or so, and of course the previous sentence’s statement that I’m a fallible programmer, I’ve of course seen this ever-so-famous error message:

Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in /foo/bar.php on line 42

Take note: If you’re providing error messages (and you should be!), make them meaningful to the person reading them!

T_PAAMAYIM_NEKUDOTAYIMs aside, today I was stumped by another cryptic PHP error message. Let me tell you about it. Continue reading

Posted in Tech | Tagged , , , | 1 Comment

Security Through Obscurity – Over-demonized?

Anyone who has spent any real time dealing with computer systems’ security has heard the phrase, “Security through obscurity is no security at all.” While I won’t make false claims that I’m an expert in the field of computer security, today I will apply common-sense and some basic best practices and explain when this axiom is, in fact, false.

Continue reading

Posted in Security | Tagged | 1 Comment

RAID 10 with mdadm

If I had to pick one fault of Linux, it would be that for almost everything, the Linux user is inundated with hundreds of possible solutions. This is both a blessing and a curse – for the veterans, it means that we can pick the tool that most matches how we prefer to operate; for the uninitiated, it means that we’re so overwhelmed with options it’s hard to know where to begin.

One exception is software RAID – there’s really only one option: mdadm. I can already hear the LVM advocates screaming at me; no, I don’t have any problem with LVM, and in fact I do use it as well – I just see it as filling a different role than mdadm. I won’t go into the nuances here – just trust me when I say that I use and love both.

There are quite a few how-tos, walkthroughs, and tutorials out there on using mdadm. None that I found, however, came quite near enough to what I was trying to do on my newest computer system. And even when I did get it figured out, the how-tos I read failed to mention what turned out to be a very critical piece of information, the lack of which almost lead to me destroying my newly-created array.

So without further ado, I will walk you through how I created a storage partition on a RAID 10 array using 4 hard drives (my system boots off of a single, smaller hard drive).

Continue reading

Posted in How-to | Tagged , , , | 5 Comments