Ugh. Ick. Bleah.

I’m getting sick. No, I’ve gotten sick. This bites. Body aches all over, my eyeballs want to explode anytime I’m not looking directly ahead, and my brain has shut down. For some reason, it’s always one of the first things to go when I get ill — thank goodness for built-in spellchecking, the number of typos and fat-finger errors I’m making is just depressing.

On the bright side, one thing I love about working five blocks from home is that I’ve got time on my one-hour lunch break to leave work, hit Subway, grab a sandwich, come home, eat, hop into the shower and soak under hot water for about 20 minutes, then get back dressed and head back into work. That’s probably about the only thing that made the latter half of the day bearable.

Early bed for me, tonight.

Meh.

iTunesMost Wonderful Girl, The” by Lords of Acid from the album Lust (1991, 4:47).

Washington Post article on Blogging and Jobs

About two weeks ago, I spent some time being interviewed by Amy Joyce of the Washington Post about my expulsion from the Microsoft campus for an article she was working on about the potential pitfalls of blogging about one’s job. The article went live today: Free Expression Can Be Costly When Bloggers Bad-Mouth Jobs. Here’s the section where I’m quoted:

Michael Hanscom started his blog, Eclecticism, before 2000, as a way to keep in touch with family and collect things he found on the Internet. A fan of Apple computers, he found himself working at a temporary job with Xerox on the Microsoft campus in Redmond, Wash.

Hanscom said his family teased him that he would burst into flames when he walked onto the Microsoft campus. So one day, when he noticed a pallet of Macs — the same version he just bought for himself — ready to be delivered to Microsoft, he took a picture and posted it. “It struck my sense of humor,” he said.

A few days after Hanscom posted the picture, he said, his Xerox manager called him into an office. The manager had Hanscom’s blog up, and asked if the picture was his. Hanscom said it was, but said it was posted on his own time, on his own computer. According to Hanscom, the manager then said because it was posted on his own space and time, the company couldn’t ask him to take it down, but he could never come to the Microsoft campus again.

“It makes sense, really,” Hanscom said. “I’ve tried since then to look at it from their point of view. I never gave away any secrets, but I was in a position where I saw a lot.”

Quite a few other webloggers were quoted, too. Looks like my fifteen minutes isn’t quite over with yet! :)

(If anyone happens to be finding my site on a Google search after reading the WaPo article, my 15 Minutes category has all the gory details.)

That’s a lot of text

Fun fact for today regarding this weblog: a full export from MovableType of every post and every comment results in a 12.7 Mb text file containing 3,117 posts and 8,178 comments and trackback pings.

Wow.

I now have a WordPress site up and running that has all of my old entries (up to, but not including, this one) that I’m starting to poke around with to see what I think. So far, it’s been an interesting experience. The installation was dead simple. Importing my MovableType archives took some work — the PHP script kept timing out on the 12.7 Mb file, so I ended up having to break it into chunks and import six months at a time. That was likely more of a reflection on my server and the huge amount of data I was feeding it than WordPress itself, though.

I have the Staticize plugin installed, and it does seem to be making a difference: the initial load of any particular page takes a few seconds, but then any subsequent loads are pretty zippy as it can pull from the cached file (as a test, I even have all comments and trackback pings displaying on my posts about losing my position at Microsoft, and the load times are still bearable).

The WordPress interface takes some getting used to after years of familiarity with the MovableType interface. It’s certainly useable, and I like a lot of the options that are available to me, I’m just not quite as fond of the overall user interface (however, part of that might just be my fondness for sans-serif fonts, as the WP UI uses all serif fonts — to my eye, it feels more cluttered). Still, it’s the functionality that’s the key point, and it doesn’t look like I’ll have any worries there.

I’m not putting the WordPress blog live just yet (though, to be honest, if you’re really curious, it shouldn’t take too much guessing to figure out the URL), as I haven’t done anything in the way of customization just yet. At minimum, I want to make sure that my blogroll is set up and most (if not all) of the goodies in my sidebar are active. Diving into the design may end up taking a little longer — right now it’s using the default Kubrick theme, and while I’d prefer to move the current ‘distressed’ look and feel of this site over, I’m going to have a lot of relearning to do as years of familiarity with MovableType tags and design techniques battles with figuring out the WordPress tags and design techniques.

