Victory Over Spam Bots (for now…)

I’ve been the victim of a massive spam bot attack for about a month now. Basically, a vast network of “zombie” computers (i.e., computers that have been taken over by viruses, worms, or other bad software) have been hitting my blog trying to posts comments. I tried several courses of action: moving over to WordPress, installing plug-ins for WordPress that supposedly stop spammers, and messing with my htaccess file. Unfortunately, though each of those step helped a bit, the spam bots still got through and I was exceeding my daily CPU limit set by my web hosting company.

More Googling has finally led me to a solution that works. I put the following text in my htaccess file in my www directory. (htacess files apply automatically to subfolders.) I hope this entry can help others who are in my situation overcome their spam bots as well.

#from http://multifinanceit.com/htaccess.txt
#These lines block agents commonly used to harvest URLs and email addresses.
#One of the uses of such agents is to gather URLs for subseqent referral spamming
#by a large number of hosts. Thus, preventing their access may, by itself, decrease
#the amount of referral spam you receive.
RewriteCond %{HTTP_USER_AGENT} ^Microsoft\ URL\ Control.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.0\ .*Win\ 9x\ 4\.90.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Indy\ Library.*$ [NC,OR]

#These lines block bots that use your bandwidth for their own commercial reasons.
RewriteCond %{HTTP_USER_AGENT} ^abot.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^aipbot.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Linkwalker$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*nameprotect.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*TurnitinBot.*$ [NC,OR]

Of note is that the comments that spam bots tried to leave never made it through the content filtering system (either under Movable Type or WordPress). So hitting my blog was really useless for them, yet they still continued to try anyway…

Posted in Uncategorized | Leave a comment

Nation Purim Radio

Purim at Adat Shalom was just spectacular. I participated in this year’s Purim Shpiel, mainly as King Ahasuerus. This role isn’t as large as it sounds — we had an ensemble cast of about 50. Everyone contributed their part and the result was amazing, mainly thanks to our amazing director, Karen.

Since the audience seemed to enjoy the show, I thought all my blog readers (all…3 of them?) might enjoy the Shpiel as well. This year’s theme was National Purim Radio. Click below for excellent parodies of Diane Rehm, Car Talk, This American Life, etc.

Part 1:

Part 2

Posted in Uncategorized | Leave a comment

New Look

I’ve been disappointed with MovableType recently, but the DOS attack by spammers on my blog this past week was the last straw. I added CAPTCHA, but that didn’t keep them away. (I should note that MT was smart enough to quarantine the spam comments so they never showed up.) My hosting company added a blocking mechanism (via my htaccess file), but by that point I had already decided to follow enjanerd‘s lead and move to WordPress. The blog needs some personalizing, but all the tech stuff is done: your rss feed should update seamlessly (right?) and permalinks still point to the right place.

And maybe a nicer blog will entice me to post more. (A guy can dream, right?)

Posted in Uncategorized | 3 Comments

Journalists, Please Learn Basic Math/Policy

Really, WaPo, if your mission is to inform, please stop writing ledes like:

Interest payments on the national debt will quadruple in the next decade and every man, woman and child in the United States will be paying more than $2,500 a year to cover for the nation’s past profligacy, according to figures in President Obama’s new budget plan.

Everyone pays the same $2,500? — huh, I didn’t realize we had a regressive tax system in this country!

Posted in Uncategorized | Leave a comment

Sometimes I Don’t Understand Capitalism

For the first time in years, I looked at how much interest I was making in my Bank of America accounts. It was appallingly minuscule, so I called BoA customer service to upgrade. As we were homing in on the best options for me, the service rep mentioned that I had enough money in my accounts to waive the service fees. This fact seemed backwards to me for several reasons:

  • People with little money in their bank accounts are the least able to afford maintenance fees. Shouldn’t they be more likely to hunt around for the best deal? Thus, shouldn’t BoA provide very good incentives for that segment of the population?
  • Lower-income workers are also more likely not to use a bank at all, which would seem to be another reason banks should court them.
  • With my white collar job, my interest income and fee payments are negligible compared to my monthly paycheck, so when balancing what bank to use, I’m much more likely to factor in non-monetary attributes such as: availability of ATMs, online banking experience/features, etc. Why is BoA specifically courting me with a tiny bit of extra cash?
  • And maybe I’m a bleeding-heart liberal, but the whole concept of squeezing every last dollar out of low-income workers’ bank accounts just seems cruel to me.

