Why no love for multiple/nested remote connections? I really don’t get this one. If you’re using Apple Remote Desktop (or Screen Sharing in Leopard), you can’t remote into a machine that’s running a remote desktop client.
That’s unfortunate, and something Microsoft’ Terminal Services does with no fuss. In fact, it’s specifically designed for it. Connect to a gateway machine (in a DMZ, say), then on to whatever box(es) you need. On the whole, TS is really great, actually; something that’s really pretty damn complicated to get right, that they do excellently. The biggest pisser? ARD costs $400. Maybe they expect administrators to do everything at the command line? Sure, you can, but a slick GUI makes mundane tasks faster and easier. The lack of these tools is, IMO, a huge impediment to OS X making a dent in business/enterprise environments. It’s too bad; I’d love to see something like Microsoft’s System Center Essentials (full disclosure: I worked on it) for Macs.
I read several Apple blogs, and if there’s one consistent theme, it’s badmouthing the user experience of Microsoft products. Generally, I agree with them; there are a lot of problems, depending on the product.
But this post on Edible Apple really pissed me off. The author, by implication, asserts that problems one company had getting a Surface table working is endemic of a universal problem at Microsoft: “It’s a mystery to me why Microsoft still hasn’t learned this lesson.”
Hey, jackass, it’s not a consumer product, nor is it particularly mature. Here’s the comment I wrote, posted here as I fully expect it to get ignored:
Update: it never got posted. Surprise.
“Would it be that hard for Microsoft to create a more straightforward and consistent consumer experience for its entire product line?”
Yes. It’s herding cats taken to an extreme. We’re talking about thousands of people working all around the world. I’m sick of hearing about everything Microsoft makes as if it comes from some single, magic fountain, and if one application or service or whatever is sort of sucky, it reflects on everyone’s work. Apple maintains, what, twenty pieces of software? Microsoft makes hundreds. Complete consistency across a huge and varied product line is absolutely impossible (nor, in fact, entirely desirable), but getting to a point that makes sense for users of related products *is* a priority (In fact, it’s 80% of my job), and nobody ever points out improvements.
Also, since when is Surface a consumer product? You can’t just get a table from Best Buy; My advice to Gordon: Call your fucking sales rep before you whine about it. In fact, he revised the post (http://kinesismomentum.wordpress.com/2009/04/25/wither-our-post/) after being contacted by Microsoft, who agreed his experience wasn’t intentional: “Turns out, in fact, that our experience will most likely be unique, in that all customers should either receive an installation service or two days of training. He directed me to the online Surface “Eco-System Partners” site for additional help, info and community. I thanked him for the call, and we hung up.”
I respectfully request you update your post to reflect that, in fact, the issue isn’t just another instance of Microsoft giving users the short shaft on UX. Full disclosure: I work for them, but neither speak for nor apologize for them.
Once you establish a pattern, stick to it. This one was pointed out by @deeann and @geekosaur, and I had forgotten how awful it really is, I’m so used to it now.
First, Apple decided that the “Save to PDF…” button needed more options, and instead of replacing the command button with a proper drop down menu, they added a glyph to a command button:
I really, really hate it when people break standard controls like this, especially OS vendors in global dialogs (and in this case Apple is as much to blame as the usual offender, Microsoft). Predictability is a key tenent of usability: once a user learns how a control behaves, they expect every similar-looking control they encounter to behave that way. This example is particularly bad, as there is a standard control that does exactly what they want.
Full disclosure: I’ve had occasion recently to re-design a drop-down, but it’s for an extraordinarily specific purpose, we’ve styled it very differently from the standard, and use them in enough places (a sort of global-to-System Center) as to establish a pattern. Still, we all agree it’s a gamble and will be tested before it’s released.
Of course, Apple just made a lazy, arbitrary decision and called it a day, something they do too often for my taste.
That’s not the only problem with this dialog. Look at the arrow to the right of the Printer: drop down:
What do you expect it to do? @geekosaur assumed it was a list of recently used printers. I think that’s an entirely fair assumption. It’s not correct though, as the arrow serves as an expander to reveal more printing options and show a mini-preview:
So why the hell is it next to the drop-down? The proximity creates an implicit tie between the two controls, even though they are not functionally related at all. Here Microsoft gets it right, using a pattern specifically for expanders (the chevron) and often giving it a label like “More options…” I like them a lot; here’s a particularly good example, from the Vista global Save dialog:
These are fairly minor, and fairly easy to figure out, but I really expect more from a global, OS dialog, so it graduates to an EPIC FAIL.
Put on your nostalgia hats. After the spectacular letdown that is the Oregon Trail iPhone game, I decided to figure out how to play the real version I did as a kid. Long story short (too late!), I got a nifty Apple ][ emulator and got it going. I also found a verion of Jeopardy! from 1987 that has one truly great feature: forgiving text entry. As you can see in these examples, it takes into account that a correct answer might take a different format than the database has. My response is on top, the database’s version below in parenthesis:
Does it use a heuristic algorithm? I sort of doubt it. I have a feeling there are just hard-coded variations associated with each response. This flexibility surprised me. I’ve learned from painful experience that these sorts of things— even these days— often take the shortcut of comparing the string entered literally, throwing errors for all manner of “mistakes.” I think the classic modern example is a phone number entry field in a web form. Sometimes it wants (XXX) XXX-XXXX, sometimes XXX-XXX-XXXX, and so on.
The right choice in the phone example is to accept any format and convert it into whatever the data storage system on the backend needs, placing the burden on the computer, not the user. After all, this is what machines do best. Humans, not so much.
The Jeopardy illustration provides great fodder for any developer who balks at building smart input processing mechanisms: If they could do it twenty years ago, on a primitive (by modern standards) system, why can’t it be done now?
Buried options are irritating. Yesterday, I wanted to switch my external editor in iPhoto from Pixelmator to Photoshop, but had to hunt and hunt for the setting. Here’s the relevant options screen:
Totally obvious where to set it, right? Yeah, not so much. See, I don’t want to switch to editing every photo externally, so clearly “Edit photo:” isn’t what I want, given my mental model of my goal is “I need to change the external editor” versus “I need to change if photos are edited internally or externally.”
Too bad “Edit photo:” is only place the external editor is listed, as part of the drop-down:
Of course, by choosing Pixelmator, it sets the option to edit externally, but also pops up the standard Open dialog to locate the application’s binary. Ugh!
Here Apple has done what they (unfortunately) often do: go for simple over flexible, combining two discrete tasks into a single control. It fails both ways: if I want to just switch from internal to external edit, I get a dialog I don’t need and have to dismiss, and if I want to choose another program, but keep my default setting, I have to change that setting back after selecting the new editor. Would it really have killed them to add another line to the dialog with “External editor:,” a label for the current one, and a “Choose…” button? Nope. Sure, it would have added to the weight of the dialog, but it would have also saved me time in a) not having to remember the wacky, custom behavior of the control, which since seldom used is easy to forget, and saved me an extra step when I need to make a change.
I’ll admit I’ve designed stuff like this before, thinking “Hey, look how clever; I combined related tasks and eliminated a control. Yay!” But you know what happens every time I put something like this in front of users? They don’t get it, and rightly so. They’re not in on my cleverness, which came from , frankly, overthinking. They just want to get their task accomplished. We often forget that when a user sees a piece of UI for the first time, they’re not regarding it the same way we do in a design review, so even (to designers) too-long and too-dense dialogs can be successful, if they get the user from A to B as quickly as possible*. Start doing real user testing, Apple, and you’ll have fewer irritating fails like this one.
*=In fact, I just designed something like this last week. It’s atrociously cluttered, but it’s totally clear what the (complex) task is, and how to accomplish it. We’ll see if users agree!
Your faithful correspondent, J.D. Welch, has been a professional print, web & UI designer for ten years. Starting with PageMaker version 3 in the early nineties, he has worked in media ranging from student newspapers to sprawling desktop applications to magazine ads to websites for nonprofits.