Design for Developers and Where to Start
I talk a lot about designers learning development and in most discussions someone will inevitably ask, “Well, should developers learn design?” And to that I say, “Absolutely.”
A great deal of development work already is design work (don’t let anyone tell you differently). But I also know developers want to improve their visual design, UX, typography, and illustration skills. Here’s some tips on how to get started. Spoiler: They’re all things you can already do.
The first step is to decide to be a designer. It’s possible to design things without realizing it. But it doesn’t do any good designing things and continuing to deny that’s what you’re doing. Decide to be a designer and design with purpose and on purpose.
Where do you start? Anywhere. There’s no standard curriculum or single point of entry. Pick a thing that interests you and start there. Don’t worry about what you need to know “first.”
Just like with development, there’s a lot out there to learn and even more you may not need right now. It’s easy to be overwhelmed. Create content or time constraints to make things more manageable. Pick a tiny portion of a larger concept to focus on or set aside 10 minutes each day to read about a specific topic.
Practice makes better. Just like with development, you’ll learn how to make design decisions through repetition, experimenting, and of course by making mistakes.
Here’s a not-so-secret secret: The skills, practices, and values that make you a great developer are what make a great designer, too. Think of the things you prioritize that make your code better. Things like consistency and modularity. You want your code to have clear hierarchy, to be readable and easily understood. It should be flexible, testable, and accessible. Designers prioritize these same values when creating solid user experiences, interfaces, style guides, and brand identities. We have much more in common than you might think.
If you’re still skeptical of where these commonalities lie, try talking to designers. Really. Turns out people like to talk about their work and passions, so ask. And then listen. A big part in learning anything is understanding and appreciating those who do it. And this has a cool ripple effect. The second you ask someone to help you learn, you’ve turned them into a teacher.
If you can, find a designer who also wants to learn about development. Team up on some projects where you can help each other grow. Find out how the decisions you both make affect each other’s work. Think about how your unique perspective can impact theirs and vice versa.
This might be the scariest one. When you design something, show someone. Ask for feedback. Things may not feel finished or good enough to show, but that’s the time you most need to. I’ve been stuck on this quote by Gar for years:
“Only those who are willing to take the risk of writing code that’s not perfect ever write code.”You’re already sharing your code in various states of “done”; apply that same mindset to your design work.
Avoid the temptation to preface your work, questions, or discussions with “Sorry, I’m not a designer…” Stop apologizing. “You’re not a real designer unless you [insert some arbitrary condition].” Don’t say this to yourself and don’t let others say it to you. We define who we are and what we’re good at. If you’re designing things, you’re a designer.
Here’s the thing. As you do the things listed above and learn more about design, you’ll become a more versatile, empathetic, and well-rounded developer, too.
This is the first of a Design for Developers blog series the &yet design team plans to write and we’d love your thoughts. What kinds of topics are you interested in? What write-ups or tutorials would help you in your learning? Share your ideas with us on Twitter!