
As I told in a previous post, I came with the idea of a panel about design in the FOSS world at the upcoming Libre Graphics Meeting but then chickened-out and resumed to photography stuff, still the panel will happen anyway. I think is a good idea to write-down my thoughts on the matter, since the outcome of the panel is going to be a direct opposite of what I envisioned (that's what I expect, giving the panelists).
So, what's the problems? while proper Free and Open Source Software happens in the bazaar, traditionally design is done the opposite way, in the cathedral, an unavoidable conflict. On top of that, there is also the problem of the designers being primadonas, considering their work dark magic, voodoo, incomprehensive by mere mortals. It doesn't help a lot of volunteer developers participating in communities have big egos too, as they are doing the work for free, so they expect at least that.
I am not a designer (some people call me so, thinking is flattering, but is not the case), I do graphics and photography and I am not exactly a developer either (my amount of coding these days is minimal), which is a different matter, so let me say it straight: designers are poisonous for a FOSS project. And if they are on the payroll of a company company sponsoring the project, that is the kiss of death. Look around, all you favorite FOSS apps, once they start being "designed" they suffer a kind of inverted Midas touch.
There is no hope? No way to have a polished FOSS product? There are examples of nice piece of software in the FOSS world you will say... And this is right, is possible, the key is not to have the development driven by designers and avoid your community project transforming in a blackbox, where feedback in unwelcomed, only patting on the back is accepted and the style of work resembling the corporate structure.
I said I'm no designer, but I will use design tools to illustrate my point: when one design a software, he creates a number of personas, fictitious individuals fitting various use cases and then the software is optimized to fulfil use-scenarios around those personas. Based on my long time spent on multiple FOSS communities, I will make my own list of "designer personas" you can find in the FOSS world:
- The kid who got a bit of fame for drawing a set of pretty icons for a widely-used communication tool. He then goes to believe he has design skills and start making usage assumption for interface design for an application. He lacks the life experience and he is only an occasional user of the app, his assumptions are flawed. But he think of himself as a star.;
- The designer who is employed by a large company for various tasks. He makes pretty graphics and is generally a nice person, doing volunteering for various offline communities for such. But he has a background in the corporate and proprietary world and does not understand the mechanics of a FLOSS communities. Tries to interact with the community in the proprietary ways he knows;
- The developer suffering badly of the NIH syndrome who rewrite every piece of software because he think he's smarter. He got known for uselessly rewriting a basic tool, then he gets employed by a major company to rewrite an important tool, which not even now has feature parity with the old version, then he leads the wrecking of a desktop system used by millions of people. He thinks reading a book makes him a designer;
- The leader of a design community, he got in the place saying the right community things, have a good position inside the sponsoring company and the needed relations. The community is happy with the choice, having the "right" person in the "right" place. Later, when he get the corporate position of overseeing the community, he turn his back to the community, acting mainly for his own agenda and job security;
- The designer from a corporation with a hybrid business model: they release a "lite" version for free and a "full" package commercially. The designer has to polish only the commercial version, while making sure the Free version is rough and unfriendly;
- The developer who says "to hell with UNIX traditions, Windows do this thing nicely, let's copy it in Linux", users have to swallow it while moaning "if I wanted to run Windows, I had ran Windows in the first place";
- The designer who takes a project aimed at a certain niche (let's say computer professionals), tries to tarket if at a niche that will never use it (let's say school kids), changing it in the process so it becomes painful to use for the initial category of users. They leave in droves, for alternative projects;
- The designer who does everything to please his boss, mixing professional, familial and community things and leaving the community always on the last place;
- And obviously the designer with an Apple envy trying to emulate the Apple look and feel everywhere, even, or mostly, where is not the case.
I am sure some of my readers will recognize themselves in the personas above and I am also sure many of my readers will recognize some of the personas and identify them with designers they know, the descriptions are not 100% work of fiction.