Last week I received the following question from someone on Twitter:

… If you don’t mind, I wanted to ask you a specific question thats been bothering me for a long time. There are front-end developers and there are UI/UX designers. As I understand it, UI/UX designers come up with how things should look and front-end developers implement their vision. What if I can design and code? What if I want to conceive experiences and implement them? Is it true that most companies don’t encourage that? What would you suggest?

When I read that message, dozens of articles I’d read in the past came to mind. If you search Google, you’ll see that there are tons of articles on the topic of whether designers should learn to code or whether developers should learn to design. All these articles embody different sides of the argument.

Each one of those articles make valid points. However, a recurrent theme among many of these articles is how can a person optimize their skill set to be hired at a company.

This kind of perspective encourages developers and designers to hone their skills, not for themselves, but for companies. And that brings me to my main point: focus on what you enjoy doing and make it part of your craft.

Craft means… To make or product with care, skill, and ingenuity.

Be a craftsman. A craftsman is someone who sees what they do as a science and an art. They create products with passion, pride, and care. And they are constantly searching for ways to improve their craft. Their key metric is forward progress over time.

An example of a craftsman is Nobuo Okano, a Japanese master craftsman who spent the last 30 years perfecting the art of restoring books.

Regardless of whether he’s restoring a hundred or a thousand page book, Nobuo goes page by page unfolding creases with a tweezer and flattening the paper with an iron.

He painstakingly glues loose pages onto new sheets and trims them down to fit the books. It’s clear from his attention to detail that Nobuo has deep respect for his craft.

Another example of a craftsman is Antonio Stradivari, universally recognized as one of the most famous violin makers in the world.

Stradivarius violins are known for their tone, responsiveness, elegance of design, and precision.

The violins were made with utmost respect and care. From the wood used to the design of the violin body, Stradivari paid attention to every small detail. Stradivari progressed so far in his craft that scientists even today are still making discoveries about his process.

Designers and developers can also be craftsman.

If you look at designers like Paul Rand or Johnny Ive and developers like Brendan Eich or Paul Irish, they all treat designing and coding as part of their craft. Their secret sauce is that they’re constantly exploring their domain and looking for ways to leave their mark.

Progress is the metric of success for craftsman. Paul Rand, a renown American graphics designer, began as a part timer at a design syndicate that supplied graphics to various magazines and newspapers.

Years later, Paul Rand would help pioneer an era of design lead businesses. He went on to design the logos of companies like IBM, UPS, and ABC.

Paul Rand designed the logo for IBM. This was a variation for a marketing campaign.

Another example is Johnny Ive. He started off designing products like microwaves, ovens, and toothbrushes. Below is a sketch of a power drill found in his early work. Today Ives is the Chief Design Officer at Apple and is responsible for the industrial design of Apple products like the Macbook, iPod, and iPhone.

Designers and developers who treat what they do as part of their craft, work to improve over time but most importantly, they improve for themselves.

I see a lot of people, constantly looking over their shoulders and comparing themselves to their peers. Often times, those who perceive themselves as behind, panic. And those who feel ahead, become complacent. The only good measure of progress is where you are today versus where you were a year ago. Everyone defines and owns their craft. It’s impossible to make a one-to-one comparison between two people. Also, seeing how much you changed and improved over time can serve as a huge source of inspiration.

So here is my advice for designers and developers who want to improve their craft

As designers and developers, we can always improve the work that we do.

Even if it’s not part of your craft, learn more about your counterpart. If you’re a designer, learn more about development. It will help you understand the practical limitations that developers face. If you’re a developer, learn more about design. It will help you better empathize with the people who use your products.

Read more good code. You’ll pick up good habits and internalize design patterns that will be useful as you architect your own code.

Look at more designs. The more inspiration you look at the more diverse your designs will be.

Take care of your code. If you’re working with many other developers, write more unit tests. Unit tests help others understand what your code does and how it should work.

Study more design systems. It’s important to understand how design is applied to products.

Write less code. Spend more time thinking about what you want to achieve and how. Avoid verbose code with unnecessary logic.

Spend more time analyzing the impact of your designs before going back to the drawing board for the next iteration. Use quantitative analysis like user interviews and qualitative analysis like instrumentation to understand how people are using your product.

The list goes on forever. However there is a common theme among all of the bullet points: care about your work.

Whether you are a designer, developer, or both, treat what you do as part of your craft. Become so damn good that people can’t ignore you.

I would love to know your thoughts on craft and craftsmanship. Also, if you have any questions like the one that inspired this article, feel free to leave a note or Tweet to me.

If you want more, you can follow me on Twitter where I post non-sensical ramblings about design, front-end development, bots, and machine learning.

P.S. If you liked this article, it would mean a lot if you hit the recommend button or share with friends.