~ ui ~

23
Jan
2008

Quick thoughts on iPhone UI changes

Webclips? Meh.

UI for editing homepage — the jiggling icons on represent.. what, exactly? Does this really feel natural to anyone? Is the idea that they needed to have some way to represent “edit mode” without occupying screen real estate?

Moving the “+” button on Safari down to the bottom toolbar is a nice touch — it lets you add bookmarks without scrolling to the top of the page. It would have been even nicer if they allowed you to access the URL bar without scrolling. (I sometimes find myself on webpages with hundreds of comments on them. Scrolling up to the top to access the URL bar is AWWWFFFUUUULLLL!)

The new location feature for maps is awesome.

19
Oct
2007

Even Apple sometimes screws up UI

Based on yesterday’s episode, I decided to try Buzzword. In order to do that, I needed to install the latest Flash Player.

The installation failed with the cryptic message “The file flashplayer.xpt could not be written.” This message could have been more helpful, but that’s really Adobe’s fault, not Apple’s.

I tracked down the problem to the fact that Firefox was installed using the “skuwamoto” account. Meanwhile, I was trying to install Flash Player using the “household” account.

So I decided to change the owner of Firefox to “household”. Easy, right? Guess again. Changing the owner of an application turns out to be kind of difficult.

~

I started by changing the owner of the file using the info dialog like so:

Info dialog for Firefox

The install still failed. Take 30 seconds and try to guess why.

Ok. Being a software developer, I knew that applications were really “packages” which are a special kind of Unix folder. If you do a “show package contents”, you find that the Firefox package only contains one folder:

Firefox package contents

And after doing a “get info” on the folder, I found that the package contents still had “skuwamoto” as the owner. ARRGGGHHH!!!

Permissions for package contents

Why on earth would you want to set the owner of an application without setting the owner of the enclosed folders?? Also note that the original info dialog had no option to “Apply to enclosed items”, so even if you knew that this was something to watch out for, there is no way to fix this without manually opening the package and inspecting the contents.

I mean… I had trouble figuring out what was going on, and I write software for a living.

5
Feb
2007

One of the nicests Flex apps so far

I’ve been poking around at a new photo application called picnik and I have to say that it is really, really, cool. It’s beautiful, fast, and useful. It feels intuitive. It doesn’t clutter your interface or use gratuitous animation. And using it gives you a feeling of joy.

What I love about this application is that it opens your mind to what a Flex application can look like. It looks deceptively simple, but there are some interesting UI thoughts behind this app. One innovation is that the navigation area serves double duty as an editing bar, saving screen real estate. Another is that they have really paid attention to how you can get your work done without losing data. If you leave the app and come back, you will end up in the same state, editing the same document. If you go into “creative tools” mode, you get multiple steps of undo.

I love seeing this kind of experimentation with Flex UI. Remember that HTML became what it is today after fifteen years of innovation. Flex 2 has been out for less than a year. These are still the early days. Those of us in the Flex community don’t yet know what this technology is capable of.

5
May
2006

Usability is sometimes subtle (Fitts’ law, etc.)

I’ve always been interested in usability, and one of the fun things about Flex is that you can tweak and tweak your UI until you’ve satisfied your inner UI designer.

So I was playing around with the sliding drawer components recently, and it reminded me of two things: (1) Sometimes, good usability design is so subtle than you don’t notice it until it goes wrong, and (2) Fitts’ law is real, even though I’d previously dismissed it as a bit silly.

More »

15
Feb
2006

MXML text completion control v. 0.5 (aka down with combo boxes!)

I’ve always been frustrated by the way HTML applications use pull down menus. How many times have you had to pick a country out of a huge pull down menu? Do you use the mouse to scroll down to the country? What about using the keyboard? You have to keep hitting the same key over and over. Neither approach is easy.

Meanwhile, text fields that offer completion hints are starting to become standard for Flex and AJAX applications. Typicaly, these are used to let you quickly pick things that you’ve already typed into the box. They are not used for picking, say, a country from a list of countries.

I believe text input fields that offer hints for possible completions should be used instead of combo boxes 95% of the time. Down with combo boxes!

1) When you want to use the mouse, it is just as simple.
2) When you want to use the keyboard, it gives you better feedback on what you have typed already.
3) It gives you an obvious affordance to “start over” when you’ve made a typo.
4) It gives you more immediate feedback.

Here is a relatively simple version of a text completion control for MXML. Unlike most versions of this type of control, this is also optimized for the above case: picking from a list of predefined strings.

[Sample removed. Please download the new version instead]

When you want to pick from a list of predefined strings, just supply the list of all strings as the dataProvider of the control (just like how ComboBox works), and set the “mustPick” flag to true.

Let me know what you think. Are there bugs? Do you think the heuristics are wrong? Is this a good idea in general?

P.S. I’ve also had to include some other random classes as part of this. I plan on officially distributing these classes and other classes once they are more baked.