Why Designers Need to Be Able to Build What They Design
Shocking! A blog post from me, someone who codes and designs, about why designers need to be able to build what they create. But before you tell me why the separation of church and state, or in this case, design and development, is a good thing (it’s really not), hear me out.
Designers Need to Know What's Feasible
No, I’m not talking about the wondrous possibilities of the modern web with WebGL, Audio, Video, and your sexy gamification with your very own branded Minecraft clone. Well, actually, I am. Just because something is possible, and it probably has been for a loooooong time anyway, believe me, doesn’t mean you should design it in your product. No one wants to plan 4 sprints for that bar chart that’s entirely made of a custom liquid particle system.
There’s a reason we make use of popular patterns everywhere. It’s because they have been tried and tested, iterated upon, and crucially are fast to integrate through libraries and frameworks. Feasible means it’s capable of being done or carried out (in a reasonable time and expenditure). And what better way to learn about feasibility than hacking together that UI yourself?
Designers Need to Be Able to Fine-Tune
I’m not trying to throw shade at my fellow Frontenders. But throughout every development cycle, mistakes happen. Things need to be finished. Releases need to be met. No matter how good documentation is, a developer will never have the same microscopic lens on a UI as a designer. There are some that do, but it is generally a given that a product will deviate from the original designs, especially in its infant stages.
Seriously. CSS is easy to learn. Tailwind makes it even more rigid in its structure. Being able to read UI components is reasonably easy in any framework. Being able to at least fine-tune the implementation should be in any designer's toolbox.
Designers Need to Know the Pain
One of the oldest complaints from designers when it comes to coders is that they ignore their specs. Yes, it happens, and yes, it can be annoying (but can be easily fixed with the point above). But just as I see empathy being one of the most important attributes for a designer, empathy is best felt by experiencing the hardships yourself. Behind the veil lies a by now very complex system of packages, components, and paradigms that evolve at great speed.
But, there’s almost no better time to get into it. There’s a reason why boot camps are so popular. Most of it is easy to learn (and hard to master), and there’s great opportunity and knowledge for a designer in getting to know how the sauce is made.
There Are So Many Options
I’ve been implying a professional team environment with clear roles, but this whole post applies to everything else. What good does it do if a designer is able to paint an app on a piece of white canvas? While coding is fun, challenging, and rewarding, there’s a busload of no-code alternatives like Webflow, Framer, Wordpress, Shopify, Wix, Squarespace, Bubble, etc. Learning Webflow and transitioning over or combining with custom-written components or APIs (and you get even more projects that can help you there) is a great way to gradually step in deeper.
And Last but Not Least: Don’t Be One-Dimensional
Everyone who knows me knows I hold this very strong opinion. Whenever I looked for potential new design candidates, I’ve always maintained the belief that it’s best if you have a “2 or 3 Technique”-person. No, it doesn’t necessarily have to be coding; it could be video, photography, audio, sales, project management, marketing, knitting(!) whatever comes to mind. Because projects nowadays require a diverse set of skills and inputs. And yes, it also helps with staying creative.