DESIGNERS SHOULD LEARN TO CODE AND DEVELOPERS SHOULD LEARN DESIGN.
DESIGNERS SHOULD LEARN HOW TO CODE.
I fully support the recent movement of convincing designers that learning basic code is important. I agree with a lot of (definitely not all) the reasoning behind it. This day and age, most designers will be creating work for interactive experiences at some point. A designer that knows how to code can communicate with a developer more efficiently than a designer that does not know how to code. Communication is a huge factor in every successful project. I work on a small team where my primary role is to create the design of a website. We have several developers that work on building the site. Being able to ask the developer, “Can you move that div up 20 pixels?” is way clearer than “Can you move that paragraph up by 5%?” and provides a more exact result (and a less frustrated developer).
But what about developers?
DEVELOPERS SHOULD LEARN FUNDAMENTAL DESIGN PRINCIPLES.
This is a two-way street. While developers are way more comfortable in code, they should also be able to recognize basic design principles and common ux/ui methods and techniques. Design is more than “making it look pretty.” There are many elements of design that are used to make a website more enjoyable to use for the viewer. Knowing to keep link and button styles the same throughout a website creates consistency that a viewer depends on or that equal margins and padding throughout a design can make a website look more cohesive is something that can be taught and is not necessarily something designers “just know.” There are many fundamentals of design and ux that developers can reference when working on an already created design or creating a design themselves.
In the end, designers knowing how to code and developers knowing fundamentals of design cuts down on miscommunication within a team and ends up being more time-efficient. A designer that can provide a Sass variables style sheet with color codes and text styles will cut down time a developer has to spend figuring out colors and fonts from a photoshop document. A developer that can see that the margin on the top doesn’t match the margin on the bottom or know that checkboxes might be a better option than a drop-down for two options in a filter saves the designer time of having to double-check a finished website against the original design or designing out every single element/page of a website.
I’m not saying that designers should be developers and developers should be designers. I think it helps both professions to know a little bit of the other, since designers and developers are usually working closely together on projects.