Should Designers Learn to Code?

In 2010, Elliot Stocks stirred up a hornets’ nest with a provocative tweet:

Honestly, I’m shocked that in 2010 I’m still coming across ‘web designers’ who can’t code their own designs. No excuse.

The internet was abuzz for a long time, and the debate continues. To code or not to code? It remains a charged topic with strongly opinionated advocates on both sides.

Let’s put it to rest. It’s 2015. Web design has come a long way. We have ridiculously specialized roles now (like “User Experience Analyst”); it’s no longer one designer plowing through the full development stack on their own. We have better tools and efficient best practices.

Let’s examine both sides of the argument:

Why you don’t need to code

With the right tool, a designer simply doesn’t need to know how to code to build a beautiful, functional, and responsive website. What’s more, most designers simply don’t want to code. And there’s nothing wrong with that. It’s called specialization. In the past, there was nothing designers could do to get around the necessary development work (if not by them, then by someone else). It was a necessary nuisance. But that’s no longer the case — we have professional drag-and-drop tools now.

Designers are no longer limited to creating static wireframes and mockups. With tools like Macaw, designers can easily create live websites using simple drag and drop principles. Guess what? Website builders don’t suck anymore. Webflow, for example, generates clean, W3C compliant, HTML and CSS that’s better than what most developers write by hand, it’s based on Twitter’s Bootstrap framework, and it works remarkably well.

And, no, you’re not limited at all in terms of functionality. Further, if desired, the code generated in Webflow or Macaw can be exported off the platform entirely so you can work on it in the comfort of your IDE to develop extended functionality.

But the argument against learning how to code goes beyond merely having the right tools in 2015. It’s also a matter of facing the emotional facts: You’re not “lame” for not knowing how to code, you’re simply realistic and efficient with your time. If you’re a professional designer, you should be the best designer you can be. After all, design trends are constantly shifting and new techniques are endlessly being paraded about. There’s a lot to stay on top of — more than enough to keep you busy as a designer alone, let alone also being a developer.

Let’s also talk about how it’s an incredibly steep learning curve to learn how to code properly. Sure, anyone can slap HTML and CSS together and pray it works across multiple devices, but most people simply can’t code well enough to be doing professional client work. Those who can have worked at the craft for years. For as many trends and competing best practices there are in the designer community, there’s infinitely more in the developer community. And, frankly, from a technical perspective, developing is much harder than designing. Much harder.

Why you should learn to code anyway

You better at least know what you don’t know. Think about that. If you’re entirely ignoring the concepts inherent to web development, you’re going to be worse off for it. You should learn the basics of coding so that you can properly understand the needs of the developers you work with. Conversely, you should build the skill set and vocabulary to best express your design ideas to developers who oftentimes have conflicting technical considerations before them.

Also, quite simply, you will be a better designer if you have a basic understanding of how the development process works, why certain programming languages are used, and how they restrict or expand your ability to design your intentions. When you have a better sense of what’s technically realistic before you start designing, you’ll be less likely to waste your time and more likely to focus your energy focusing on the parts of your site that aren’t up to the whims of the developer’s implementation.

Plus, any professional working in this industry should be the type of person to enjoy the process of learning. If you don’t keep your desire to learn sharp and charged, you will quickly fall behind. There are many aspects to what we do, and millions of eager people are poking their head in trying to find out if it’s for them. Stand out from those people.

What designers really want

What designers really want is to be able to create their own websites. Not necessarily code them. There are two driving factors behind this:

Offering consolidated services to clients. As a freelance designer, you may not have the deep pockets to hire a developer to translate your design work into a functioning site. Meanwhile, your client doesn’t want the headache of having to search for someone else to code your design then also have to manage the communication between you two. If you can perform both aspects as a designer, that’s all that matters — despite whether or not you can actually code. Hence, we come back full circle to professional design tools which are worth your while.

Gaining greater control over their work. Every artist wants full artistic control over their creations. Unfortunately, a lot is lost in translation going from designer to developer. Adapting a PSD to HTML and CSS is not a 1-for-1 process in the era of responsive design. When designers are able to develop their own sites, and are consequently in charge of the entire product flow, the site benefits from the unity of their intentions, and the designer is infinitely better able to respond to client change requests on the fly.

Figure out what you want. Do you simply want to be able to code in order to see your designs come to life? If so, don’t join the herd to head off to coding school; play it smart and skip the queue by learning one of the professional design tools available to us today.

Now, if you do truly want to indulge in the beautifully empowering aspects of programming, by all means buckle down and dig in — just do it for the right reasons and set your expectations appropriately.