John Gruber wrote a public response to Eric Raymond's articles regarding bad usability/UIs on many open source applications. "Good user interfaces result from long, hard work, by talented developers and designers. The distributed, collaborative nature of open source software works for developer-level software, but works against user-level software. [...] Technical documentation is also hard work, and requires talent to be done well. Writers need paychecks, too" says John. Short commentary follows.
Our Take: This interesting article reminded me why Be, Inc. employeed up to 5 usability/interface engineers at one point for BeIA and BeOS (an operating system known very well for its cohesiveness, speed and ease of use for those who have used it). Be, Inc. was in its heyday much smaller than Red Hat or SuSE.
To my knowledge, Red Hat and Ximian employ one usability engineer each (whose sole job is to bring a better experience to their products). MandrakeSoft has two people part-time (last time I checked). I have never heard of SuSE having anyone (except the respectful efforts of developer Waldo Bastian who has proved 'sensitive' to usability issues).
Independant FOSS projects will also need to be in search of individuals who are knowledgable about UI design, not just corporations. Every piece of GUI application that corresponds to a large scale and widely used software, it should see some "love" from a usability/UI expert. Documentation (end user & project specification) and QA areas of these projects should also see some "love" by people who know how to do these things properly. And developers should just do what they should be doing: architect (the developers who can actually do this properly) and program based on the specifications already layed out and the UI expert's input.
And even if you get some stubborn developers in the FOSS community to accept this line of work (some of them just want their Freedom ;) you will still need to piece the whole thing together. To create a cohesive product, you need to have all the people involved "on the same table" and *architect* things with many other surround projects in mind rather than just their own project. Creating completely independent projects from each other with little or no collaboration with other projects it only leads to duplication, inconsistency, terrible integration with the underlying system and worse performance than you would have if things were thought out more as a "whole" rather than individuals doing their little thing here and there.
All of the FOSS development community (professionals or not) should see their OSS work as a "platform work" and have a vision of where the whole thing is going and a common direction rather than "small time" hobby work. Today, I don't see such a "common vision" on Linux (even FreeBSD beats Linux out on this with the server-oriented vision). Linus Torvalds is a great guy and he has a vision, but he mostly has a vision for his kernel, he hasn't show us that he can "lead" other parts of the *platform*. The platform is what matters, because this is how you build robust products on top. This "leader of the platform" is missing today (and I believe there is a need for it): Havoc Pennington? Maybe, if he one day realizes than being "Free" is only one of the product's features and not the Alpha and the Omega. Miguel de Icaza? Too busy with Mono. Matthias Ettrich? Too low profile.
I have said the following a few times online, but I will say it once more: Once, I asked my husband (ex-Be engineer) why BeOS was always "feeling" so fast. His reply was: "Because the kernel engineer's cube was right next to the app_server engineer's cube".
These engineers would hang out together and spend many hours discussing face to face on how to do things that will end up being fast and stable and flexible (these "many hours" will translate to "days" if these engineers would be around the world and had to use a mailing list -- we usually speak faster than we type ;). The same goes for all the other parts of the system. Apple, Microsoft (to a lesser degree as it is a huge company), Be, Inc. back in the day and even Sun have this great advantage over most open source projects too.
Now, get these XFree guys to work with the Linux/BSD kernel guys, the toolkit guys, the DE guys and even with the Freetype/Fontconfig guys to *architect* things *together* by pushing the envelope and *innovate*. And then we are talking.