Fighting Spam — All Kinds

How I deal with comment and pingback spam.

I start each morning pretty much the same way. I make myself a cup of coffee, make a scrambled egg for my parrot, and then sit down at the kitchen table and check the comments that came into my blog overnight.

About Spam

The main thing I’m checking for each morning is comment and pingback spam. These are similar but different.

  • Comment spam is a comment that exists solely to provide one or more links to another Web site, usually to promote that site or its services, but possibly to just get links to that site to improve Google rankings. Comment spam ads nothing to the site’s value. Sometimes disguised as a guest book entry or general positive comment — for example, “Great blog! I’ll be back!” accompanied by a link or two — it simply isn’t something the average blogger should want on his or her site.
  • Pingback spam is a comment that appears as a result of a link on another blog pinging your blog. Although many pingbacks are legitimate (as many comments are legitimate), there appears to be a rise in pingbacks as a result of feed scraping, which I’ve discussed here and here. Pingback spam is usually pretty easy to spot; the software that scapes the feeds isn’t very creative, so the excerpt is usually an exact quote from what’s been scraped. Sometimes, oddly enough, the quote is from the copyright notice that appears at the bottom of every feed item originating from this site. Pingbacks automate the linking of your site to someone elses — in the case of pingback spam, it’s likely to be a splogger.

Lucky me: I get both.

Tools to Fight Comment Spam

Fortunately, I use both Bad Behavior and Spam Karma 2 (many thanks again to Miraz for suggesting both of these), so the spam comments that get through their filters and are actually posted to the site are minimized. On a typical day, I might just have 3 to 5 of them. Compare that to 3,400 potential spam messages stopped by Bad Behavior in the past week and the 51,000 spam messages deleted after posting by Spam Karma in the past year since its installation. Without these two forms of protection, I’d be spending all day cleaning up spam.

Anyone who doesn’t use some kind of spam protection on a blog with open comments is, well, an idiot.

Neither program is very effective against pingback spam, although Spam Karma seems to be catching a few of them these days. Although I’m pretty sure I can set up WordPress to reject pingbacks, I like the idea of getting legitimate links from other blogs. It helps form a community. And it provides a service to my readers. For example, if I wrote an article about something and another blogger quoted my work and added his insight to it, his article might interest my readers. Having a link in my comments right to his related post is a good thing.

My Routine

So my morning routine consists of checking Spam Karma’s “Approved Comments” and marking the comments that are spam as spam. Then I go into WordPress’s Comments screen (Dashboard > Manage > Comments) and marking pingback spam as spam and deleting it.

Why do it both ways? Well, I’m concerned that if I keep telling Spam Karma that pingback spam is spam, it’ll think all pingbacks are spam. I don’t want it to do that. So I manually delete them. It only takes a minute or two, so it isn’t a big deal. If I had hundreds of these a day, I might do things differently.

The other reason I delete the pingbacks manually is because I want to check each site that’s pinging mine. I collect URLs of splogging sites and submit them periodically to Google. These sites violate Google’s Terms of Service and I’m hoping Google will either cancel their AdSense accounts or remove them from Google’s search indexing (or, preferably, both). So I send the links to Google and Google supposedly looks at them.

I’m working on a project to make creating a DMCA notice easier — almost automated — and would love to hear from anyone working on a project like that.

This morning was quiet. Only three spams to kill: one comment spam and two pingback spams. I’ll get a few more spams during the day and kill them as they arrive; WordPress notifies me via e-mail of all comments and pingbacks as they are received. (I don’t check my e-mail at the breakfast table anymore.)

Do you have a special way to deal with comment or pingback spam? Don’t keep it a secret. Leave a Comment below.

Sunrise Flight

I re-experience the magic of getting out to fly at dawn.

The alarm went off at 4:40 AM. Normally, I don’t set an alarm. I’m usually awake by 5 AM without one. In fact, that morning, I was awake at 3:30. But I fell back to sleep and was very surprised when the alarm brought me back to consciousness.

I had enough time to jump in the shower, dress, and make coffee in a to-go cup. Alex the bird and the horses would have to wait. My flight was at 6 AM and I still needed to do a preflight and pull the helicopter out to the ramp.

