Category Archives: Usability

My First Day with my Windows Phone 7

As you might understand, I had to buy a Windows Phone 7 for work…

I went to the brand new Microsoft Store in Bellevue and finally got the Samsung Focus. I have to say the store was super crowded (I guess that doesn’t count in a city where most of the people work for Microsoft); and I didn’t know Dave Mattew was there, I am just seeing it now while writing the post. Damn!

So, this a quick post about my first day experience with the phone, both the device and the OS. Please take into account I was already familiar with the Windows 7 Metro design but had never used a real device; and also, that my daily phone is a Google NexusOne.

The Good

  • The Samsung Focus screen is *amazing*, is bright, clear, colorful… is really great.
  • The phone is also incredible light. That’s why I actually picked it in the store. There were other devices which  looked better, but this one was so freaking light.
  • The Windows Phone keyboard input is perfect. Suggestions and input feedback is really great. As far as I can tell it’s much better than the Android and also than the iPad.
  • The panoramic metaphor actually works. The touch is really sensitive and the metro style, when applied correctly is very subtle and useful.
  • Being able to pin more than apps to the desktop (i.e. a particular contact) is kind of cool and useful.

The Bad

  • Application aren’t there yet. This is kind of expected as it’s still a new platform, and also because it brings some new paradigms that developers should understand first.  You can see issues in most applications, either native or third party ones, from GMail integration, to Office Word to the official Twitter client.
  • The People Hub has auto-converted into a messy place, where all the contacts from many different social networks are repeated in a very silly way. Not sure if I did something wrong.
  • The OS seems to keep track forever of the apps you have opened in the past, building an exaggerated long stack. I guess you can press back forever, and it sometimes does some strange jumps… I guess the OS should provide some kind of visual feedback to show when the Back is available and how long the stack is.
  • The first time I turned on the phone, instead of just starting it asks you for many configuration steps. That’s really silly IMO.

The Ugly

  • Not having the ability to change the language as-you-type is a show stopper to me to use in everyday scenarios. I am pretty sure it’s coming in the pipeline but for someone like me, that writes emails in one language and text in other, this is a pain*.
  • I miss my NexusOne track ball for text selection & move the text focus. The track-ball just over performs any other way of navigating the text by touch. Probably the devices with QWERTY keyboard can hide this somehow, but in my Focus, I really miss it.

So, these were my initial feelings with my Windows Phone 7 & Samsung Focus. Will try to get a conclusion when I get back home and could use all its functionality as I have no SIM card here in USA.

[*] I used to have the same problem with my Nexus One, but then Google added that feature in the Frodo release.

NexusOne: Usability and Design Issues (Part I)

Disclaimer: I started to write this post around 5 months ago, but then I stopped blogging😉 Now I am catching up since I started  in

As I explained in a previous post, I moved to Android.  In summary, I am pretty happy with the phone.  However, there are several usability issues & bugs that really called my attention for a phone branded by Google. Most of them are too obvious for a company that has an army of PhD ready to take care of the details… but maybe they were using their 20% to integrate Wave into GMail (</SARCASM>).

Most usability problems are just bugs in the design; if you compare them with implementation bugs, the former passed even more stages in the development process; so, I will list them indifferently. I am not a usability guru, but I have sensibility for the topic and I’ve studied a lot about it in the last years, specially while working in Himalia.

The post became larger than I expected so I separated the content in a few entries.

1. Different Searches
I know, Google is the company behind the phone, but… I don’t need more than one search button in my 4.6 inches screen at any given moment.

The problem starts because any application might include –and they actually do – their custom search button.

Official Twitter App for Android and Nexus One

That’s because Android runs on top of too many different devices so the apps need to cover all of them “. Hehe, how difficult could it be to check whether the device already has a button for that, and if so, hide the app button? You can always hard-code the device configuration in a txt. There is no excuse here for the app builder.

That’s actually a third-party app integration issue, but you can see how newer phones took the lesson about this, so it’s also actually a failure in the design of the core.

2. Out-of-context Searches
When an app is finally integrated into the default search experience, then, you cannot search outside the context.

For example, if you are inside the Contacts app, you cannot start a search in Google, you can only search for a contact. You have to go to the “home”, and do a search from there. That’s crazy.

A good solution for this is to add search spaces. I makes perfect sense to set the in-context search as the default, but it should be relatively easy to fire an out-of-context one from anywhere.

3. Too Many Searches
The default browser’s address bar is actually a search box, but it also opens Google in the homepage (yes, another search box) and finally, you have the physical button in your device, to… well… start a new search. I know you can modify the homepage, and that the address bar actually has two functions but… still… 3 ways of searching it’s too much for a phone’s browser homepage.

Where is the minimalism we’ve learnt from Google? Maybe they should try a different home page or something…

