some lessons on usability

after i launched my house concerts site, i sent out emails with customized RSVP links to everyone.

the next day, i got a bug report that RSVPing “no” wasn’t working. well, it was — sort of. the problem was that even if you clicked “no,” you were still expected to enter the number of seats you wanted. the workaround, was, of course, to enter “1” seat and click no. but only one person figured that out. everyone else just gave up, including otherwise technically savvy folks who work for a computer company.

it’s long been known that poor usability is bad for e-commerce — Nielsen’s 2001 study showed a success rate of around 56% for purchases.

what i didn’t realize was just how much this stuff matters.

anyway, the bug is fixed, i email the five people who ran in to it, and three of them have re-visited the web site.

so, once again, usability matters. a lot.

date sorting code

i was making a birthday-tracking application, and wanted to be able to do year-insensitive date sorts. i couldn’t find what I was looking for, so I wrote this:

int personSortByBirthday (NSCalendarDate *d1, NSCalendarDate *d2, void *context) {
	int day1 = [d1 dayOfMonth];
	int day2 = [d2 dayOfMonth];
	int month1 = [d1 monthOfYear];
	int month2 = [d2 monthOfYear];
	
	if (month1 < month2) {
		return NSOrderedAscending;
	} else if (month1 > month2) {
		return NSOrderedDescending;
	} else {
		if (day1 < day2) {
			return NSOrderedAscending;
		} else if (day1 > day2) {
			return NSOrderedDescending;
		} else {
			return NSOrderedSame;
		}
	}       
}

canon lens guide

Adam Tow of COBA posted a good list of Canon lenses and notes Patrick Murphy’s comprehensive list and database.

for my nikon, i have a 50mm/f1.8, a 17-70/f4.5-5.5 and a sigma 70-300/f4-5.6. since i do a lot of concerts, what i really want is a 20-100/f 1.4. but i can’t imagine such a thing existing (or costing less than my camera). for compairson purposes, note the 28mm/f1.4 is $1700; the 35mm/f2 is only $300.

prius plus plus

while i was out last night, two friends IMd me with news of the CalCars plug-in hybrid initiative and the New York Times coverage.

some folks have hacked a prius by adding more batteries, pushing it well over 100 mpg. (Caveat: burning coal to generate electricity isn’t a net win, coseversation wise. Of course, if you get your power via windmills…)

and lastly, smart start outsmarted some dumb thieves.

mathemical proofs for the 21st century

The Economist examines what it means to prove something, and how formal logic and computers can be used to replace traditional mathemtical proofs.

Formal proof is a notion developed in the early part of the 20th century by logicians such as Bertrand Russell and Gottlob Frege, along with mathematicians such as David Hilbert (who can fairly be described as the father of modern mathematics) and Nicolas Bourbaki, the pseudonym of a group of French mathematicians who sought to place all of mathematics on a rigorous footing. This effort was subtle, but its upshot can be described simply. It is to replace, in proofs, standard mathematical reasoning which, in essence, relies on hand-waving arguments (it should be obvious to everyone that B follows from A) with formal logic.