Are there social justice-friendly banks out there? I’m thinking along the lines of how progressives avoid sending monthly cell phone bills to GOP-supporting corporations by signing up for Credo Mobile.

Posted in Uncategorized | Leave a comment

‘Twas the Night: 2010 Edition

Off to India, but here’s a parting gift; enjoy!

‘Twas the night before Christmas, when all through la casa
All the creatures were stirring, even stuffed Mufasa
For on vacation in Spain, we were knocked to our knees
By a post from the blog of Breaking News: El País.

Wikileaks was heralding their biggest scoop yet,
It made all the kids here scream, cry, and fret
“Santa Fired!” it blared, in the English edition;
Surely now Assange would be tried and hung for sedition.

The cables were rumors, though they had disclosed
That Santa’s Elf Workshop had just been foreclosed!
But could this reporting be some work of fiction,
How could B of A have proper jurisdiction?

Even so, we worried, “Would our gifts be coming?”
Tried to calm the kids, with lullaby humming.
Yet we needed Santa; the situation was dire.
If the kids woke to no gifts, it’d be our funeral pyre.

When from el camino, came thunderous applause
I put down my cocoa to discover the cause.
We heard from the distance, what sounded to me
Like cries to eight reindeer, but how could this be?

And as the voice drew near, my logic was spent
Since when did St. Nick have a Catalan accent?
Then it hit me: “How awesome!” Like out of a dream:
Santa’s crew was replaced by my favorite team!

“Now Pedro! Now Villa! Onward Dani Alves!
Go Pique! Go Puyol! On Victor Valdes!”
And in Rudolph’s place, in front of them all
Stood Lionel Messi, his foot on the ball.

For once, though, Lionel wasn’t trying to score
He was handing out presents right inside of our door!
Yes, here was team Barca, in their Unicef shirts
Saving Christmas for all: adults, teens, and squirts.

Then Coach Pep appeared, his face covered in soot
“Could it be?!” I exclaimed, “you gave Santa the boot?”
“Hardly” he replied, with his famous wry smile.
“Papers never speak truth, not by a meter nor mile.”

“Word of our records had reached St. Nick’s one good ear:
Thirty-two goals unanswered, six trophies a year.
So he asked for our help and we happ’ly obliged
Though with the condition that we miss just one rhyme.

Now we’ve crisscrossed the globe, hit every spot on the grid.”
Well that sparked a question: “Even Madrid?”
“Indeed, ’tis the season to bury the hatchet.
Fandom won’t deny gifts to Tiny Tim Cratchit.”

Then Pep gathered the team with a blow of his whistle,
And they flew to the next house, as fast as a missile.
But I heard him exclaim, ere he swung left at the tree.
“Feliz Navidades to all, and next year in DC!”

Posted in Uncategorized | Leave a comment

Twas the Night: 2009 Redux

Working on this year’s version before I leave for India (!) … for now, I give you last year’s version:

‘Twas the morn’ before Christmas, and all through the Senate
The whole floor was astir, even both Bennet(t)s
The charts were hung on the easels with big print
With hopes that C-Spanites would not have to squint

The Senators were pressing their blackberrys’ keys
To know if flights home would take off with ease.
And I, a lowly aide, just waited out the clock
Making sure health care remained on the tick-tock

When from the cloakroom there arose such a clatter
Jolted from my stupor, “_Now_ what was the matter?”
The rumors came fast; we were one YES vote shy
Even though each Democrat has promised to vote aye!

And then I remembered; our caucus comprised
Fifty-eight D’s, and–of course!–two other I’s.
And there in the hall were Bernie and Joe
Threatening to ruin the dog/pony show

Liebs wasn’t happy, so what else was new?
But now Sanders refused to give an inch… or two.
Nose to nose they stood, staring each other down
Bernie looked determined; Joe with his usual frown.