4. The prostitution of the loupe icon.
I can imagine long discussions in the NexusOne team, defining how the search icon should look like: “Should we use the G? No, we will print Google in the back… What about a loupe? We are a search company and don’t use the loupe anywhere why should we use one in our first phone? etc, etc…

They finally picked the loupe icon, and printed it in the device, to be used for search, everywhere.

However, one building away, the Google Maps team were using a slightly modification of the loupe icon, for zooming. It the same icon with ‘+’ character inside, but again…. If you are elevating the search as first class citizen, this is important. I don’t see buttons with apples everywhere in the iPhone. Furthermore, the Maps app also uses another loupe for search (yes the Google Maps app requires a chapter apart).

So, my suggestion for all of this would be to integrate all searches (i.e. you also have to add the “Find in page” feature in the Browser, etc), and offer different “search spaces” in a drop down instead of the voice search button (I will explain why in another point), and start forbidding the use of loupe icons in any app, starting by Mountain View.

What do you think?

Can UX be a Boomerang?

I kept thinking about the Jared’s point of view about another security -vs- user experience trade off.


In this case, Jared stands that you can’t require the same security for a “Magic tricks Forum” and for a “Bank website“. I agree with that. I  really hated when Mingle asked me for an ultra secure password for a trial version I wanted to use in my network. Everyday I wanted to login into the system I had to try several password… Well, at least I was feeling lucky® they decided no to block my account in the process:)


However, I think you can’t put everything in the same bag. He was using this argument to say that applications should specify what was wrong when the login has failed (was it the username or the password?). The usual behavior is a message similar to this one: “Either your username or password is wrong, try again! Did you forget your password? “.


This kind of messages goes against the UX because it’s imprecise. If you are more precise you can help him (and others trying to log in) to solve the problem. But, it’s also true what me and others argued about how we -as users- manage usernames and passwords everyday. To make it short, users have the same passwords and usernames all over web, in different sites. I do that and many people I know do also. Ok, my bank web site password is not the same that the blogger’s one.. but I cannot be sure about other “not-critical” sites. I can’t even remember all the sites I am registered in!!! Can you?


The point is: can you forget security issues if you are designing the “Magic tricks Forum” when you know it is the actual behavior of your users? Lets put it in another way. What happen if some of your user’s account is hacked (sometimes all they need is the username because it’s a valid email), and this information is used to steal more important data of him in other site? Ok, it’s not totally your guilt, but, couldn’t you avoid it? Can you just blame your user because of his uninformed behavior? I don’t think so. How will your user feel about your site? Do you think he will just guilt himself or will your site also pay the penalty? The second one is more probable and for sure your team will look incompetent.


You know, sometimes UX is indirect. You can just try to improve it but you may end provoking a terrible headache for your user in name of it. Although in this case you may share the guilt with your user, if something happens, you can be sure you will pay for it because -as always- bad UX has more publicity


If I were you, I would stay defensive to avoid boomerangs.

ENSO, MIX08, Usernames-vs-UX and Aggregated UX

I downloaded Enso last week and now I can’t live without it. I have to say that I loved it from the website description.

They guys from Humanized were bought by Mozilla and will be working in their Labs. It’s highly probable that you start seeing these kind of things in the next version of the open source browser.


I am happy. They share my vision about how web/desktop software must inter-operate, putting users first. Will browsers start to be a little more semantic? I will take the bet.


If you are a good observer (see the right pane, stupid!), you may have discovered I am going to MIX’08 in Las Vegas. If you are going there, I will be glad to met you to talk about any topic, if you drop me a line. I can’t believe I will see Guy Kawasaki and Steve Ballmer. I just bought two of his books last week. It was a signal:)


I know that the second part of the GMail review is pending. I have already written it (actually, I wrote it with the first part), but I am just waiting to post it with a little surprise😉


I started a discussion in the Jared Spool’s blog. This is a honor for me:)

He responded with another post. What do you think about usernames and the user experience? Can we really improve it?

Do you believe in the global/aggregated user experience concept? Who should care about it?


This is an atypical post.

Bad Changes In The New GMail Version

Google has launched a new version of GMail with some good new features.  However, what really surprised me were the very bad changes in the user interface of the contacts “subsystem”. Google has a very deserved prestige in providing dead simple and very well designed user interfaces. However, I think they couldn’t repeat themselves this time. Luckily I am not the only one this time; users care about usability and as always, problems have more repercussion.


I was not going to post about this, but then I thought it could be a very interesting example to show how the right models/tools can help to avoid this kind of errors. Last but not least, I strongly believe you have to fall into a lot of mistakes in the process of creating a great user interface, but if you use the right tools and you are describing things at the right abstraction level, they become evident, and you can quickly walk through the continuous prototyping process to achieve a successful design.


What’s Wrong With The Contacts Design In The New Version Of GMail ?

