So as harsh as it may sound the answer to your question is that you just cannot get great designers. There's virtually nothing you can offer them in return. If you do manage to get someone on board, do shield them from the "community". Work one on one and put all your weight behind his designs when they are made public. Leet hackorz that are so vocal on many O/S forums and mailing lists can easily demotivate even Mother Teresa in a matter of few replies.
HTH, feel free to vote me down now :)
(edit) On a second thought VLC might be one of few projects that can attract a designer because of its high-visibility nature. Yet the point remains - designers are easily demotivated, way easier than developers, so retaining them is a major challenge.
VLC is quite visible, but that isn't enough, I am afraid :D
Except for a few things (like the conversion feature, which is really hard for non-technical people), me, and those I know use it, find VLC pretty usable.
* "Glue" team members. The company I've worked for always had at least two staff members who were a bit of both, and could basically plan out and convey ideas from one team to the other. * Assumption of expertise. Each group would trust the other when it comes to both design and programming and no doubting would take place. In case of a conflict, a programmer could tell the designer why a certain design would not work out well citing particular technological reasons; similarly, given a question by the programmer, a designer would explain why a particular design is laid out the way it is, why the buttons are blue etc. Given the conflict resolution scheme, a product builds up based on mutual trust and communication of ideas between the two parties.
Key decision makers on that part of VLC is 2 or 3 people at max.
If the design is there, the code will follow, believe me.
edit: Another problem that i didn't think of when i wrote the above is that, since VLC is a multi-platform application, any SERIOUS interface changes -- changes to work flow, arrangement of options and menus and the like -- need to be copied over to the other platforms.
For instance, VLC's transcoding function, whilst very featureful, is incredibly irritating to use, interface-wise. Suppose i had the solution to this, and i provided it to VLC. That's step one, but in order to get that actually put into the product, not only do i need to have done my part, but then you need presumably multiple programmers to actually get it implemented in the Mac, Windows, and Linux versions.
Editing a NIB and not making it open source, is near useless for the community...
Not to mention that the developers don't have to court those people, it should be the other way around... They should propose their design. This goes for everyone, developers, translators, technical writors... Why would designers be different?
Finally, about the transcode part, this is not a designing issue, but a usability issue...
Do you mean the Mac development community, or the Mac user community? Because based on my admittedly anecdotal research, i would say that the latter almost certainly do care. Why none of the developers have stepped forward, i don't know -- maybe they feel like their talents would be wasted given the past administration of the Mac client? Maybe they think it's a hopeless cause? Have the VLC team made it clear what sort of developer they're after? Do they want someone to just expose their functionality changes to the OS X version, or do they want someone to take charge of the OS X version, in the same way that Transmission's Mac UI team take charge of their OS X version?
> Editing a NIB and not making it open source, is near useless for the community...
Of course it is. But why do you think people do that? If they felt that the work they were doing anyway could influence the design direction of the official VLC project, wouldn't they jump at the idea? Almost certainly they would. They don't because they feel like no-one at VLC cares about their work. (And given that the OS X version is unmaintained, i guess that's true.) They don't know that they have the opportunity to use their talents to make more meaningful contributions to VLC.
> Not to mention that the developers don't have to court those people, it should be the other way around... They should propose their design. This goes for everyone, developers, translators, technical writors... Why would designers be different?
There is a well-known path for developers to submit their contributions. Everybody knows it, it's understood, it's easily accessible for people who do their sort of work. A designer is less familiar with these processes.
Not only that, but a designer can't implement their changes on their own. Any random developer can look up a bug on a tracker and write a self-contained patch that gets merged with the trunk and then boom it's fixed. That's not how interface design works. A random designer can submit mock-ups or image files to a bug tracker, but they require another person -- a developer -- to actually put their ideas into action. This is a much larger barrier to entry.
> Finally, about the transcode part, this is not a designing issue, but a usability issue...
It is not an aesthetic issue, no. But the work flow -- the steps you need to take to complete an action -- is another aspect of interface design.
Heh. Obviously as VLC's developer you know better, but FWIW I've been using VLC on Mac OS X extensively, as my primary video player. I don't think it's unusable, or ugly at all.. I can't be the only one, can I?
I've been working with a designer to try to do this mockup: http://www.jbkempf.com/~jb/VLC_mac.png
There's a 90/10 rule - only put the stuff you use 90% of the time in the UI. The other 10% goes in the drop menu.
In the case of your mockup, I doubt people are EQing every movie they watch. They don't really use the library, so prev/next/loop/shuffle and lib are all unnecessary in a player view. I expect in most cases people use VLC to play a single video, something that a native player won't.
Further, your time display doesn't show total time - only position. Most players show current position and a total time/countdown toggle. The best include an end clock (i.e. your movie will finish @ 1:32am).
What new type of user are you trying to attract? Once you know that, it's pretty obvious what to do. Ping me if you wish to discuss (radley@ cloud.tv / vj.tv). I'm a big fan of VLC and build/design UI/UX & media players for a living...
P.S. Not just being a spoilsport here -- I do contribute to VLC, just through libavcodec.
(Except maybe the fact that the playlist's default setting always goes back to "shuffle" for some reason.)
Those are some great points, they're discussed in this book: http://producingoss.com/en/communications.html#writing-tone
I think usability is a blend of user experience, usefulness and intuitiveness. I have a hard time associating the latter with either the programmer or the designer.
My experience, as a programmer working often with designers, is that many of them (not all) are more concerned with the visual appeal of an interface and to a lesser extent its intuitiveness and usefulness.
For example, I've built quite a number of web management systems. Most times, when I team up with some designer they'd want to make pretty icons. However, I've come to the realization that we get more praises when the client can just look at his system and recognizes what he asked us to build and can easily guess where to go next. And that more often happens with text buttons. I believe that visual cues have their place, but I also think that many graphic memes have gone beyond useful, which probably doesn't help the relationship between programmers and designers.
On the other hand, I remember a time when I would build some quick ass functionality, but presented in such a convoluted way that only other programmers could understand the prowess and usefulness of the feature. You had to get up up early to get me to change them!
Programmers tend to be very minimalist, whereas designers are often very expressive. I think there is an effort to be made on both parts to reach a middle-ground. Designers need to learn that pretty doesn't necessarily mean useful. And programmers need to realize that just because their work is useful doesn't warrant that it's usable.
There's hope though. In time I've learned and now strive to make features as intuitive as possible. I now also favor very pretty, text-only, icons.
[...]and the current trend of "removing functionalities" is not always welcomed by developers...
In my not so humble opinion, graphic interfaces should be designed with the Pareto principle as a guideline (80-20 rule http://en.wikipedia.org/wiki/Pareto_principle). Is the feature useful? Yes. Will it be used often? No. Lets put it in the "nice to have" list.
If the application caters to a broad audience with varying levels of expertise and usage, it should present interfaces with varying degrees of complexity. I've seen this applied in real life successfully (e.g. in Ubuntu: dpkg >> apt >> aptitude >> Software Center). I definitely agree with you though, that too many software nowadays try to make things too easy without offering a way to go beyond the basics.
The designer should know enough to you visual symbols that have real-world equivalents to convey the meaning of the button visually. Envelopes for mail. phones for contact button. Thumbs up to like, thumbs down to dislike.
This is my first time learning about the open source project (never been on hacker news before). Can anyone provide a link to what you would call a typical open source project in need of a designer. I'm terrified of working with you guys but am starting to feel like maybe I should get over that and lend a hand.
You shouldn't be terrified.
My advice: start with a small open source team (not small project) on a project you like. Maybe do not start with your real name (it will be easy to change aftewards). Come on one IRC channel of a project ( like #videolan on freenode) and propose your services. See how people react. If you like them, go on, if you don't, move along.
VideoLAN makes VLC. VLC is one of the best video players in existence, it's also fairly ugly.
And yes, too many people forget usability for prettiness.
VLC is usable (not all parts, true) but isn't beautiful.
VLC is a product, that is widely used, usable (not the mac version, though), but it is extremely ugly.
It is quite hard to get designers to help us (redesigning all the buttons for example) for quite many reasons. The biggest reason is that we don't speak the same language.
Many designers don't understand the criticism that usually comes around with each modification in open source project. Many developers don't understand how to speak to designers in a polite way (they think they speak normally, but it isn't perceived as such).
Also, many (not all of them) designers don't understand the difficulties of usability, and sometimes mistakes it with "shiny". Usability of a desktop application is way more complex than a website, and the current trend of "removing functionalities" is not always welcomed by developers...
However, I don't loose hope :D