It’s a promising start, though I’ll freely admit that the real test won’t come until I bring the site live and find out just how my server reacts. I don’t know exactly when I’ll do that — part of me wants to just throw it in (sink or swim!), another part of me wants to make sure it’s perfect before I switch over, another part of me is still waffling over moving away from Movable Type, and yet another part of me thinks that I should concentrate on what I need to do to split the existing Movable Type database apart for Dad and Kirsten’s sites.

First steps are being taken, though. We’ll find out what path they lead me on.

iTunesWise Up! Sucker” by Pop Will Eat Itself from the album This is the Day…This is the Hour…This is This! (1989, 3:15).

Grandma’s Memorial

Mom and dad just got back from their trip to Florida for Grandma’s funeral, and dad posted this photo (with more to come, he says).

Grandma's memorial, Ft. Myers, FL

Harold, my father-in-law, died the 29th of December. We went down for about two weeks, and got Arline, my mother-in-law, who was legally blind, all set for life without Harold. We came back to Alaska. On the 28th of January, Arline died. We got back late last night. […] Our downstairs room contains a lot of stuff we need to organize. Arline had lived 93 years and Harold 88.

iTunesShuckin’ the Jive” by Black Happy from the album Peghead (1993, 4:42).

Another day, another Doocing

Another one bites the dust, as they say — this time Mark Jen, formerly of Google.

TDavid has a good wrapup of information on this latest “blogger gets fired” story.

Update: A sure sign that I’m on the tail end of my fifteen minutes of fame: in this CNET article about Mark’s firing, I’m the only blogger mentioned who didn’t get a link. ;) This amused me.

(CNET link via Terrance)

Laurie Anderson: Mach 20

SpermLadies and gentlemen, what you are observing here are magnified examples, or facsimiles, of human sperm. Generation after generation of these tiny creatures have sacrificed themselves in the persistent, often futile attempt to transport the basic male genetic code. But where’s this information coming from?

They have no eyes. No ears. Yet some of them already know that they will be bald. Some of them know that they will have small, crooked teeth. Over half of them will end up as women. Four hundred million living creatures, all knowing precisely the same thing. Carbon copies of each other, in a kamikaze race against the clock.

Now some of you may be surprised to learn that if a sperm were the size of a salmon, it would be swimming its seven inch journey at five hundred miles per hour.

If a sperm were the size of a whale, however, it would be traveling at fifteen thousand miles per hour, or mach 20.

Now imagine, if you will, four hundred million blind and desperate sperm whales departing from the Pacific coast of North America, swimming at fifteen thousand miles per hour, and arriving in Japanese coastal waters in just under forty-five minutes.

How would they be received?

Would they realize that they were carrying information? A message?

Would there be room for so many millions?

Would they know that they had been sent for a purpose?

— Laurie Andersen, ‘Mach 20’, off of United States Live

iTunesMach 20” by Anderson, Laurie from the album United States Live (1984, 2:47).

What about [some other blogging tool]?

After reading my rant about comment spammers, Joel asked me if I’d thought about switching over to another weblogging system. Here’s a (somewhat expanded) copy of what I sent back.

I’ve enjoyed reading your site (and its comments) ever since TypePad… and I bring this up as an honest suggestion. Why not try out WordPress? It’s simple and while it’s not immune to comment spam there are a wealth of plug-ins and options that filter or destroy them quite nicely.

Switching systems is definitely one of the things on the “possible solutions” list (WordPress and ExpressionEngine being the two top contenders). One of the things that’s been keeping me from exploring that is a distinct lack of redirect-fu when it comes to making sure I don’t break my old permalinks. I’ve received one offer of possible assistance with that, though, so it may be less of a hassle than it’s looked in the past. In the best of all possible worlds I’d be able to keep my current permalink scheme, but I’m not sure if that’s possible with the other systems, so if I have to, I’d settle for working redirects.

Part of what keeps me on Movable Type, though, is simple customer loyalty and experience. I’ve been on MT/TypePad for years now, and it’s what I’m most familiar with. Plus, they’ve been very good to me — they even just refunded me the $120 I’d accidentally paid for a year of TypePad that I wouldn’t be using, purely out of the goodness of their heart (I didn’t even ask — they saw my post grumbling about my own absentmindedness and made the offer).

