Holy cow, that was a lot of mail. So sorry!

I was checking out a few things on my blog today, and I came across my WordPress Post Notification administration page. “Hmm,” I said. “I seem to have misconfigured this.” No e-mail had been sent out since August 2009. I figured out that the configuration directory didn’t have write permissions, enabled it, and went on with the rest of my day.

In the evening, I checked my personal mail on my iPod Touch. Inbox…

323 unread messages. That wasn’t right. I read the e-mail subjects. Holy cow, my blog had sent out every single one of my posts in the past half-year.

Granted, the only people on the list had double-opted-in, but still. I’d be annoyed if that many messages showed up in my inbox too, instead of one at a time.


First step: Control the damage. I moved post-notification out of the way, automatically disabling the plugin.

Second: Figure out the impact. 50 e-mail addresses left. Two nasty-notes.

Third: Gingerly re-enable the plugin after removing the locking directory.

Fourth: E-mail everyone an apology.

Fifth: Write about what happened. Tradeoff: Personal embarrassment versus possibility of saving other people from doing this kind of stuff. Worth it.

Looking at the bright side (because there always is a bright side)… At least I’m learning this now instead of later. And with my blog instead of a customer site. And with a smaller list instead of a megafan community. And… umm… it’s e-mail instead of text messages. Which has happened before. I was writing a Perl script that sent messages, and I had a bug, and there was an infinite loop, and poof! there went the balance on my prepaid card.


I’m sorry.

  • Steph Young Gonzaga

    I can soooo relate to the email oopsy!

    Some years ago without throughly considering the ramifications, I once enabled a service in an application test environment inadvertently sending out a ton of system generated email messages to a live list. Oh, no!! For the recipients, the test email messages were essentially indistinguishable from production generated messages — so you can imagine the uproar that caused.

    I feel your pain since I can still remember the calls I had to field over that ‘little’ boo-boo …and I can remember the crow I had to eat over my mistake. Definitely not very tasty, is crow ;-)

    The good thing was that it never happened again because it forced the switch to dummy lists and cross-checks for service enablement in our test environments. Learning from mistakes — especially self-inflicted mistakes — is often the only way real change takes place.

    In retrospect using dummy lists and cross-checks in test is a real no-brainer — but that’s the thing about retrospect — hindsight is always 20/20!