Loud ramblings of a Software Artisan

Friday 3 July 2009

Half a decade

Half a decade ago I landed in Canada. Not sure what happened since, but that's surely 5 years.

A real paper cut

AbiWord had a long lasting usability issue: pressing the insert key caused to toggle the overwrite mode on and off. When doing so we provided two different feedback to the user:

  • a display in the status that switch from "INS" to "OVR"
  • the caret (insert point) switch to red.

This lead to different kind of complaints:

  • "When I type, the text to the right is replaced"
  • "Why is the insert point red? What did I do?"

See bug 3641

This reveal two problems. The first one is that the user didn't realise something happened. I hit a random key (ie he didn't realise which one) and something happened. The second the user noticed the caret changed colour, but still didn't know why.

I had a few ideas in mind.

  • Change the feedback, and there are a few options for that: change the caret shape (colour is never enough), change the status bar message, any other kind of notification
  • Do something for the key binding: popup a dialog, use clippy, play a music just make it disabled by default.

How I did implement it:

  • For now I changed the status bar message to be more readable. INS and OVR are just confusing obscure and an anachronism inherited from the AbiWord first step over 11 years ago mostly in trying to clone MS-Word with some of its atrocities. Now it is in plain $LANG (English here, but it is / will be localised, I hope).
  • I added a UI to enable the toggle. We had that option already in place, it was just on by default, not bound to any UI. I'm not a big fan of adding options, but that's just the best way to do it for now.

What can be done in the future?

  • Change the caret shape when in overwrite mode. I didn't want to do it that late in the release cycle has it seems to have been source of problems. Also it need to be well thought too as we also deal with bi-directional writing.

But that was a real paper cut for AbiWord. Not the only one, just one of them, and it was not that hard to fix. For the sake of it, I did it watching the BSG mini-series for the 3rd time.