The main problem is it has a bad layout. Layouts should be simple and Google knows it more than anybody. Not only simple, they have also to be familiar, recognizable (yes, copy them from other user interfaces). Layouts aren’t an innovation area and simple layouts have been all already invented.


So, What’s Wrong With The GMail Layout?

Well, first of all it has too many areas. An area is the part of the screen where you will present a UI concept. Actually, you should have so many areas as concepts you want to present on screen at the same time. And you don’t want to expose your user with dozen of concepts at the same time, so you don’t want too many areas. In the new version of the contacts subsystem they have 5 areas (just in that part).


However, five areas wouldn’t be a problem is they weren’t so poorly orchestrated. Area orchestration, or Layout Behavior (as I lately redefined it) is the way you assign a hierarchy to the different areas on the screen. The main pattern you should know in this field is called Visual Framework. I will translate it in this way: “Try to keep the area hierarchy always, never mind which concepts are you presenting at each time in each area”. 


The Layout Behavior can be defined using with transitions that are represented as arrows (this is a very natural representation). Each arrow means that the target will be refreshed when any action is fired in the source. Typically you expect that top menus refresh second layer menus, left or right bars refresh the content area and so on. This approach is very interesting because you don’t need to think it in terms of events and other programming-related stuff. Just answer: when an action is fired in one specific area, which area(s) will be refreshed? If you can find a simple and recognizable orchestration for your areas, it will be good enough.


Back to GMail, have you seen this kind of orchestration in some other place?


GMail contacts new GMailLayoutBehavior


Other problem with the chosen transitions are the transition jumps. The one from FirstTopArea to the RightArea is anti-natural because broke the logic sequence. The same happens with the transition from LeftArea to RightArea, but in this case you should add that it provokes a a little inconsistence because there is another transition from LeftArea to CenterArea.


Other good advice to take when possible is to define the transitions targeting contiguous areas, in order to facilitate the focus flow of your user. Why jumping to the other side of the screen?  Users don’t want to guess where to look after clicking something. In this case, the user is forced to jump his focus from the left to the right in one jump. When you press something, the refreshed area should be the one the user is expecting to be, and users don’t expect to move their heads all around like playing Simon in a big wall.


Also, there is a very ironic problem, the very strange behavior in the search box. When you search a contact, a new item is added in the left list (groups and other stuff list), while the results are added in the center list at the same time. Why? What’s the purpose of the left list with two fixed items, all the groups and an intermittent search result item? Why adding that item there? Why just not showing the results as Google taught us in a dead simple way?


Finally, probably the most annoying error is the inconsistence. Consistence is THE fundamental behind all great designed user interfaces. When you press the “New contact” button you are directed to the RightArea, but when you press the “New Group” button (placed just at it side) a popup appears on the top left corner of the screen, while  other popup’s appear centered on the screen. Added up, it provides a baffling experience for the user.


Random isn’t a good friend of user interfaces. Actions presented in the same style and grouped together, are expected to produce the same kind of feedback in the user interface. If they are going to provide different experience they should be separated or presented with a different style (see examples below).

GMailSearch WinXPStartMenu


So, now you may be thinking: ok, user interface guru-wannabe, how would you improve this? But I will answer it the next post, because it is already quite long😉

Usability Cookie – Airplane entertainment system

I get very frustrated using the LAN entertainment system because of a stupid failure in the design of its Navigation Model. I want to share it with you, because little things like this are the ones that make the difference between great and bad experiences. In this case, the difference between entertainment and a post with bad-publicity for the company😉

Interaction with the entertainment system.

I was just looking for some music to help me overtake the 11-hours flight from Los Angeles to Santiago, so I turned on the individual entertainment system I had in front of me. It presented a friendly menu where I selected Audio and then Library. Then it showed an index of categories, and the albums by category at the right pane. As the display wasn’t too big (around 10”) the right pane just presented 6 albums, and you had to use the page controls to explore each category in depth. I selected a Massive Attack album that was in the 13th (of 24) page, so, I had to pass 12 pages…

Suggestion #1: The average category had 10 pages and the only way of exploring them was just with a next/previous page control. A scrollbar was best suited for that case (a user that knows where is going can move faster); other solution could be to add a page index (like the one in the Google result page).

But I couldn’t listen to the music because after my choice I received a “This selection is currently unavailable. Try again later” error message. 

Rule #1: Be proactive; don’t wait for the selection to show the “unavailable” message. If you can, remove (or disable) the unavailable elements before the user have to try them.

After such an imprecise error message I couldn’t realize what the problem was, but anyway I was ready to try with another album. But for my surprise, after the message I had to start from scratch again because I was redirected to the Home screen!!! Why? Is this a kind of penalty for trying to listen to Massive Attack? Well… ok, I made the whole process again and selected the Jack Johnson‘s album In Between Dreams… but I had the same problem again. So, I desisted and continued with the book.