I’m also unsure about how much moving to a PHP-based system (as both WP and EE are) would impact my server. MT’s Perl codebase has high overhead when it’s working on something, but then very low overhead when it’s simply serving static pages. Thanks to that, until the spam attacks started getting this bad, it played very nicely on my system. Since PHP has to process every page as it goes out, that’s more overall processing, and the question becomes whether PHP is resource-friendly enough on my box to be worth the switch. I’d used MT’s new PHP integration to dynamically generate pages for a while (before I decided that I wanted to integrate plugins that didn’t play nicely with the PHP code), and there was a noticeable lag when first requesting a page. More info on this aspect from any current WP or EE users (or even developers) would certainly be appreciated.

No matter what, though, I’m not going to be up and disappearing. I’m frustrated and annoyed by the whole situation (though not as much as I was yesterday), sure…but I’m not that easy to shut up, either. ;)

Oh, one other thing: if I do move to another system, I want to be able to use tags instead of categories. I know that there’s a plugin for this for Expression Engine (John‘s using it), and it appears that there is a hack for WordPress also (though that’s from a few months ago). Something else for me to investigate while I’m deciding which direction to head.

Update: I’ve had one vote against going to a dynamic system such as WP or EE. Phil (who I host) has both a WP and an MT weblog set up on my server. To compare the two, click these links and compare how long they take to load: MT (serving static pages) and WP (serving dynamic pages). It’s a noticeable difference, the MT site pops right up, while you can watch the WP site build the page. Off of that example, at least, I’m thinking sticking with MT and static pages is a good idea.

Update: Whee — I’m still getting comments, they’re just “old-school” e-mail comments. :) This is good. Both indieb0i and Ryan (and Gregor) have let me know about the Staticize plugin for WordPress, which “is a highly advanced caching engine that dynamically and automatically caches pages on your site that need to be cached, when they need to be cached.” Essentially, only the parts of the page that really need to be dynamically generated are, and the rest of the page is static (at least, that’s how I’m reading it). Nice, and puts WP back in the possibilities list. Thanks!

The Al-Can Highway is no more!

At least, according to Google’s nifty new Google Maps page, that’s the story.

No Alcan on Google

Realistically, I’m quite sure that this is simply because Google Maps doesn’t have the Canadian highway system in their database at the moment. Hopefully that’s only a temporary thing, as that is a search that returns good results in both Mapquest and Yahoo! Maps.

Still, it amused me.

Aside from that and the fact that Google Maps doesn’t work in Safari yet (they do say that they’re working on it), I’ve got to say that I’m very impressed. The maps are prettier than the other systems output, you can drag maps around within the interface (I followed the Glenn Highway out of Anchorage all the way out past Palmer just by dragging along), and from what Joel says, they’re more detailed in some respects than the other systems.

Worth playing with.

The Spammers Have Won (for now)

Until I have time to get in and do some rather major work on my webserver, I’m afraid that comments and TrackBacks are turned off. I really don’t like doing this — I like the interaction aspect, both getting into discussions and just knowing that people stop by here from time to time — but the attacks on the server have been too severe and too regular, and I’m tired of battling them.

