Tewha Links and writings on software development, mostly for iPhone and Mac OS X.


iCal View menu

Here's iCal's View menu.

ical-view-menu

What's so confusing about it? You really need to see how it interacts with the iCal main window to understand. We're going to be focusing on the group starting with "Hide Calendar List."

The iCal main window looks like this:

ical-main-window

The sidebar on the left side of the screen looks simple enough. Now let's look again at the menu. What would you expect Hide Calendar List to do?

Wrong. It does this:

hidden-calendar-list

 

Both the calendar and mini month calendar are hidden. Hiding both makes sense, but calling the command Hide Calendar List doesn't. Go back to the menu, and we see the helpful command "Hide Mini Months." What Mini Months? Oh, the ones that were on the iCal window, but aren't anymore? I wonder what it does?

It does this:

hide-mini-calendar

That's right. Choosing Hide Mini Months showed the mini calendar.

So here's how the menu commands work:

The first command, Show/Hide Calendar List, hides the entire left side bar: The calendar list and whatever is under it.

The second and third commands, Show/Hide Mini Months/Notifications, control what's under the calendar list, but still controlled with the Show/Hide Calendar List command. And they don't actually do what they say they're going to do if the calendar lis is hidden. They're mutually exclusive: Think of them as Under Calendar List: None, Mini Months, or Notifications.

The fourth and fifth items are entirely independent of the first three items.

Granted, coming up with menu commands to control a UI like this is hard. But that's no excuse to throw your hands in the air and settle on this UI.

Two strikes…

Apple's sample code includes an annoying disclaimer at the top of each file. I can understand the need for a disclaimer, but this code takes it to an obnoxious level: every .h file or .m file you open, you can't see any actual code to to the length of the disclaimer.

Strike one is including that disclaimer in every file. If the lawyers can't accept "Please see DISCLAIMER.TXT." in place of 38 lines of bullshit, you have stupid lawyers. Fine, though. I'll just remove it, right?

Luckily, Xcode has a great Find-Replace tool. So we'll use it.

And here's where we hit strike two:

It'd be nice if we could blame this on Xcode. Indeed, it's Xcode's fault that the text is so long. But it's Mac OS X's fault that the sheet goes under the dock rather than truncating before it.

Delete drive

Thoroughly disguisted by the clutter on my desktop, I decided to delete all of it. I selected everything, deselected a few things I wanted to keep, and hit command-delete (the keyboard shortcut for Move to Trash).

Yes, WxFPP_EN is indeed my Windows XP CD, left over from a failed/aborted attempt at installing Boot Camp. And Mac OS X really is asking me if I want to delete it immediately. Clicking Delete caused this error to appear:

Error -61 looks familiar, so I looked it up: wrPermErr. Yes, that's right: the Leopard Finder is actually trying to delete files off the CD.

Okay. Bad enough. But at least it didn't crash, right? I click OK:

After all of that my desktop is still a cluttered mess.

Apple, if Finder stability is one of your goals ur doing it wrong. Hitting command-delete on a volume shouldn't actually try to delete the files form it. This is laughably bad.

A moldy corner in Mac OS X Leopard

Audio MIDI Setup is a pretty moldy corner, really. Click to see it in motion:

Even the question and button names at the end are worded in a way that conflicts with generally accepted Mac standards.

Nice to see that data was put to good use!

About a year ago, I filled out a customer comment card for Red Robin. It gets me some email newsletters, but few enough that it doesn't really bother me. I saw no real increase in spam, so I don't think they sold my email adress to anyone.

The card did ask for an address, which I filled out dutifully. And, of course, this was a Canadian restaraunt. I'm a Canadian citizen. My adress is a Canadian address.

flag.png

So, naturally, Red Robin is now sending me information on a contest available to US citizens only.

Congratulations, Red Robin. That's how easy it is to lose someone's good will. Nothing but nothing says you simply couldn't care less about not abusing your email list than sending out an email like that.

When the best is not recommended.

A lovely quote from the Visual Studio 2005 documentation (found through searching index for /W4):

Level 4 displays all level 3 warnings plus informational warnings, which in most cases can be safely ignored. This option should be used only to provide "lint" level warnings and is not recommended as your usual warning level setting.

Not recommended is actually pretty strong, but I can see why Microsoft might say that. But the very next line goes on:

For a new project, it may be best to use /W4 in all compilations. This will ensure the fewest possible hard-to-find code defects.

So it's recommended, then? Or would recommended be too strong a word?

It seems likely to me that these paragraphs were written by different writers, and whoever made the second change didn't read the first writer's work.

Radio buttons? We use check boxes around here, and we like 'em just fine!

I decided to take Microsoft up on their offer of a free toaster. A few screens in to the installer, I see this:

view1.png

Cool! So I get to click some of these options, right? I click Use recommended settings:

view2.png

That's odd, I muse. That option must be incompatible with the others for some reason. So I turn it off and try the next option, Install definition updates only1.

view3.png

At this point, I turn off the option and try the third option, Ask me later. I know what's going to happen, I just can't quite believe it. Nobody's this stupid, right? Wrong.

view4.png

And there you have it. When Microsoft first chipped the Windows logo in to cave walls, they must have chipped a check box under it.

I feel almost guilty pointing out Microsoft's stupidities. It's a bit like kicking a puppy. A puppy that when you stop kicking it will pee on your carpet, round the corners of your furniture with its teeth, bite your friends and dry hump your leg, but still a puppy.

  1. Who writes these option names, anyway? Terribly complicated! []

Do you want the free toaster, the free toaster or the free toaster?

Microsoft offers a variety of exciting offers through "Windows Genuine Advantage Offers."

wga_offers.png

I'm leaning towards the toaster.

Best quote yet on Leopard's translucent menu bar

Best quote yet on Leopard's translucent menu bar:

If anyone happens to meet the UI designer who thought a transparent menu bar was a good idea, please slap them once for every Leopard user (two million slaps and counting...)

To be fair, some of those two million users probably have hardware that doesn't support the translucent menu bar. Their menu bar is just a really ugly muddy grey.

Come to think of it, slap him for those users too.

Stacks: An unmitigated disaster

Subtitle: The Ugliest Thing You Have Ever Seen in the Mac GUI

I think I can get off my horse now. This says everything I want to on the subject, only much more elegantly. And with, like, pictures and stuff.