Thursday December 17, 2009
bragging with none-features
caring about details - part seven.
in previous parts, I often wrote about features, that are so small, that they appear only in the changefile of smaller releases. This time, its about things you hardly ever read in about in release notes. Nonetheless they play a big part in the experience, using that program. I have to apologize, because user experience is another overused marketing term, but it decribes what I mean very well so don't mind the hype.
Let's start with icons. Because most GUI elements are common, individually crafted icons really give your app a face. Friendly, unobtrusive, understanable, distinguishable icons that integrate well with all operating systems the app can run under, bring much more joy to using your app. Our designer Jens Neuwerk has an eye on all these things and helped Kephra greatly from the earliest releases on. Now that Kephra gets more complex and the number of icons rises, we like to indicate with certain shapes and colors certain meanings, to get an even clearer communication with the use.
Another alleged none-feature is the main menu. We see it as an thematically sorted overview of nearly all functions. So you can find something needed fast. Therefore we refactor it frequently. We also add to each menu item a short help text, that appears in the statusbar while this menu item is highlighted. Many of this tooltips are obvious but new user have comfortable way of learning and it might even save for the advenced user a search in the documentation. Frankly I don't understand why not any of my other installed editors provides that too. Allright padre is here an exception too, but only few menu item hat actually a tooltip and much less were translated.
I think I once saw a tshirt with the text: "every feature i can't turn off is a bug." Humor lives from exaggeration but a switch to turn off a feature is an often underestimated feature which very seldom pops up in advertising. Not getting into your way can also have graphical expression, like in a semi transparent search dialog, that never can hide what you're looking for.
It is also not the amount of feature you have, but how well crafted and and fine tuned there are.
The ~300 Perl coreops do more then the 3000+ in PHP. It can be a virtue to have less feature in an app too, because it says nothing about the service it provides to the user. Kephra 0.4.1 introduced folding, 0.4.2 enriched and finetuned it and with 0.4.3 we will change there again something. sibling fold will be replaced by a more useful level fold. How we do with less folding ops more, I already written here previously.
Consistency of the whole UI and op-behaviour is also such a "none-feature". That means also that we change something when we absolutely have to. Its also the advantage of the long developement cycle, that feature can mature. even if the testversion 0.4.4, which will introduce the plugin API will change the folding again. The normal user that might switch from stable release 0.4. to 0.5 will find a new but mature feature that most propably don't have to change in the next time.
thank you for reading