Jared Spool recently posted about “Why the Valley wants designers that can code.” Basically, he makes the good point that hiring managers at startups are always looking for ways to get more value for their dollar. And so based on that understanding he recommends “If you’re a designer, you don’t have to learn to code. But if you do, and you get good at it, you’ll find more opportunities as time goes on.” And in this he’s right. But of course his comments would be just as valid if he wrote a post titled “Why the Valley Wants Marketers That Can Code.” Or Engineers that can write press releases. Or any other combination of useful skills.
Except… the Valley doesn’t want marketers to write code or engineers to write press releases. Because, they don’t trust marketers to write code, and they feel that writing press releases would be a waste of the engineers’ valuable time and skills.
So what’s the real reason that many companies look for designers who can code? Because fundamentally they don’t understand and therefore properly value what great software designers do.
Spool says: “If you’re in a room filled with designers, bring up the topic of whether it’s valuable for a designer to also code. Immediately, the room will divide faster than Moses split the Red Sea. One side will tell you coding is an essential skill, while the other will vehemently argue how it dilutes the designer’s value.” If I’m in a room full of designers and any of take either of these positions, then I’m in a room full of designers I would prefer never to work with.
High quality software designers are true singer-songwriters. They can deliver a combination of interaction and visual design that don’t just make a product shine, they make the product what it is. They create its essence, its DNA. Should they have deep empathy for the software development process? Yes. Should they understand technology and be “technical” to a degree? Yes. Should they have passion for software as their medium? Yes. Much like a designer focused on print projects should understand how various ink/paper/press combinations will impact their final product’s design as well as cost, software designers should understand the canvas on which they are painting. But do I want a true software designer spending time fighting the various inconsistencies between browser CSS implementations to get the UI perfect? Nope. It’s a waste of their time. They should be doing more designing.
(If you’re annoyed by the previous paragraphs, this next one will make you crazy.)
Are there true singer-songwriter software designers that can write high quality code? Yes. But they are the exception. Anecdotally, I’ve found that most (not all) “designers” who can code are in fact coders who have empathy and passion for design, and may even have some good interaction design chops. But often they are weak when it comes to visual design. In our left-brain dominated industry, visual design is often looked at as fluff. Often people will say things like “art is the last step” or “that’s the lipstick”. I believe that when you treat the visual elements as some sort of layer of paint, then all the visuals can be is a layer of paint. And I believe that most “designers that can code” aren’t really designers at all.
The worst part is that design schools are complicit in this misunderstanding of what software designers should do. They’re busy teaching HTML, CSS, and Flash (yes Flash) to art students as if these skills are mandatory for them to succeed as high end software designers. These potentially talented software designers have an allergic reaction to spending their careers writing markup instead of drawing and decide to focus on “print”! Print! Pardon the profanity, but… WHAT THE FUCK??? The most incredible canvas in the world for designers — software — exists, and needs them. It lets them combine text and images and video and audio and user interaction in incredible ways, but they want to go make business cards and annual reports. Our industry needs a fleet of talented software designers and design schools are failing to produce them.
At some point, we will have more than a smattering of true software designers in this industry. They won’t be employees either. They’ll be founders and co-founders. And their companies will produce beautiful usable products that stand out from their competitors. And some of these designers will even be able to code. But we won’t let them, because we’ll want them spend every minute designing beautiful software.
A note: I’m sure that some of you will take exception to this post. Many of you will be annoyed because you either subscribe to the notion that designers should code and that it’s a good thing, or that you are designer that writes code and you are annoyed that I question your visual skills. Understood. I hear you. Please know, just because someone doesn’t fit the model of the designer I think we should be replicating, doesn’t mean I think they aren’t a valuable contributor.
And finally, some of you may criticize me and say that it’s easy for me to lobby for this model for software designers when my co-founder Jenny Lam exemplifies it. And to that I will say… you’re right.
