When I grow up, I want to be ... a devsigner. No, seriously: developer + designer, geddit? OK, so the word itself is in dire need of a makeover, but the concept is sound. I'd not heard the term before, but it was being used a fair bit at AjaxWorld last week. The stereotypes are that developers cut code, worry about elegant architectures and test strategies and get high on recursive data structures. Designers create images, worry about visually effective presentation and aesthetics, and get high on perfectly balanced font faces. More importantly, so the stereotypes say, the designers create a thing of elegance and beauty, and the developers mess it up when they turn it into working code. A particularly irritating example of this is Alan Cooper's book About Face 2.0, which, while it also contains lots of good advice on interaction design, carries a refrain that designers will listen to users and craft a thing of ease and beauty, and are then forced to dress it in virginal white and chain it to a rock near the caves where the programmers live. OK, so I may exaggerate slightly, but he says, for example:
It simply isn't possible for a programmer to advocate for the user, the business, and the technology at the same time.
I accept that some – many – developers simply aren't interested in UI issues, and that being a user advocate and being a developer are different skillsets. But I don't accept that it's impossible for one person to have both skillsets. Enter the devsigner, and apparently we need more of them. I agree.
Actually, I first learned about user centred design some 15 years ago or so. We used it to great effect on a project I was working on in Delaware. We had the whole team participate in the user-study and requirements capture phase, and while I guess different people got more or less into the process, I think everyone gained from it. Personally, I loved the whole process.
User-centered design is, to me, the heart of being a devsigner. Whether it's a developer acquiring design skills, or a designer learning some coding skills, a passionate interest in "what's the user perspective in this artefact?" is the key.
If you're interested in the general world of design, I recommend the core77 blog.