I have the CyberTool, which is this big-ass pocket knife made by Victorinox. It has a gazillion different tools, including a screwdriver with switchable heads. I often find it useful for all kinds of things. It's very kewl and useful. For an engineer, like me.
However, when I want to cut open a box or have dinner, I usually leave the CyberTool in my pocket and use a kitchen steak knife.
What does this have to do with Web Design? I'll tell you.
A lot of the work I do involves adapting existing open source projects to integrate into my sites. I seldom use them "as is." I try first to use their customization options ("skins," CSS, etc.). If that won't give me what I need, then I directly edit the base code.
Probably the foremost goal in my mind is USABILITY. Not always accessibility (It depends on the site. Accessibility is not a principal goal for our corporate wiki, but it is for the NPO sites I do). No matter what type of site it is, or who will use it, the site must be USABLE.
Lately, I've been looking at these CMS, Wiki, Gallery systems etc., and shaking my head.
They are truly ambitious and well-designed works. However, they are becoming so beholden to flexibility and adaptability that they are rapidly becoming completely unusable by normal people.
For example, I just chucked aside WebCalendar for iCalendar. WebCalendar is wonderful. It has all kinds of options for customization, user levels, custom headers, multiple formats, etc. Their code validates (a rare thing with CMS code).
But it is a space shuttle cockpit. It is so complex to use that there was NO WAY I could foist that on my users. iCalendar does not have a lot of the features I need, and their code quality is pretty bad, but I can hack the code to give me what I need, and users don't have to worry about the complexity. In fact, it's already done. It took me two days. I estimate a couple more days to refine the administration.
I did the same thing with our wiki. I eschewed a couple of commercial options, as well as MediaWiki for a relatively little-known one that is far simpler to use and customize.
I also adapted Gallery 2 for my personal site, but that is probably the most complex CMS I've ever seen in my life. It was designed by a Google engineer, and is a real masterpiece of engineering. However, it is so complex that I can't recommend it as a solution to many users.
WordPress I like. I adapted that to my site, and it works well. It is a blog system, and doesn't try to be much else. It does blogs very well, and has become a de facto standard for many blogs.
This is not a case of bad engineering or anything like that. It is an issue of excessive complexity at the user level.
I remember when PHP Nuke became so popular. All these sites suddenly popped up with the "French windows" designs, in which the side columns contained dozens of controls and status blocks. I would have to think for several seconds before figuring out where to click or scroll.
I find that user customization is pretty much useless in most cases. For community sites like MySpace (see my comment below) or this site, people invest a great deal, so they are willing to work on customizing their environment. However, for things like store sites and blogs, I find that I have little interest in spending any time tweaking my environment, especially since the one thing I'd like most -removal of ads, is never an option.
Speaking of ads, many sites that carry advertising have gone far overboard. I guess they make money, but they are becoming unusable at quite a pace. I have removed quite a few sites from my bookmarks list lately because they mix their content with their ads so intimately that I can't extract useful information from them any more (a pet peeve of mine is the habit many sites are developing of displaying their ads in the same font and style as their content, and mixing them into the content, so you get confused. I guess the idea is to make you click on the ad by mistake. I don't consider it particularly ethical to deliberately mislead users that way, but that's just me).
I was recently invited to join a group on MySpace by a friend, so I signed up an account.
MySpace is very popular, but I can't believe that people can use that interface. I can't argue with their success, but I don't plan on participating on it in a regular manner. I will not go into a deconstruction of the interface (That would require a book). I am certainly not filling out my profile completely. That information must be a marketer's wet dream.
Usually, the best way to support usability is to present a concise, focused interface. By "concise," I don't necessarily mean "non-complex." I mean presenting only the content that is necessary to meet the mission of the site.
This means that the NUMBER ONE tool to creating a usable site is to have clear mission for that site. There are dozens of books out there that discuss ways to achieve this (use cases, paper prototypes, fictional users, etc.). I know this from rather bitter personal experience. I have participated in creating sites and software with muddy missions.
There's a fairly classic graphic design technique, in which you remove elements of an illustration until the composition breaks, then put back the last element. I do this all the time for CSS design, and I am starting to use it for my basic layouts and designs as well. So far, the response has been very good.
So, I keep my CyberTool with me all the time, and often use it, but it's no substitute for a steak knife.
[edited by: cmarshall at 4:56 pm (utc) on Jan. 20, 2007]