How We Work
April 15, 2024

On designers coding

By
Jeremy Vejgman

Whether designers should code or not seems to be a topic of heated debate. As a designer whose stood on the sidelines, I've thought about it, and came to the realization that I should learn to code. And that's what I've been doing over the past couple months. Here's why.

Wanting to make my ideas real

When it comes down to it, a designer's job is to *draw* an interface. I want to be able to turn that interface into a real thing that people can use and interact with, without having to rely on someone else.

In large companies, my impression is that there's this odd disconnect between designers and developers. Designers view developers as these stuck-up assholes who never implement their work correctly, and developers view designers as annoyances who always complain about the font weights being incorrect, or the spacing between elements looking "off". I want to do away with this dichotomy by building my own designs - not complaining about how somebody else didn't.

When dealing with computers more broadly, and the web specifically, knowing how to code is to understand how they work - and I want to be a curious person.

It was admittedly uncomfortable for me to come to this realization, probably because programming is something I've always seen as difficult, and I didn't want to feel inadequate for not being able to do it well. I'd imagine this is what many designers feel when confronted with the notion that they should code. They're comfortable and don't want to have to move.

But with some prodding from my older brother (a developer), and growing frustration with not being able to build what I wanted, my attitude towards programming changed from something to be intimidated by to something that's necessary - and even exciting.

Thinking back, picking up any new skill has never not been an arduous process. That's just a part of the game until you become fluent.

Later iterations take place in code

Before I was set on programming, working with Webflow gave me an understanding of HTML and CSS. Unlike many other "no-code" website builders, I'm grateful that Webflow doesn't abstract these concepts away.

Through building websites for myself, and then for others, I realized it's far more efficient to start building the thing when the design is 80% there. Past that point, you have a solid idea of what you need to build, and yet you're adding even more pixel-perfect detail to it in an environment that users won't be in to see them. What's the point?

Tools like Figma are useful because they provide an environment that makes exploring different layouts a faster process than having to build each of them. Use it to compare and contrast, but fundamentally, they're just drawings.

MobiLoud, a client of mine, has a fairly mature website now. I almost never touch Figma before building new sections in a landing page, because I don't need to anymore. We've got a strong base of components to rely upon.

The closer a design is to completion, the more it makes sense to work in the closest environment to reality. And that happens to be in code.

Programming makes you have better ideas

Oftentimes, when designing something in Figma, I tend to have little regard for its technical feasibility. Seeing as front-end development is obviously more complex than drawing, I like the idea of drawing without a care, and then challenging myself to build whatever it is afterwards.

Overall, doing so has made me quite a bit more proficient with HTML and CSS -- but that approach is not without downsides. If I'm completely free of the constraints that development brings, I incur costs in performance, time to implement, and complexity in maintenance.

Building your ideas gives you the ability to design around these constraints, which not only forces more creativity out of you, but results in a more usable and maintainable websites/products. After enough time, your intuition on what's worth building gets better, and your design decisions consider a wider range of problems you'd encounter.

That is all - the 3 reasons I'm learning to code, from a designer's perspective. It's worth mentioning that right now, I mostly work on CRFT Studio alone. If you work as a designer at a company where development is a separate role, I would still imagine learning a bit of code will make you easier to work with.

A large part of my reason for coding simply came down to me wanting to know more about what I was making.