Rule #2: Never redirect your user to the home page unless there is no other choice. Try to conserve the context always.

It this case, the obvious decision is redirecting the user back to the album selection screen remembering the category and the page (that is, doing a good BACK). I didn’t count the clicks I needed to get frustrated but they were surely around 30. In this case, 15 clicks in average each time you want to pick a song added to a intriguingly high response time… seems a little expensive for an application with a so bounded functionality.


Navigation Modes. Above is the suggested, below the current.

From my point of view, the problem that derived the current design of the system is obvious: it is a clear case of a stupidly-use-case-driven-application. I can see the analyst writing the Play Album Use Case:…if I can’t play the album, show error. Then, end“.

Rule #3: Think always in the step after the end of a use case, both in success and failure scenarios.

Actually, this rule is the opportunistic link pattern put in other words. For instance, after you complete the buy process in Amazon, they provide you similar items to continue buying. The opposite is to present a “Thank you for buying in Amazon message” where the only choice for the user is to close the browser, that is what the entertainment system does.


There are many examples out there of stupidly-use-case-driven-applications, one that always surprised me during my university days was the Beadleship’s site where you had to log into the system twice if you wanted to inscribe for two courses… the use case should be something like: the user select Inscriptions from the menu, then enters his user and password, then select the course, end.

Plastic figurine as input

Fisher-Price has launched the Easy Link Internet Launch Pad. The kid can interact with the computer safely by introducing different figurines in a USB hub. For each character a different website is loaded into the browser.


It is another case of reducing the power of a platform for a very focused niche, or the less is more principle.

New user interface for search engines!

I am really tired of listening about “new user interfaces paradigms” when people is just adding tabs to the existing and old paradigm (i.e. Mozilla, Internet Explorer, etc.). But I know, I can still understand the difference between promotion and paradigms…


No Food Here is a “futuristic search engine” that changes the old search engine user interfaces, incorporating (guess what) tabbed searching…


Anyway, adding tabs looks like a good idea also here.

Google Analytics – Usability problems

I think the Google Analytics Team did a very good work with the new version of their toy. However, I have a list of 6 usability problems I have found:

  1. Like most of the ajax applications out there, the back button doesn’t work consistently. For example, it never remember if you have changed the graphic kind. For instance: change the graphic from visits to pageviews, drill down in any other information, go back, the graphic is again set in visits.


  2. The date-range is consistently being lost. When you define a data-range it is lost while you navigate through the different reports. I can’t remember a path to reproduce it, but it has probably to do with the ajax stuff too.


  3. Google commonly doesn’t add scrollbars to their applications and uses just the browser ones. This is right in many situations, but when you are watching a lot of  data in a grid, you need to fix the titles. You can’t guess the columns titles at the bottom of the list. To solve this, they would need to add scrollbars to the grid at the content level.


  4. Most of the graphics looks pretty well, but some of them make no sense. For example, in the content by title section, why are they showing me the total visits in a timeline? What do I need to see there? I don’t know, but something showing me content by title isn’t a bad idea. The same happens in languages, etc. They just inserted the same graphic all over the website, without caring about if it makes sense or not in each specific context.


  5. You can not set the time frame in reverse way. This was the first issue I found. I usually know the last day I want to see and then I start going back in my mind to estimate the starting date: so, I put the last day first. But then, when you click a the new starting date, the final date is removed and you have to start again. It could make sense, but I have still an apply button. So? Why don’t they put the validation there? Came on!


  6. Pie charts are very informative and they use them to show you referral sources, for example. One thing I don’t understand is why are they highlighting the pie chart sections if nothing happens when you click them… This is like “deceptive feedback”. What I want? To navigate, and view in detail that specific pie chart section.


Do you have your owns?

New User Interface for Google Analytics

Google Analytics is now providing a new user interface.



Although it was unveiled yesterday, they will be turning it on for each account (yes, one by one) during the next two months. I loose that lottery so I have to wait to see it in action. I don’t understand the reasons why are they making something like that, but I can imagine the guy behind scenes making some magic tricks by hand😉


Once again, only those who have a lot of cash can afford a complete year just to remake a user interface, real world software developers should add some functionalities in the meanwhile too. The Office Team did the same for two years… Could you estimate the investment of that? 


But this throw light on one of the directions the industry is putting the focus: good user interfaces. It is our argument after all, software developers will need to remake their user interfaces in the following years and someone (guess who?) should provide an easy way to do that, and make their life simpler.


BTW, the demo looks great. I am wondering if they have a public API to interact at a data-level. I don’t know nothing like this for the Desktop, and I think we could integrate it very easily… I will ask the guys from Urchin Software for that and keep you in track.


Get every new post delivered to your Inbox.