Skip navigation

Monthly Archives: July 2009

Since I have been going after some low hanging fruits in fixing some Python support related issues in NetBeans, strictly over weekends (without the knowledge of my wife who prefers my MacBook Pro being 2000 miles away from me on weekends), I ran into an interesting issue where I had to display the NetBeans font chooser instead of a custom font chooser being used in the code. Unable to find the proper API (perhaps I am dumb), I waded into the NetBeans sources, and found the way out. Blogging about this here to save some poor soul some time when the need arises.

PropertyEditor pe = PropertyEditorManager.findEditor (Font.class);
DialogDescriptor dd = new DialogDescriptor (
    pe.getCustomEditor(),
    "Some Title"  // NOI18N
);

DialogDisplayer.getDefault ().createDialog (dd).setVisible (true);
if (dd.getValue () == DialogDescriptor.OK_OPTION) {
    font = (Font) pe.getValue ();
}

It just boils down to getting a property editor for Font and then wrapping the panel inside a dialog box using the NetBeans DialogDisplayer API.

Advertisements

A minor one today. This dialog box is pretty good, I just don’t like it telling me again and again that it is importing an appliance in it’s title. It’s too much information in the title.

I would suggest keeping "Importing Appliance" as the title and putting the detailed path of the appliance into the content panel of the dialog box. Or atleast do away the repetitive "import" and "appliance" words in the title.

For the past few days, I have been pointing to various GUI bloopers that I have seen. Today’s nugget comes from our own Solaris JDS screen to unlock a display. I am more than a 100% sure that this is a known issue, but I wanted to put the blooper here anyway.

Here’s the screen that is displayed to me for about a second or two when I have typed in my password correctly and pressed Enter. 

When I saw this dialog box for the first time, my first reaction was, oh hell, perhaps the password was incorrect.

Look at this dialog box – there is so much wrong in there. First, the password text box is displayed as is. Now it may be that the text box is disabled, but to my eyes, it does not look so (even if it is, it shouldn’t be there in the first place). Secondly, that poor little label telling us that the login was successful is a pauper on the screen when it should have been the king. And, the dialog box still tells me that the display is locked. Very confusing to me atleast.

I found another possible blooper. This time, it is the case of unclear feedback. It so happens that I wanted to follow CNN dot com live on twitter using Nambu. I got the following dialog box.

Fair enough. But after hitting Follow, I wasn’t told anything. Apparently, the status bar at the bottom did show the status of the action:

Now it can be argued that this feedback is good enough. But I have the following problems with this feedback through the status bar:

  1. It is blending into the background. A green color or any other contrasting color should have made it clear to me. Alternatively, I have seen NetBeans employ a balloon to do similar things. It gives the user enough feedback when the action completed (image below).
  2. The "Done" message hardly conveys anything. What was done? A message like "Successfully following cnndotcomlive" or something similar would have been better.

This nugget comes from Shelfari. I never knew the ‘sjdkasd’ is a valid date. What a joy!

And that ‘Next’ button you see above works. No validation.

I came across another blooper today. A friend of mine wanted to apply for a job at Macy’s and was asked to create an account and then login with that account to apply for the job online. Fair enough. What got her confused was the "@invalidemail" rhetoric in the text. Now, if Macy’s wants one of the applicant’s email or telephone number, there are better ways of achieving it than asking the user to enter the telephone number with an @invalidmail suffix. Some one was lazy while designing this web form, or perhaps someone thought that he/she was super smart in coming up with the @invalidmail suffix idea. This is not a good idea, it’s a bad idea.

I have been reading a book ‘GUI Bloopers’ by Jeff Johnson. They say, you never remain the same after you have read a book, and I wholeheartedly agree. Numerous GUI bloopers, which were in front of me, unnoticed, have all of a sudden, started showing up.

I came across a couple of possible bloopers today in the twitter client – Tweetie. Please note the word – possible – in the last sentence.

Here’s what Tweetie showed me when I started it:

So what is my problem with this dialog box? There is no title in the dialog. Is this a disaster? Not really. I can see the logo of Tweetie in the dialog, so I can associate this dialog with Tweetie, but, pray why break established conventions by having a blank title? Also, some one who might be new to Twitter/Tweetie can be a bit confused about which username and password needs to be entered. Minor issue, but an issue definitely IMO.

Compare that with Nambu, another Twitter client for Mac, which shows a much better interface:

This is so much better.

Another pain point for me is the 140 characters limit in twitter. While numerous debates rage on the positives and negatives of the 140 character limit itself, as a newbie twitter user, I frequently forget that there is a limit. Here’s what Tweetie does to make users like me aware of the limit:

See that limit overflow indication on the top right corner of the window? Well, it so happens that I am frequently writing my twits in a hurry and am used to typing out whatever I have in mind and hitting ‘Enter’. And yours truly missed the overflow indication more often than not. Again, comparing this with Nambu:

Now the limit overflow is crystal clear, isn’t it?

More blooper expeditions to follow. Keep watching this space!