Monthly Archives: June 2009

Musing on Mac Keyboards

I’m at a one-week contract this week, and the client uses only Macs. So I’m using an unfamiliar Mac keyboard — the kind with the transparent plastic casing, and the really stiff keys (by my standards, anyway).
I am starting to get used to the propeller key already, and getting sort of used to using Meta-K instead [...]

Would Shlemiel the Painter Optimize Prematurely?

I don’t want to optimize this code prematurely. And “while you’re still writing it” is probably premature. On the other hand, totally ignoring algorithmic complexity is a sure route to a Shlemiel the Painter’s algorithm.
Do I really want to just write the whole thing, and then start profiling it to see where the hot spots [...]

Launching SSHblock

My latest software project is now available… where “latest” means “the latest thing I’ve launched, even if I actually wrote it over a year ago.”
The story is simple: I was tired of seeing “failed password” messages from sshd cluttering up my logs. I was also annoyed at the constant flow of dictionary attacks, even if [...]

Cruel Rollover Trickery

I found an interesting UI problem today, on a site that I will be kind enough not to actually link to. Instead, I’ll just reproduce the general concept and problem here:

alpha

beta

gamma

delta

The links all just link straight to the nav bar itself, so if you scroll your browser view so that the list isn’t right at [...]

Don’t Waste My Time With Email Confirmation Fields

I just ran into yet another form on a web page that looked like this:

First Name

Last Name

Email Address

Confirm Email Address

Address Line 1

… and so on

These things drive me nuts. Once I’ve typed my email address in the first time, I just type Shift-Home to highlight the entire field, Ctrl-C to copy, then tab to the [...]