At an AIGA/NY talk that Jussi Ängeslevä gave last week, a point was brought up in the Q&A afterwards that I thought was interesting: should designers learn to code? Jussi of course resoundingly gave his support to this notion, but then threw the question over to a colleague that was in attendance, who said something along the lines of: “You should learn what you need in order to fulfill your objective; one doesn’t necessarily need to have the skill of a Da Vinci to wield a brush, and code is just another tool in your toolbox.”
I agree with this idea of learning as you go; as a designer, it wouldn’t make a whole lot of sense to learn code from the bottom up as a computer science engineer might. There is simply too much. Instead we should strive to learn along the way, through experience. It might be a more circuitous route, but ultimately we retain more when we actively do as opposed to simply going through the motions as dictated by a book or course syllabus. Many designers I know are reluctant to learn coding because they feel they are overwhelmed by the sheer amount of stuff that one needs to know. However, one not need be inundated by the forest to see the trees.
Most of my coding knowledge has been gained when I absolutely needed to learn something specific. For example, many moons ago I wanted to make a :hover action for photo links on my website, so I begin looking up how to go about it. Through this investigation I learned the quick and dirty way of putting a script in the header; then embedding it in a CSS file; then the myriad different properties that I can store in CSS. Now the can of worms had been opened. I’d learned a small sliver, but through doing and trial & error (as opposed to sitting through some computer science class whose contents I’m going to retain very little), my skill set has broadened ever so slightly, and perhaps my interest might be piqued into investigating further.
This is the other thing: most developers learn through hacking. By being curious & going through someone else’s code (and hopefully someone with more skills than yourself), you begin to see how things are put together, how they work and interact with one another. I think a common misconception amongst non-coders is that “Oh, but if I look at someone else’s code I’m not going to be original”. Rubbish. Things change the second you start taking some bits from one place, some bits from another place, alter them to fit your purposes, change a property here, delete an extraneous property there… You’ve taken the clay—as it were—and reworked it to your needs; the raw material is the same, but the end result is different.
Furthermore, a basic coding background will help you realize the underpinnings of what it is that you will be asking others (your developers) to do; it’s helpful in the same way as learning the basics of pre-press in order that you can better communicate with your printer. The difference is that a press is physical, while code is abstract.
And the list of design deliverables that involve some kind of coding or technical knowledge is expanding now more than ever: responsive websites (jQuery, AJAX, PHP, et al), mobile app development (Xcode & Objective-C), typeface design (Python), and even 3D CAD/CAM (Rhino, AutoCAD, SolidWorks, etc). The willingness to have some amount of curiosity about these things and how they work is—I believe—essential to designers that wish to stay relevant in the coming years.
As many designers in the 80′s didn’t embrace computers wholesale (I’ve talked to plenty of them!), designers today quite naturally feel a bit out of their league when it comes to coding. For some, it’ll come as natural to them as water to a fish. For many, it will be a slow process to eventually learn a modicum of basic code. And for a select few, there will be an eternal reluctance to take on something that they may not see as necessary to their practice. I feel like we’re in the midst of a similar sea change. The difference is: the tools and the instruction on how to use them are far more accessible than they were in the 80′s. All one needs is a little curiosity.