OK, this is how John Gruber makes $1750 a week on Daring Fireball

I’ve been reading Daring Fireball for a while now (long enough to have noticed and be relieved at the eventual removal of the questionable tagline, “Gay for Macs”), and I’ve enjoyed John Gruber’s pithy insights and diligent distillation of the daily deluge of Mac (and other stuff he’s, apparently, “gay for”) related news into a single useful stream of relevant information.

I’ve also been reading it long enough to know that its primary source of revenue is via a single weekly sponsorship, which culminates in a post touting the greatness of whatever it is you’re promoting via the sponsorship, and a link in his sponsorship archive. And for this he charges $1750 a week. That works out to $91,000 a year. Just for hawking someone else’s wares once a week. Not bad work if you can get it. But how can you get it? Well certainly not by describing your own writing as “blather” and then justifying that description by indiscriminately posting whatever prose crawled out of the dank, cobwebbed recesses of your brain. Trust me, I know.

I get it though. His insights are often brilliant. Case in point, today’s dismantling of my dreams of Flash for the iPhone. OK, I haven’t really dreamed of it. It would be nice, I suppose, but it’s been clear for a while that Apple had reasons beyond their spurious claims of poor performance for keeping Flash off the iPhone.

If you doubt that assessment, please do yourself a favor. Read Daring Fireball and then shut the hell up. I will now heed my own advice.

What am I missing?

Let’s see. Something’s just not quite right. What am I missing?

It’s a never-ending quest to design the perfect website. Especially when the definition of “perfect” keeps changing. And when I have other things I should be doing than screwing around with my own site. But there you go. So as I explore the sites of people whose ideas and skills I admire, I often note things that I’m supposed to have on my site but don’t. What are those things right now?

There’s the paperclip:

Yeah, the whole “my website is really my desk” metaphor just doesn’t quite work with my aesthetic (such as it is), and besides I did a paperclip on an early iteration of a client’s site recently and it ended up being nixed. (Probably a good decision.)

Oh and there’s the giant pullquote in Georgia font:

OK now it’s starting to look like I’m just picking on Merlin. But really I’m just jealous. I wish I could get away with being named “Merlin.” (And be interesting and/or funny.)

I need lots of swirly doodads in retina-scorching colors, in a late ’60s psychedelic rock album and/or Camus paperback cover art style:

(In case you think this design technique is new, I own a paperback edition of Shakespeare’s The Tempest, which I believe dates back to the early 1970s, with a hand-drawn cover illustration to prove my point.)

But to be honest I’m just not good enough with Illustrator to pull something like that off (and my pen-holding muscles have atrophied after a decade plus of extensive computer use, so freehand is strictly out of the question).

Eventually it’ll come to me. In the meantime I’ll just keep doing my own thing. Yet another site redesign may be on its way sometime soon!

New WordPress plugin: RegisTrap

<em>Regis</em> Trap? Not quite.

Regis Trap? Not quite.

As I have trumpeted from the hilltops on many an occasion, I have happily been using WordPress to power this site going on two years now.

Mostly happily, anyway. There are a few things that don’t sit right with me, most prominently the persistence of spambot registrations, with little (good) help so far from the plugin development community.

What are spambot registrations, you ask? Well, blogs tend to have two doors that are open to spambots: comment forms and registration forms. Comment forms are certainly more common (since just about every blog accepts comments but most probably do not accept new user registrations), and much has been done to deal with the problem of comment spam. Most notably there is WordPress founder Matt Mullenweg’s own excellent comment spam blocking plugin, Akismet. But no comparable plugin exists for the WordPress registration form, and despite many requests from the community, Akismet has not yet been adapted for this purpose. Probably since registration spam is so far only a nuisance (albeit a potentially large one for the site administrator), it has not gotten the same kind of attention.

I did manage to find a few plugins to block registration spam, but most were half-baked, and the one I did end up using for a while, which clearly has been given a lot of attention by its developer, just seemed to be overkill to me. And while it did work to prevent spam registrations for the month or so that I used it, it also prevented my legitimate, registered users from logging in!

So a few days ago I turned it off, and within hours I was receiving spam registrations again. That’s when I decided to build my own spambot registration blocking plugin for WordPress: RegisTrap. The focus is on absolute simplicity: there are no visible changes to the registration form for users, and there’s no configuration for the site admin… just upload it, activate it, and you’re done.

