Recently I decided to purchase a headset to allow me to be heard more clearly
when using Skype. Given that I’m also a casual gamer (PS3, primarily), I
figured a headset that would also be compatible with the Playstation 3 would be
ideal.
After looking around (at length) at the options, I decided to go with Sony’s
Wireless Stereo Headset, which is produced specifically for the PS3. I
wasn’t sure if it was going to be Linux-compatible or not, but now, after
having used it for a while, I can say with confidence that it is.
While I’m no longer as much of a purist as I used to be, whenever I’m tasked
with writing HTML, I usually go to great lengths to make sure that it is valid.
For academic reasons beyond the scope of this artcle, my preferred DOCTYPE is
still HTML 4.01 Transitional, and I almost always code - and validate my code -
to that standard.
Having been doing a lot of Wordpress work recently, however, I’ve discovered an
annoying Wordpress quirk that can make it difficult to produce valid HTML 4.01
Transitional code: the wp_head() method outputs markup formatted for
XHTML, and thus, its output will register as invalid when validated against the
HTML 4.01 Transitional DOCTYPE.
As a programmer who works remotely from home, part of my job is to produce weekly reports detailing what I have accomplished each week. Having found that attempting to write such a list from memory on a Friday is futile, I developed a tool to generate these reports automatically from my git commit logs.
The script (written in Ruby) is configured by specifying a hash of project names and git repository locations.
Read More
Affiliate marketers will from time to time have to process what’s called an
“MD5 suppression list”. In brief, an MD5 suppression list is a list of
email addresses which a marketer must remove from her mailing lists, in order
to comply with the CAN SPAM Act of 2003, and respect the rights of
individuals to opt-out of email marketing campaigns.
An MD5 suppression list is simply a file containing a long list of MD5
hashes of unsubscribers' email addresses, the hashing being a security
measure designed to prevent unscrupulous marketers from using suppression lists
themselves as sources for obtaining more email addresses to use in email
marketing campaigns.
To use a suppression list, an email marketer must compare each hash in the
suppression list against an MD5 hash of each contact in her mailing lists. A
matched pair of MD5 hashes indicates that an email address has been found in
the suppression list, and thus must be removed from the marketer’s email
lists. (The mechanic here, obviously, is similar to how user passwords are
hashed before being stored in a database.)
Recently, at work, I had to process a 2 gigabyte suppression list (of about 62
million rows) from Groupon. To my surprise, I didn’t find any readily available
tools to do this, and thus, rolled my own.
Recently, some of my company’s WordPress sites have become so popular that I
chose to migrate them onto a multiple-webserver deployment system in order to
keep up with the traffic. I encountered some interesting challenges while
setting this up, so I figured I’d document them here.