20 Feb 2007

Coming back to Tonic's ui.

Some time ago I posted this screenshot.
I saw this dialog (it is modal) often and it really doesn't scare me ;). So let's count: 4 buttons, 3 combo boxes, 2 text fields, 1 password field, 1 check box. 5 areas.

1. Do I have any pros for it? Well, some components are align, somewhat. But suriously. I like that 'Server:' and 'Account:' are aligned. And so are 'Login as guest', 'Register' buttons aligned with text field for handle and password. So are the panels 'Guests' and 'Advanced options' .
2. 'Connect' is the default button - the one user wants to click as quick as possible.

1. Labels after the components. With left-to-right reading it is hard to read what is control for.
2. Horizontally misaligned components through panels. Look at the buttons in 'Guest' panel and controls in 'Advanced options' for example.
3. The vertical space between components is different through the dialog. Ideally it should be consistent through the whole application.
4. Karsten Lentzsch noted that using titled borders is risky - they take the space, take the attention and produce noise. I know they are wildly use, but it doesn't mean they are the way to go in this dialog.
5. Once again I am presented with information that I cannot access - the menus in the back.
6. The fonts are out-of-any OS default. This is Java cross platform Metal look and feel issue though. I hope next iteration of default Java look and feel would look great. It seems strange to me that I liked (and I still do) old and new Metal lafs. I admit it is totally irrational.
7. 'Connect' and 'Cancel' buttons are on the opposite sides of the dialog. Just note that you could easily treat 'Connect' as 'OK' and now you know why this is contra.

Do user really needs this awful lots of options to choose? I think one could easily hide the 'Advanced options'. And omit the register button as well. To not to just whine I'll do my best to create an alternative for this dialog in which I visualize my propositions :). I would have to do it anyway since after this post I cannot put off a redesign of this dialog too long :).

Anyway, if you have thoughts on this dialog or my post comment please. I will update this small analysis if I come to some new observations.

I love Blogger spellchecking.

17 Feb 2007

New features in Tonic in comparison to Jin

I'd like to put to this post all features that make Tonic different from Jin. I'll be updating it when new features come. If you would like to read about my thought on some of the mentioned features you can read posts labeled 'feature'.

In short:
Multiple consoles with multiple types.
Channels in tabs.
Shouts, cshouts in tabs.
Text field easing user from retyping commands.
GUI for adding/removing many channels at once.
Timestamp in Channels Manager consoles (optional).
Tray Icon (optional) with closing without confirmation and move/game end notification.

1. In Tonic you can have multiple consoles.
You can specify the type of each created console and it will be created with editable field that will help to send similar commands to server. For example you can create console for chess shout and have a text field that will save you typing 'cshout' every time you want to chess-shout :).

You can also create console that will receive multiple types of messages. Just choose 'custom' and type in what type you want it to be.

And you can also choose 'Talk with' menu item from context menu in consoles. Of course it works only if you have someone's name highlighted.

2. Tonic has Channels Manager.
First of all it show channels content in tabs. Shouts (both 'shout' and 'it' or '-->'), chess shouts and all other text - tells feedback (like '(told 106 players in channel 106'), finger notes, variables etcetera.

You can remove channel from channels list just by closing the channels tabs or you can use a dialog for adding/removing channel and you can do it with many at once. You can call this dialog by clicking right mouse button over the tab.

You can set up Tonic to append timestamp in front of chat messages in channel tabs.

3. Tray icon.
Tray icon is optional so if your system tray is full of icons you spare it the pleasure of hosting Tonic's one.

Tray icon have context menu which provides user possibilty to close Tonic without confiramtion, you can also reconnect and minimize Tonic (when in MDI mode).

Icon in the system tray/notification area changes when game ends, move is made and so on.

Enjoy Tonic!

to be contiued...

13 Feb 2007

To buggy to not to bug

I just couldn't stand JavaHelp font chooser design not being a bug. I checked Sun bug database looking for a bug concerning it, but I didn't find any so I decided to give it a try and filled a report myself. When I was in the middle of doing it I wondered why there are so many badly designed Java apps. Is this problem really getting the attention it needs to be solve? And is it really that important to have a well ui-wise designed apps? Is it hard to scary user away with bad ui?

Let's look at the context.

1. Programming is hard, but there are hundreds of thousands developers out there and part of the is doing desktop application so at this very moment there are many desktop applications and there will be more.

2. There is a big information sea (and it is not a very clean sea :)) around us and the life keeps us running, we need to get information now and without a hassle so we will avoid situation when this is not possible.

3. Image says more then thousand words.

4. The presentation of data has a role in understanding it.

All of above is really trivial and well known, so why are there so many bad designed ui?

My solution: ask for well designed ui loudly! :)

9 Feb 2007

Something really big ;)

Surely off-tonic, but not for long :).

Ok, so I am evaluating JavaHelp from https://javahelp.dev.java.net/ for using it in Tonic. I was looking through the user guide made with JavaHelp and I like, but the fonts were a little bit too little :) for me so I decided to change them. AndTHAT was shown. My, oh my. I got so surprised by this dialog horrible design that I wanted to check whether this is the latest version of JavaHelp. It appeared to me that the version from Sun's page has the same BUG ;). I am curious if Romain Guy or Chet Haase ever used JavaHelp. Looks like they didn't.

And to not just whine, but to whine more :) I sat for a couple of minutes and crafted a little alter ego of Mr. Jekuil with the fine IntelliJ IDEA gui designer.
I wanted to use the same components as in the JavaHelp font chooser, but I couldn't live with JComboBox for font size choosing so there's the spinner. If you want to take a look at better design font chooser you should watch IDEA gui designer demo and look for "Designing the form" part of presentation or you can go with Java WebStart demo from L2FProd.com.

This post was sponsored by letter H like 'horrible ui design' and G like 'google is you web search friend' ;).

6 Feb 2007

UI analysis part II and logo proposition.

First I'd like to introduce new logo. It is just a proposition if you have any thought about it comment, please.
New Tonic logoThe second part is about second part :) of my Tonic's UI design analysis. This time I'll let you first look at it for a while :), don't hesitate to comment it. When I find time (sigh!) I'll post some thoughts about it.

Tonic is source kibitzed

If you ever wanted to know how many lines of code I change in Tonic in a certain period of time you can now check it here.

I submitted Tonic to www.sourcekibitzer.org not a long ago. I know there is CIA project. I like statistics so maybe I will add Tonic to CIA too... Being watched doesn't always mean something bad. It really shows how open we can be and it motivates authors to make better software. Or at least better commit comments ;).

Lately I've been doing some UI in NetBeans using new layout manager in Java 6 - GroupLayout. My design were far, far away from being complex and doing them in GroupLayout has proven that, but when I wanted to recreate them in GridBagLayout... Well, maybe I just got spoiled?