Usability for whom?
I've recently run into some discussion about some functionality and some options for site administrators related with a patch I've post to Drupal core. But please, this is not about we are right/they are wrong and that. I just think this subject deserves some further discussion.
So what's Usability?
Wish I could give a good definition from myself, but it's not the case, so better try google for that. I just have a few ideas about the subject:
1. Usability is about users.
2. Usability is about getting the job done.
I mean, we could think of some abstract definition of usability and also about some abstract definition of users. But when it comes to reality you just cannot say whether your web site has good or bad usability whithout knowing at least who are the users -or who you want them to be. And the same aplies also about what are they suppossed to do with your site, that is, which is the job.
About which are the goals of the site, there's about one for each site out there.
But who are the users? Do they know maths or programming? Can they read and write fast? Are they faster with the mouse or with the keyboard? Are they children or grown up? Do they know what HTML means?
So guess you know who are the users, what they can and can't do, so you could know, in theory, which option is better at least for your 'average' users, and is good enough for most of them.
Then problem solved?
Well, if all of the users are supposed to do the same tasks, and they dont learn at all from one visit to the next, that would do.
But in practice, you have first time users, experienced users, you can have content editors, administrators, moderators....
So the problem has no solution?
Yes and no. When building a general purpose CMS system, I think that is Drupal, we can think of users as just average web users -if that exists- and try to have an interface that most people get the most of. That should be good enough.
But if we think a little bit more about that users, we could agree that at least, at the very minimum, a Drupal site is going to have two very different kinds of users with very different profiles: a web site administrator and regular users.
So the first real point -I put it in bold in case you've skipped that long intro ;) - is this one:
1. Usability for regular users is not the same as usability for web site administrators.
I mean, while hiding too many options from users or adding some additional explanation here and there may be good in general for most of them, at least site administrators are suppossed to be much more advanced users who can deal with greater complexity at least when it comes to web interfaces, and are willing to give a try to documentation...
As an example, replacing old links by that nice tabs that are now everywhere may be great for normal users, but are not that good for site admins when they require an additional click every time they want to edit a story from a listings page.
And second point here:
2. We can, and should, empower site administrators to be able to addapt a site for it's intended audience thus improving usability for end users, which is a real goal.
This is, while usability for site administrators is good, there's a higher level goal, which is usability for end users.
So... coming to a conclussion? Maybe.
Mine is this:
Providing more options for site administrators to customize the site can produce better usability for end users That, of course, assuming site admins know what they do, what the site is about, and have an idea of who are the end users... I'd take the risk.
And this small one:
Let's not lower usability for site admins thinking of them as end users
I.e. Several lines of help text under each config field dont help too much the tenth time you visit the settings page... or how many clicks requires to edit settings for a node type in 4.6... or that nice screen where I could configure the workflow settings for all content types at the same time... -These are just examples, and agreed I didn't say a word when it was the time...-
Well, I just wanted to raise this subject, and know what you think about it. Please, let me know. Thanks.