The Relationship Between Design and Code

Helen West (a.k.a. my Mum) has run a jewellery business for my entire life. She designs and makes individual pieces and sells them through her retail store. If you were to visit her workshop you’d find a wonderful array of tools and machines, but she didn’t decide to become a designer so that she could bend metal or hammer intricate patterns into a piece of silver all day. Helen’s a jeweller because she wants to express her creative ideas in the pieces she makes. Her satisfaction is not found in the swing of a hammer, but in the creation of an object that brings joy to it’s owner.
That said, Helen has a deep understanding of her tools. It’s a requirement in order to bring her ideas to life. She needs to know which set of pliers to use to bend the metal in just the right way, or which technique will allow her to create the finish she’s after.
I think the relationship between design and coding is very similar.
Code is merely the tool I use to bring my ideas to life. I don’t draw pleasure out of writing code all day. My satisfaction is found in designing and building something that’s more useful than that which came before it.
Not all designers want to bring their designs to life themselves. That’s okay. It doesn’t make them a “bad” designer, they just need to find someone they can trust to do that for them.
I’ve worked with some excellent designers that don’t code. I sometimes wonder if the absence of coding skills actually frees these designers to create more innovative products. Due to their limited knowledge about todays tools, they are not constrained by their limitations. They often create designs that force our tools to evolve. Of course, designers that code can do this too, it just take a little more conscious effort to break free of these constraints.
So should designers code?
Learning to code is a necessity if you want to bring your designs to life yourself. If you work with a great developer who you trust to respect your design decisions, it’s okay to delegate the coding to them.
Some jewellers design and make everything themselves, others hand off their designs to skilled craftspeople who bring those designs to life. Either approach is okay, it just depends on how you want to work.
Caveat: When I talk about coding in relation to the “should designers code?” question, I’m referring to interface design and frontend development (HTML, CSS, and JavaScript). Software engineering and backend development are specialised fields that I don’t think every designer needs to understand in depth.