But wouldn’t the vote’s timing prevent such a row?
Missing families on Christmas would be a harsh blow
But of course that argument just wouldn’t do
Lieberman’s Jewish, and Sanders is too!

Passage looked hopeless, or so Politico reported
Our wills were depleted; we needed some imported
When who should arrive — the one and only POTUS
His previous absence had not gone without notice

“Obama!,” we shrieked, “Why such a no show?!”
“Sorry,” he replied, “I got stuck in the snow.”
“Now that I’m here, we’ll do progressives proud.
Let’s stick to our guns, force Joe to follow the crowd.”

And so the prez listened; he heard both senators out
Became silent, pensive, and then gave a shout!
“Aha! I have a solution that makes everyone glad
Give Joe what he wants and let Bernie be mad.

Liberals, we know, will never vote NAY,
This bill gives too many people a payday.
Sure the subsidies go to huge corporations,
But they pay for the poors’ needed operations!”

And, Lo, as always, Obama was right,
The progressive wing just couldn’t summon the might
Barack hopped in his limo; we invoked cloture
Though this final vote hardly gave closure

But then from the distance we heard a faint cry
The president was booming his hopeful goodbye
“30 million insured will be such a sight!
Health Care for all, and to all a good night!”

Posted in Uncategorized | Leave a comment

“One In Three Women Vote”

An interesting NYT article from 90 years ago yesterday.

Posted in Uncategorized | Leave a comment

Congress: Pass A Budget!

I know I’m probably expecting too much given today’s Food Safety Bill Debacle, but I have a message for my fellow Democrats on Capitol Hill: Pass A Budget.

There are a plethora of important reasons to pass a budget, but two really stand out:

  1. The next Congress will have a Tea Party-inspired Republican House and Democratic Senate, which are worlds apart ideologically. So drafting a mutually agreeable budget will be extremely difficult (at best). No doubt that the ideological gulf separating the two houses will cause Congress to miss its Fiscal 2012 budget deadline of Oct 1 2011. (Heck, Democrats have large majorities in both chambers and the 2011 budget–if passed–will be signed by the President right before Christmas.) More importantly, the likelihood of a government shutdown is quite high. And even if congressional leaders realize that a government shutdown is wrecking their reputations and decide to have honest negotiations, the easiest way to get the government back on its feet would be a long-term continuing resolution (CR). So the Fiscal 2011 budget might very well set the level of appropriations for two years. We should take advantage of that possibility.
  2. I give Democrats and Obama a lot of credit for passing health care reform, but now they need to fund it. I hope my friends on the Hill realize that the Fiscal 2010 budget doesn’t actually fund any aspect of the reform (as the law had not passed yet). So, passing a CR, going home for the holidays, and leaving the budget mess for the GOP House to handle would pretty much guarantee delayed implementation of the 111th Congress’s signature achievement and hurt those most in need of health care. Not cool.

Congress is poised to pass a temporary CR, funding the Federal Governmet through Dec 18th. So you have 17 days. Get it done.

Posted in Uncategorized | Leave a comment

Thanksgiving Puzzler

Fellow nerds, are you bored each Thanksgiving listening to relatives discussing the newest reality TV shows? If so, here’s a puzzler for you to do while everyone else is watching football. (Hopefully, you have a mathematically-oriented sibling like I do to discuss this with):

Assume a standard Monty Hall setup.

Here’s the twist: The host wants to make the show exciting, so the host will only sometimes reveal a goat the contestant hasn’t picked (the other times the host will reveal what is behind the contestant’s original door, thus ending the game [for better or worse for contestant]). As in the original problem, the host knows what is behind the doors.

Question 1: What strategy must the host use so that if the host decides to open a non-contestant goat door (i.e., if the game proceeds to the second stage) then the contestant is indifferent between (a) staying with their first door and (b) switching to the only remaining door.

Question 2: Given the strategy in Question 1, how often does the contestant win the car?

Question 3: So, just to finish up, if Monty Hall cares about (a) making the contestant indifferent in the second stage, and only after that (b) not giving away cars, and only after that (c) going to the second stage as often as possible, what is Monty’s optimal strategy?

Enjoy and Happy Thanksgiving!

Posted in Uncategorized | Leave a comment