Categories: ArticlesChapters

Chapter 6 – You Should Learn Some Code

Everybody should learn to program a computer, because it teaches you how to think.
~Steve Jobs

 

You can hear the usual pushback against this idea immediately:

“But I’m a designer . . .”  It doesn’t matter. Learn some code.

“I want to focus purely on my discipline!” It doesn’t matter. Learn some code.

“I won’t be able to make money from it.” It doesn’t matter. Learn some code.

To be clear: My insistence on learning some code is not to become the modern-day front-end “unicorn” that you often hear described-the designer who can do it all. No, the reason to learn some code is very practical for your career and your working relationships: by doing so, you’ll develop a deep empathy for the developers you’re working with.

Coding will expose you to some of the problems and frustrations that developers face daily:

 

  • Despite the discipline being so firmly rooted in math, often it seems that 1 + 1 doesn’t always equal 2.
  • Adding this component ruins all the others.
  • Changing this CSS causes a conflict with that
  • Some browsers don’t render that well.
  • This interaction breaks all the others.
  • Yep, there’s more . . . but I’ll stop here.

 

If you go through the exercise of coding and building something yourself, you’ll get to feel these frustrations firsthand. This experience can help shape your appreciation for your developer coworkers and even improve your design process.

Next time you’re working with a developer and they say that a seemingly “tiny” change will take a great effort, you’ll be able to appreciate the truth in that statement. Conversely, the more code you learn, the sharper you’ll become at detecting laziness or simple resistance and can, therefore, accurately assist with troubleshooting.

This new empathy can help fuel your desire for compromise as you come up with new solutions that cut the amount of work in half and improve the output.

There is very little value in a stunningly beautiful design that is utterly infeasible to actually build. It represents a waste of a designer’s time who spent all those hours crafting something that can’t be built. Worse, it can turn into a terrible waste of a developer’s time if it’s pushed through and they need to move mountains to implement it.

You’ll have an ability to craft designs that are immediately more feasible, reasonable, and loved not just by your users but your fellow teammates as well.

What can’t be overstated about this approach is the trust and camaraderie it builds with your teammates. To be seen as a designer who understands and appreciates the challenges of a developer puts you in a highly valuable circle of trust.

What’s more, if you conduct yourself in this way, then when it comes time to push for a difficult solution or layout, you’ll have developers on your side. As opposed to before-where you were simply a designer who made unreasonable demands-your teammates now know that you understand them. They know you appreciate the difficulties of their work and would only be pushing a particularly difficult solution because it really is important.

Learning some code will unlock a new appreciation for how the solution gets built. An appreciation for the coding work itself, for the teammates who put it together, and for how your work as a designer has an impact on both.

Learn some code.

 

What I’m Not Saying

  • Become a developer.
  • Accept bad design to make the coding easier.
  • Don’t fight for difficult implementations when it’s truly meaningful.

 

What I Am Saying:

  • Understand what goes into coding your designs.
  • Learn some basic coding to expand your understanding of implementation challenges.
  • Empathize with developers and their role in creating your design.
  • Understand how to design while thinking how it may actually get built.

 

Trevor Alexander

Trevor Alexander has been an active designer in the tech industry for over sixteen years. During that time he has been a part of three successfully sold start-ups and has had responsibilities ranging from solitary designer, to design lead, to VP of Product. Trevor has had the pleasure of working with, hiring, and managing many designers during the course of his career.

Recent Posts

Chapter 19 – Have an Honest Conversation About What You Want

“Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped…

2 years ago

Chapter 18 – Output Is More Important Than Process

Thinking is easy, acting is difficult, and to put one's thoughts into action is the…

2 years ago

Chapter 17 – Don’t Build Yourself Based on an App, OS, or Design System

Technology and tools are useful and powerful when they are your servant and not your…

2 years ago

Chapter 16 – You Need a Beautiful and Meaningful Portfolio

Bad design is like wearing a rumpled suit. It doesn’t mean you’re a bad person,but…

2 years ago

Chapter 15 – The Best Isn’t Always the Best

Be stubborn on vision but flexible on details.~Jeff Bezos You will sometimes know deep in…

2 years ago

Chapter 14 – Don’t Let Details Get in the Way of the Big Picture

Focus on the excitement and it will lead you through the obstacles. ~Piya Sorcar There…

2 years ago