It was cold and dark as I drove away from the house. I’d taken the doors and windows off my Jeep about two months ago and still haven’t put them back on. The temperature was in the 50s, and I really felt it as I sped down West Wickenburg Way (the old California Highway) to the airport.

The moon was full, casting a blue-white light over the desert landscape. I love to fly in the light of a full moon. The ground is so dark out here in the desert that the moonlight really illuminates things. Sometimes, as I fly back to Wickenburg from moonlight dinner tour in the Phoenix area, I can see the helicopter’s shadow moving along 700 feet below us — a tiny gray dot darting across the washes and along the rolling hills.

I rolled up to my hangar, pointed the Jeep’s headlights at the door, and turned off the Jeep, leaving the headlights on. I fiddled with the combination padlock on the door to get it open, then turned off the headlights. I rolled the right side door open and flicked on the overhead lights. I seldom come to the hangar at night, so I use the lights rarely. They’re bright and fully illuminate the contents of my hangar: Mike’s airplane, my motorcycles, some furniture in storage, my airport “office,” and my helicopter, sitting on its ground handling equipment, always ready to roll out to the ramp.

I did a preflight, checking under panels for fluid levels, tele-temp colors, and unusual signs of wear or tear. I climbed my 10-foot ladder to examine the rotor hub. I checked the tail rotor and the oil level. One of the good things about flying the same aircraft all the time — and being the only person to fly that aircraft — is that you really get to know it. When there’s something wrong, it jumps out at you. Like the tiny crack I found in the plastic part of my clutch activator’s down-limit switch the year before. The crack was only about 1/4 inch long, but I saw it on a preflight. (That turned out to be another case of $1000 in labor to replace a $12 part.)

By then, it was 5:30 AM. Time to get out on the ramp. I hopped in the golf cart that was attached to the helicopter’s tow bar, and began backing out. It’s a tricky maneuver; I have to back straight out about 3/4 of the way to the hangar across from mine to make sure the tail rotor clears Mike’s airplane and the hangar door. Then a sharp turn toward the ramp, which swings the tail out. When the helicopter and cart are parallel to the row of hangars, I’m ready to roll.

But not yet. I had to get out of the cart, switch off the lights, and roll the door closed. I left my Jeep parked as is. It wasn’t blocking anything except my left hangar door and I’d be back before 7 AM.

The sky to the east was beginning to lighten. According to my computer, dawn in Wickenburg would be at 6:17 AM. The goal was to be in flight, flying east when the sun broke over the horizon. I could see now that there was a cloud out there, not far above the horizon. The sun would make its appearance, then slip behind that cloud. The cloud didn’t seem too dense, so I was pretty sure much of the light would penetrate, keeping the sky bright as the sun continued to climb. That was my prediction, anyway.

Zero Mike Lima before DawnI rolled up to the fuel island, set the parking break on the cart, and got out to disconnect the ground handling equipment. That means unfastening the four ratchet straps on the front of the skids, moving the tow bar away, and taking the ground handling wheels off the back of the skids. (You can see a photo of what the ground handling equipment looks like on my helicopter in this article.) It’s a bothersome routine — it would be so much nicer to just land on a rolling platform like Ray and Dave do — but I have it down to a science and can do it quite quickly.

I added 15 gallons of fuel to the main tank. I was expecting three passengers — a dad and his two young sons — and could actually top off the tanks if I wanted to. But I don’t like putting on more fuel than I need (including reserves, of course). With the added fuel, we’d have enough to fly 2 hours. Our flight would take 30 minutes.

Done with all my preflight stuff, I waited. It was 5:45 AM.

The airport at Wickenburg is kind of magical at that time of the morning. The ramp, lighted by a handful of overhead lights, illuminates the few planes parked outside. Every once in a while, one of the lights goes out, leaving the space beneath it in shadows until it recovers from its temporary ills and comes back to life. The rotating beacon — now a cell tower — sweeps its white and green light over the vicinity. If you listen hard, you can hear its motor. You can also hear the sounds of life in the industrial park across the runway: distant banging and clanking one of the small manufacturing facilities, the steady beeep-beeep-beeep of a truck backing up, some voices carried on the breeze. In the past, I’ve heard the mournful mooing of a free-range cow on the ranch (soon to be a housing development) across the road or the call of a coyote.

Zero Mike Lima at DawnIt was the light that fascinated me that morning. The light from the fuel island cast on my helicopter combined with the light of the coming dawn behind it. I pulled out my digital camera — which I keep in my purse — and took a few photos with the flash turned off, using the fuel island equipment and camera self-timer as substitutes for a tripod and cable release. The resulting photos weren’t bad, as you can see for yourself.

As 6 AM approached, I waited over by the terminal building. Before long, a car pulled in and my passengers got out. The sons were somewhere between 8 and 12 years old. The younger one didn’t look very enthusiastic. I gave them the safety briefing as we walked out to the helicopter. The older son sat in front — an arrangement that seemed to make the younger son very happy as he climbed in back next to his dad. I showed them how to work the doors, then closed them in. A few moments, later, I had the engine going and we were talking over the headsets while the engine warmed up.

To the east, the sky had brightened considerably. The cloud hanging out there would make the sunrise interesting. Our normal cloudless skies are wonderful if you like sun — and you’d better, if you come to Arizona — but they make for boring sunrises and sunsets. Today they’d have a bit of a treat. The sun was already illuminating the bottom of the cloud, although there wasn’t much color to its light.

We took off and headed east. I climbed more than I normally would to give them the best view I could muster. It was already too bright for the lights of Phoenix to be very noticeable, which was kind of unfortunate for them. One of the things I like to do at night is launch from Wickenburg Airport, which is in a pretty dark area of the desert, and climb up to reveal the lights of Phoenix stretching from 30 to 60 miles away in a perfect example of urban sprawl light pollution. Terrible for people wanting to look at the stars, but quite beautiful from the air, especially when climbing from the darkness on the edge of nowhere.

My goal was to get as far as Lake Pleasant before sunrise. I made the goal. The lake was in sight with the brightening sky reflecting off its smooth surface when the sun peeked over the horizon.

Of course, that’s also when you could see the streaks on the Plexiglas of my cockpit bubble. That low-lying sun will show how badly I cleaned the bubble, even if I did a good job. At least there wasn’t any dust to make it worse.

I made a gentle turn to the left, leaving the sun behind us. Now we were facing Wickenburg again and could see it in the distance. We also saw Vulture Peak and the full moon as it was descending toward the horizon. The sun cast long shadows in the desert between the hills and mountains. Details of the terrain emerged: a gravel pit, some trailers parked on BLM land, a windmill and tank. I steered us toward Vulture Peak, which my companions planned to climb later in the day. We flew past the east side of the peak, then past the guest ranch where they were staying. A while later, we were touching down gently on one of the heli-spots at the airport. We’d been in the air about 30 minutes.

As I cooled down the engine, my passengers told me how much they’d enjoyed the flight. Even the little guy in the back, who wasn’t scared anymore. I escorted them all back to the terminal and we said goodbye.

It was still early — about 6:45 AM — but the airport’s nighttime magic was gone. Although I was the only one left on the ramp, it didn’t have the same deserted feeling it had had less than an hour before.

I rolled my cart over to the helicopter to put it away. At home, Alex the Bird and the horses were waiting for breakfast.

Royalty Statements

What my quarterly royalty statement tells me.

I make my living as a writer. Sure, I do other stuff and bring in money doing it, but when it all gets down to dollars and cents, the money I receive from writing is what pays the mortgage and puts food on the table.

With a new royalty statement in my hands, I thought I’d take a few moments to explain to folks interested in writing how the royalty part of writing works and what can be learned from a royalty statement.

How a Typical Writer Receives Income

Money from my writing work comes in three ways:

  • Payments for articles. When I write an article for publication, I normally get a check within 2 to 4 weeks of publication. The amount is agreed upon in advance, so I know what to expect but not exactly when to expect it.
  • Advances for work in progress on books. When I sign a book contract, it includes a payment schedule for advances. I like my advance paid in three or four installments that are due when certain parts of the book are submitted to my editor(s) — in other words, when I achieve completion milestones. A typical arrangement might be 1/3 on signing, 1/3 on 1/2 completion, and 1/3 on completion. Depending on the publisher, the checks usually arrive within 2 to 4 weeks of the milestone. Again, I know how much to expect but not exactly when to expect it.
  • Royalty payments. When I sign a book contract, it also includes a royalty percentage. The percentage is applied to the wholesale price of the book. So, for example, if the royalty is 12% and the book retails for $20 (about average for my books), the 12% is applied to the amount the publisher sold the book to retailers (or book clubs or direct order customers) for. A good rule of thumb is about 50% off the cover price. So I’d get 12% of about $10 or $1.20 per book. This royalty rate is applied to all sales of a title to come up with a royalty due. The amount of advance is then subtracted — remember, that was an advance on royalties — and if the result is a positive number, the book has “earned out” and I get a royalty check. My publishers pay royalties quarterly, although not on the same schedule. I know exactly when a royalty check will come — well, within 3 days of an exact date — but I never know how much I’ll get.

After doing this for 15 years, I’ve come to think of advances as my “bread and butter,” payment for articles as “fun money,” and royalties earned as “icing on the cake.” I won’t write a book unless the advance is enough to cover the amount of time and effort I put into writing the book. (I turned down two low-advance projects just last year.) This way, if the book doesn’t earn out, I’ll still make enough to keep paying the bills. If it does earn out, great. And since I don’t do a lot of work on articles — it’s just too much effort to get the work lined up — I don’t rely on that income for anything. That’s kind of unfortunate, because I can usually bang out one or two articles in day, so the income would really be great if I’d get get more of that kind of work.

As you can imagine, royalty statement time is a big event at my house — especially when Peachpit royalties are due. The statement comes in a big fat envelope. The reason: there are lots of pages. But one of the first pages of the package is the royalty check. And a quick peek tells me just how much icing I’ll have to spread around for the next three months.

How Many Books are on the Books?

The reason my Peachpit royalty statement comes in a big fat envelope is because there are lots of pages. The statement sitting in front of me right now is 61 pages long. I can’t even get a staple through it for filing.

The first few pages — 4, this time around — is a summary of the ISBNs covered by the statement. This list of ISBNs — 34 of them this quarter — are the books the publisher still has in its accounting system.

I need to make a distinction here between titles and ISBNs. A good example is right on the first page. My 2004 title, Creating Spreadsheets and Charts in Excel: Visual QuickProject Guide, is listed three times: the original title, the German translation, and the French translation. Sometimes translations get their own ISBN and sometimes revenue for a translation is listed for the main title. It depends on how the translation rights were sold. Also, since Peachpit is now selling PDF versions of some of my books, those versions appear on a separate line.

Still, a quick count of titles on this quarter’s statement shows 28 titles listed. Whew! Even I think that’s a lot.

In my case, the vast majority of my work these days is in revisions. So each statement might show multiple versions of the same book. This is especially true for titles that are still “alive.” For example, my America Online: Visual QuickStart Guides (a 2-part — Macintosh and Windows — nightmare completed for version 3.0 years ago) are “dead” titles. They came out, sold poorly, and were not revised. These book are dead and buried and the only reminder that I ever did them are the author copies of each book on my author copy shelf. But my Excel for Windows: Visual QuickStart Guide is alive and kicking — in fact, I just finished the revision for Excel 2007 this week. Three editions appear on my royalty statement: 2000, 2002, and 2003. (2007 will appear on the next statement.) And my Mac OS: Visual QuickStart Guide takes up the most lines: seven editions going back as far as the edition covering Mac OS 9.

For a title to appear on the royalty statement, it must be either earning money or losing money (by returns) with a more recent edition to suck up the losses. This is an important clause in book contracts — one that’s important enough to discuss in a little more detail here. Commonly known as cross-accounting or cross-deductions, it means that returns on one title can be applied to net revenue on another. So, for example, if my share of returns on an old edition of my Excel book was $43.54, that amount could be deducted from or charged to royalties on a more recent edition. That’s normally why books stay on royalty statements for so long — there’s still accounting for them.

It was kind of a good thing that my AOL books didn’t have more recent editions. Neither title earned out, so the money I was overpaid for those books could be deducted from future editions, had they existed. Instead, the publisher cut their losses by not doing new editions (a wise move) and simply stopped accounting for the existing books when the numbers stopped coming through. The books “fell off” my royalty statement.

(If you’re ever given the opportunity to negotiate a book contract, do not sign a contract with a clause that says all of your books can be pooled together for cross-accounting. (I don’t know the exact wording of a clause like that because I’ve had it removed from every single draft contract it appeared in.) Agreeing to this may prevent you from ever getting a royalty check if you write multiple titles for the same publisher and any or them are dogs. If you’re really lucky, you won’t even have cross-accounting for the same edition of a book — I was lucky to have that situation with one of my Quicken titles years ago. But I think it’s fair to do cross-accounting with different editions of the same book, so I don’t mind signing for it. I just brace myself for the returns every time a new edition comes out.

And returns, in case you’re wondering, are returns from retailers/wholesalers, not consumers. If Barnes & Nobel buys 1000 copies of a book and sells 200 of them in the time they allotted to give the title shelf space, 800 copies come back. That’s a bad thing for the author.

What the Summary Numbers Mean

Still with me? Here’s a bit more that the summary pages tell me.

For each ISBN, the summary page has 6 numbers:

  • Previous Balance is the amount owed to me (positive number) or the publisher (negative number) for the ISBN. There usually aren’t any positive numbers; if the publisher owned me money, they paid me last quarter. So books that are earned out show zero in this column. If I owe the publisher money — for example, the book hasn’t earned out or subsequent returns have put the ISBN in the red — that number appears as a negative value. Zero is good, negative is bad.
  • Earnings/Subsidiary Rights Earnings is what the book earned me during the quarter. That’s the royalty calculation applied to net sales. Positive numbers means they sold more books than they received in returns. Negative numbers mean they got more in returns than they sold. Positive is good, negative is bad.
  • Credits/(Deductions) is the amount paid out during the quarter for advances or, if the author is paying for indexing, the amount paid to the indexer. I’ve never seen a positive number in this column.
  • Cross Deductions is where they take returns from one title and apply them to royalties earned on another title. So, for example, if the net earnings on my Word X book were -$53.47, that amount would appear as a positive value in this column for that ISBN and a negative value in that column for a later edition — perhaps my Word 2004 book. If you add up the cross-deductions column, the net amount should be zero.
  • Payment Due is the net amount owed to me for the ISBN. This number is either zero or a positive number.
  • Balance Forward is the amount that needs to be earned out to get more royalties on the ISBN. It’ll be zero if there was a payment in the previous column or a negative number if zero was in the previous column. That value is carried forward to the Previous Balance column in the next statement.

Of course, this is the format Peachpit uses. Other publishers may use other formats.

So when I get a royalty statement, the second thing I look at is the summary. (The first is the amount of the check, of course.) The summary tells me which books are earning money for me. That’s usually current editions of books. This is where I can see at a glance whether a new title has earned out. I can also see which books are earning me the most money — the titles with bright and happy futures. The bigger the payment due on a title, the more likely that title will be revised in the future. (Unless the software publisher decides to kill the software, as Adobe did to PageMill years ago. That book was doing very well when it was killed.)

Sometimes I get pleasant surprises. For example, my Excel 2002 book is still selling. That book was published five years ago and it earned $262 for me this quarter. Okay, so that isn’t enough to host a big party, but it’s a nice thing, a good thing. After all, the average life of a computer book is 18 months. So to have one that’s still bringing in a few bucks for me after five years is great.

The summary statement also tells me which titles are dead. These are the titles with previous balances that are negative numbers and no revised editions to earn more revenue. Sometimes these titles have ugly negative numbers in the Earnings column, indicating returns. My QuickBooks Pro for Mac book is in this situation. Although it’s the only title covering that software, there simply aren’t enough users interested in buying a book to make the book earn out. So when my editor says the publisher is not going to revise the title, I can look at this royalty statement and understand why. The book is dead.

Want more detail? The summary pages are also a table of contents for the 57 pages that follow them. That’s where I can find information about units sold, subsidiary rights (like translation rights), and where the books were sold: U.S., Canada, Export, etc. To be honest, I don’t look at these pages for every title. Heck, I have enough to do in a day.

What I Learned this Quarter

Looking at the royalty statement is like peering into a crystal ball. I learned that there are certain topics I probably won’t be writing again and other topics I’ll be writing about for years to come. I learned which of my books is doing best for me (still Tiger, after two years!) and which ones I might want to promote a bit more to liven up.

But with 61 pages to review, that’s about all.