How dislike for the code helped me “pump over” the skills of the designer

Original author: Allie Vogel
  • Transfer
"Should designers be able to write code" - as you know, this is one of the most favorite topics for discussion in the IT community. Today we offer you a translation of the Allie Vogel post, in which she talks about personal experience and why, from her point of view, the time and effort spent studying the code is worth it.



Product Design through the Eyes of a Techie

Four months ago, I left my easy and well-paid job at LinkedIn's San Francisco affiliate to learn how to code.

I always aspired to development as a designer, and suddenly I realized that I had no idea how web products are made. Learning to program was the logical next step towards this goal.

Starting an intensive training course, I did not know what the difference was between programming logic and markup, and even between the client part and the server part code (or what these concepts mean at all) - and even more so.

I think it is obvious that the learning process was painful.



Now that I am interviewing for the position of product designer, I understand that my decision to master the code was undoubtedly correct. Now, when I am faced with a difficult dizanyer task, I use the programmer's wisdom with might and main to understand the problem. Here are some key lessons I learned from my experience:

Strive for simplicity

The development process consists in writing neat, understandable and functional programs that can perform a set of microtasks. In general, the problems you are trying to solve are widespread.

Before starting work on a design project, I felt a little overwhelmed by the uncertainty of what I was designing. But the development process taught me to break each problem into micro-fragments, which are performed as separate functions.
Now tackling the problem of design, I see it as a complex composite integrity, which can be gradually, step by step, broken down into small fragments.

Tip: In the process of creating wireframes, think of each element as a component. I began to approach design from the perspective of a developer, considering each component as a building block for a future application.



The concept of responsive website redesign for Kiva. Making design decisions, my colleague and I looked at the project through the eyes of developers.

Learn to study

Before, when I came across a question that I couldn’t answer with confidence, or when I was asked to use a technology that I was not familiar with, I immediately panicked.

While developing, I came to the understanding that the human brain cannot store all the information that is necessary to write in dozens of languages ​​or for many operating systems. Programming teaches you how to think. And for everything else, there is Google.

Want to program for iOS? Learn PHP? Create a chat bot? Most likely someone has already written about their experience or published code for a component or design element that you can use. Break the task down into fragments so that it becomes clearer what needs to be done, and begin your research.

Develop empathy

If you have not mastered computer science or technical specialties, such as engineering or mathematics, learning the basics of code will help fill many gaps.
It will teach you to separate the important from the unimportant and will help you to think from the position of the developer when working on product design.
“Most importantly, designers and developers should develop empathy in relation to each other. Both parties must understand the essence of the process and work effectively together. ” - Ryan Scott, Chief Designer, DoorDash


Adapt the design to the technology that

you use. You do not have to ask yourself often: “Is this possible?”. Learning the properties of different languages ​​and web frameworks will help you gain an idea of ​​the possibilities and limitations within your area of ​​activity.

Even if you have doubts whether it is realistic to implement this or that interaction, the instinct of the developer will help you figure it out. When I first became acquainted with advanced CSS and JavaScript, a wave of inspiration swept over me: I realized that I now have a whole library of interactions at my disposal.
“Understanding the limitations that development imposes allows me to find effective design solutions” - Elliot Dahl, Product Designer at Pivotal Labs.

Tip : Do not be lazy to engage in self-education. Each language has its own official documentation. Relying on it, Stack Overflow and Google search, you will be able to easily outline the scope of the possible before giving your design to the development team.

Improve communication

By mastering the code, you learn to think as a developer. This skill, in turn, helps you establish reliable communication. The knowledge of the developer will give you the opportunity to create a more holistic user experience and formulate your ideas in such a way that people with a technical mentality will appreciate them.

Having participated in countless hackathons and worked in many teams, I came to the conclusion that creativity is only useful if it is accompanied by the ability to infect others with their vision through effective articulation of ideas. Development has helped me enter this zone.

Development can be infuriating. Until you overcome this barrier. After that, she gives a feeling of unlimited possibilities.

Now I no longer hate writing code. It even gives me pleasure. But the way I fought with him, almost banging my head against the wall and tearing my hair out, left such a deep mark that I will always have a warm sympathy for the developers who work with me side by side.

Thanks to this experience, I realized that I do not need to be a developer in order to think as a developer. If you can specialize in creating awesome designs, but at the same time have the communication skills to work with fellow techies, you can take your projects to the next level and become an excellent digital product designer.

Also popular now: