Why Developers Should Learn More About Design

One of the topics that comes up often in web design circles is whether or not designers should code. What about the reverse? What about developers? Should developers learn more about design?

A couple of articles I came across recently have me thinking about this topic from the developer side. First was the article Why Developers Need to Learn Design by Stephen Carver for A List Apart. The second was an article by Mark Wilson for Fast Company discussing 4 myths about Apple design.

Why Developers Should Learn Design

I think the reasons why developers should learn something about design are fundamentally the same reasons why designers should learn something about development. In his article, Stephen Carver offers several reasons of his own. Below are what I considered the article’s main arguments for why developers should learn design.

To gain empathy for the designers on their team

To understand the issues designers face and work to solve

To better adapt to responsive design processes and workflows

To help understand the people who will use the system being built

To enjoy their work more

The general idea is that developers who understand something about design gain a view of the bigger picture and where their work fits into it. The understanding encourages teamwork and helps developers anticipate the needs of others on the team. It also puts them closer to the end user. Ultimately a greater understanding of the project’s context helps make the work more enjoyable and the end result more satisfying.

Myths About Design at Apple

Mark Wilson’s article is an interview with ex-Apple designer, Mark Kawano. The first myth discussed is that people think Apple’s strength in design comes from having the best designers. While the designers at Apple are certainly talented, the real advantage at Apple is that everyone in the organization thinks about design.

It’s not always easy to know where development begins and design ends

It’s not just designers who think design at Apple. It’s the engineers and the marketers and the human resources department. Everyone at Apple has an understanding about design’s role in the process and considers design when making decisions about their particular work.

Once again it’s about seeing the bigger picture and how an understanding of the whole helps the parts turn out better.

Fuzzy Edges

Like most industries, the project to build a website divides the work into areas of specialization. Designers design and developers develop. Sounds like a nice clean edge between the two, but the truth is the specialities overlap and the boundary between them is a fuzzy one.

It’s not always easy to tell where development begins and design ends. Both influence the larger context and that larger context influences each in return.

If anything, responsive design is making the boundaries between design and development even fuzzier. We’re moving deliverables from a graphic editor to a browser. That means developers are likely involved much sooner in the process than they might have been a few years ago. In general, designers and developers have to work in closer collaboration throughout the process now.

Seeing the Bigger Picture Improves the Parts

One of the more important design principles is the principle of unity, that everything should work together toward a common goal. The principle of unity isn’t only about design.

Unity includes development (as well as copywriting and marketing, and everything else that goes into a business). How something works is both a design and development decision. Both need to be unified under a larger set of decisions about the business behind the site.

Every aspect of a website works together toward some common goals. The color of an interface element could alter the perception of how well it functions. The code used to create it could alter how the visuals are perceived. Both designers and developers contribute to the overall experience someone feels when using the site.

No matter what part of a website you work on, the more you understand the other parts and how all those parts are related and connected, the better you can understand and work on your own part.

A developer might be considering three potential solutions to a problem. Only one might complement the design. Understanding design will help the developer choose that one solution.

A designer might want to explore ideas, while a developer will understand that one of those ideas requires significantly more work, time, and money and can recommend a simpler idea still accomplishes 99% of the more complicated idea. Understanding development helps the designer explore more feasible options.

Designers and developers have different sets of skills that get applied to achieving the same goal. It only makes sense that we should understand something of what the other does to end up with a better result.

Understanding Design Kept Me in Business

My path toward becoming a freelance web designer began as a front end developer. My partner designed and I developed her designs. I was never far from the design part of the process, though.

Both of us met and talked with clients. Together we identified problems and discussed solutions. Even though we then worked on separate aspects of the site, we both communicated with each other, offering feedback and listening to each other’s suggestions.

I considered how things looked and how they were organized while writing code. She thought about how something would work and how reasonable it was to develop within the client’s budget.

I’m fortunate we worked this way. In time she moved on to other things and I took on design as well as development. By no means was I a great designer at the time, but I had gained enough understanding of design to have confidence I could get there. It helped me trust that my eye for design was good and that I could improve my skills to match my eye if I was willing to put in the work.

Improve Your Skills to Gain an Edge

Whenever I talk about this topic from the side of designers learning to code, I always suggest the same thing. It’s no different here.

Developers don’t need to learn design. There are and will continue to be amazing developers who know little to nothing about design, just as there are amazing designers who can’t write a line of code.

However, understanding more about the other can only make you a better developer or a better designer. It simply helps you see how what you’re doing fits into the greater whole and it helps you understand how to do what you do in a way that works better within that greater whole.

I would hope that whatever your job you would want to do it better. If not, you might want to rethink some of the career decisions you’ve made. If understanding design helps developers become better developers, shouldn’t every developer want to learn more about design?