I’ll admit mine is probably half-baked as well, but it’s only at version 0.3 so far. I may eventually need to add an administrative tool to allow the site owner to make changes if bots start to adapt to the default settings — I don’t really know how smart bots are. But I do know that I’ve had RegisTrap running on my own site for a couple of days now, definitely long enough to be able to determine whether or not it’s working, and since I installed it there has not been a single spambot registration on my site.

If you run a WordPress site, give RegisTrap a try!

Putting my money where my mouth is. OK, not money, but code. And not mouth, but… typed words.

On my Tools page, I tout my use of jQuery, which is true (I do use it), but up to now I wasn’t actually using it on my own site. Like the unkempt barber, I was always too busy cutting everyone else’s hair and not my own. And by hair I mean websites. And by cutting I mean building. So, sort of the opposite of cutting. But (as usual) I digress.

Before, the Web 2.0-ish, AJAX-ified, buzzword*-izationalized features of my site were kind of a hodgepodge of built-in WordPress features, homebrewed JavaScript and partially-implemented and or modified plug-ins.

Now I’m trying to streamline and consolidate it all on jQuery and, when applicable, jQuery-based WordPress plugins, dropping the last vestiges of Scriptaculous and prototype.js (oh how they’ve served me well). To that end, I’ve changed my navigation menus from my own quick-and-dirty style to something jQuery-based and unnecessarily showy. (I may drop the sliding animation once it starts to annoy me, which will be in about 14 minutes.)

I’ve also finally addressed my annoyance with the less-than-amazing new gallery feature in WordPress 2.5. Granted, it’s way better than what I was using before, but I really don’t like how clicking a thumbnail loads another blog page that just contains the larger version of the photo, with the photo’s filename as the title. Yuck. But I found a nice jQuery-based lightbox plug-in that does exactly what I wanted. Now anywhere on my site where I’ve got a link directly to an image, that image loads in a lightbox layer instead of redirecting to another page or just a blank window. (And I didn’t even have to add a bunch of rel="lightbox" attributes to my old code like before! [And even better, I didn’t have to take out the ones I had already added!!!!])

So… well, you are either a web designer/developer, in which case you are ever-so-slightly interested, or you’re not, and you’re not. But I am, and I am, and I am very pleased with the results so far!

And the last thing I have to say is, given my inclination to talk in circles tonight solely to amuse myself, it’s probably a good idea that I decided to spend the evening tinkering with my own site rather than working on a client’s project!

* I just love how the page I linked to notes that “This page may not work with Microsoft Internet Explorer 3.xx.” Only on a page whose URL contains both .edu and a tilde. I just installed Multiple IE in my new copy of Windows last night, so maybe I should fire up IE 3.1 and see if he’s right.

So who’s the closet Opera lover at Apple anyway?

No, I’m not talking about fat ladies singing, I’m talking about the most marginal web browser that somehow manages to keep hanging on. I guess it has a niche with certain non-traditional devices. (It’s the web browser on the Wii for instance.) But I don’t know anyone who has ever used it regularly on a computer, and I also don’t know anyone who still has it installed, just as a curiosity (or even more justifiably, for testing purposes).

Yet, someone at Apple must love Opera. I just got a new MacBook and I’m presently going through the ritual of tweaking settings so, for instance, all of the web-type files (.html, .php, .js, .css, etc. and no that last one isn’t a filename extension) open in my text editor of choice — which at present is TextWrangler, the free version of BBEdit. I’ve used BBEdit for years when my employers were buying it for me, but now that I’m on my own, I took a careful look at the feature set comparison chart between the two, realized that I rarely, if ever, used any of the features that BBEdit had but TextWrangler didn’t, and decided that it was ridiculous to pay $125 for features I don’t use, when I could get the ones I do use for free. So there you have it.

All of which has nothing to do with the reason I’m writing this today. My point is, as I was going about the business of telling Mac OS X to use TextWrangler for these file types, instead of opening .html files in Safari, .php files in Dreamweaver (which I only have because it came with CS3), and .js and .css files in Dashcode, I noticed in the list of possible applications not one but two versions of Opera. Neither of which (I verified) is installed on my Mac. So what the hell are they doing in the list? For one of the file types, the only options it offered were the two Opera versions plus TextWrangler. WTF?