Designers Should Design, Coders Should Code
read full story here
Designers can spend many hours learning the nuance of code when they should focus on solving problems.
A new dynamic must take the place of unicorns: communication among specialists.
Specialists need to know what others are capable of, even if they don’t understand the precise techniques. The key is to never operate alone.
Visual design and code are more related than many people realize. It’s not hard to make the jump from graphical tools to concepts in CSS.
A generalist would spend time deciding how to use shadows, then spend more time implementing it.
A specialist designer, on the other hand, would decide how to use it, work with a developer on implementing it, then jump on the next task.
This ties back to communication: designers who are aware of certain techniques don’t need to know their exact inner workings. Smart designers respect the fact that coders are more in tune with feasibility. Their job is to stay current with bleeding-edge techniques and browser limits. When it comes to possibilities, coders are a designer’s best friend. And the bridge between them is empathy.
Because a product and its design are inseparable, designers feel almost a sense of parental responsibility.
But designs do not serve designers. They solve problems for other people. Understanding the root of the problems, not just critical feedback about color and layout, will help designers build products that will keep end users coming back.
While designers serve human needs—solving users’ problems and addressing their goals—coders tackle onerous technical and server issues. The two come together when designers hand off their vision to coders. Yet implementing the plan requires a different set of skills.
Designers don’t need to know how the DOM works, or how to troubleshoot the idiosyncrasies of asynchronous exchanges. They need to know that such things are possible, and how to communicate the problem and solution to the people who do know such things. The only way to tackle this is with open collaboration in which both sides have an inkling of what’s going on without having to specialize in each other’s fields.
Solving problems isn’t enough. Understanding what’s possible in HTML, CSS, JS will help designers create practical web designs—products that developers can actually build, and that clients can maintain. Products that work well in the wild. Products that users use.
Then you can focus on what you love: design.