I’m pretty sure that there have been three major things causing my problems.

  1. My server is just too old and slow to handle the attacks.

    Rather than paying for hosting space somewhere, I run my own webserver out of my apartment. This has quite a few advantages, in that I don’t have to worry about how much disk space I use, there are no bandwidth caps, and it’s allowed me to host websites for friends and family on the same server. However, the downside is that the server itself isn’t terribly powerful by today’s standards — only a single-processor 350Mhz G3.

    Now, really, that’s not that bad of a machine, and for general purposes — that is, serving static pages, which is what I started with years ago — it works wonderfully well. However, when I’m in the midst of getting hit by a spam attack, it just can’t handle the load, and it slows to the point of a virtual crawl. It’s never actually gone down — right now it’s showing a reported uptime of 197 days, 17 hours, and one minute — but there’s so much for it to process that it might as well go down.

    The issue is that comment attacks these days take the form of an automated script, or ‘bot’, that repeatedly and rapidly submits comments to the comment script on a weblog, sometimes hundreds of submissions per minute. While I have anti-spam measures such as MT-Blacklist installed, they still need to look at each submitted comment in order to determine whether it’s spam (and reject it), an actual user-submitted comment (and accept it), or something indeterminate (at which point it’s put into a moderation queue for me to look at).

    When I’m getting flooded with hundreds of comment submissions at a time, though, my server just can’t process the information fast enough to be able to respond, and my server essentially stops responding until it can work its way through everything.

  2. Renaming the comment script is pointless.

    One of the accepted methods of combatting the spam attacks is to rename the script that MT uses to accept and process comments, on the theory that the ‘bots’ that the spammers use then won’t be able to submit anything. This used to work, but now it’s painfully obvious that the spammers have upgraded their bots to parse through the HTML code of a page to find the name of the comment script. At this point, I can rename my comment script, and the attacks start again within a minute or two after I rebuild my site. So much for that idea.

  3. I made a mistake a while back that’s now biting me in the ass.

    The last time I set up my server, I made what in retrospect was obviously a mistake, though I didn’t think about it at the time. Each of the three primary accounts on my server — me, my dad, and Kirsten — use the same MySQL database for their MT data. Because of this, whenever a comment spam attack starts, it doesn’t matter which domain they’re aiming at — as the bot generally attacks by submitting a few comments to one entry ID number, then increments that by one and sends a few more comments, as it steps through entry IDs on the database it will end up hitting entries on every weblog in the database. A single comment attack on any single domain on my box can affect all three domains.

    Okay, yes, in retrospect, that was fairly amazingly dumb on my part. Of course, six months ago the comment spam attacks weren’t anywhere near the level that they are today, so it’s taken a while for this mistake to start showing the consequences. Things like this, however, are a big reason why I only provide hosting services for a few select friends and family, and I make sure they know that there may be occasional issues: as a sysadmin, I’m essentially learning as I go, which isn’t always the safest or most effective way to go about it. Kind of the webmaster’s version of driving by braille.

What I need to do now, then, is break everything down and start over. Luckily, I shouldn’t have to do a full nuke and pave on my server — just the MT systems. I need to do a complete export of all entries and comments for each weblog on the system, nuke the MySQL database that MT is using, then create three separate databases, reinstall MT, and re-import the weblogs. Not a fun process, but I think I should be able to do it fairly transparently, without losing all the various design tweaks and customizations we’ve made to the weblogs. It may result in anywhere from a few hours to a few days of downtime for the sites I host, but I’ll do my best to keep that to a minimum once I start.

Once I’ve done that, I’ll experiment with turning comments back on. I’m not entirely sure how that will go, as the spammers will still be able to attack, but at least at that point they’ll be limited to attacking one domain at a time instead of attacking one and getting two more in the process. This may or may not be enough to keep comments open…we’ll find out when I get to that point.

This has been a rough couple of days, and yesterday I skirted dangerously close to just pulling the plug on my server entirely. I started hosting my own websites back in 1995 because it was fun to do, and the project has grown over the years, always because I enjoyed it, and it’s fun to find all these neat new things that can be done. Installing MovableType, opening up comments to the world, hosting sites for Kirsten, Phil, and my dad — I love the fact that I can do this.

But these spam attacks have been taking all the fun out of it. Each time I see the server get hit and stop responding it gets more and more frustrating. Yesterday I was ready to just completely throw in the towel — at one point, even checking to see if it would be possible to import all my old entries into my LiveJournal account (it isn’t). Thankfully, after a couple hours of Prairie and Phil putting up with my whining and tossing ideas at me over IM, I just figured that even though I don’t like to do it, at this point simply turning off comments until I have a chance to rebuild the database and the MT installation was the best way to go.

So that’s where things stand at the moment. Feedback is still a good thing, so feel free to drop an e-mail my way if there’s something you’d like to toss my direction. Until I get the chance to spend a few hours/days doing maintenance on the box, though, this is how things stand.

iTunesSweet Home Chicago” by Blues Brothers, The from the album Blues Brothers, The (1980, 7:51).