Web designers also need to learn web coding

Web designers also need to learn web coding

Often, after a web design is completed, the designer’s ignorance is exposed and they are criticized. They left the heavy lifting of creating web page code to programmers. This phenomenon is not only seen in the web development industry, but also in the software and game development industry.

The harsh truth is that development progress can be stalled by designers. In pursuit of optimal efficiency, designers not only need to draw, but also need to be able to make it! In this article, 123WORDPRESS.COM would like to share with readers some reasons why designers need to learn to write code.

Make realistic and feasible designs

With a clear idea of ​​how the final product will turn out, designers will come up with more realistic and workable concepts. As an integral part of the development process, designers are tasked with ensuring their designs transfer smoothly to the web medium, taking into account usability, web accessibility, and implementability. A user-friendly website not only has a clear and concise browsing order, but also provides users with all the information they need without appearing intrusive or cluttered. The only way to know if a web layout is feasible is to learn how to build a web page yourself.

Make communication easier

In almost all products where design and implementation are separate, the design and implementation groups never meet each other's expectations, especially those intangible products such as websites, software, and games. This usually comes down to a compromise between product expectations and product feasibility , which currently seems difficult to achieve perfectly. The solution is that designers should personally try to realize their designs to avoid confusion, misunderstanding and miscommunication.

Convenient iterative development process

A design in practice should not be absolute. What I mean is that the design should be flexible and friendly, able to be modified to cater to the technical limitations of the system without distorting its original meaning. These repetitive but necessary changes can only be made by the original designer. A designer/developer can be more efficient than a developer taking the design back to the designer for changes. And there can be — and often does — friction between designers and developers.

Better and more harmonious results

I often like to think of software, network or game development as an orchestra, with designers as composers and developers as conductors. Imagine if these two were the same person? The symphony will be stunning, enchanting, and pure! Not only is it a masterpiece by the master, but it was also directed by him personally!

Shorten development time

The fact that designers also play the role of programmers means that the progress of design and coding is sequential, if not simultaneous. The result is a shorter development cycle - who doesn't care about efficiency?

Designers are more market-oriented

Modern designers need to improve their abilities to maintain their personal value. Having a set of skills is far from enough. We often need to wear different titles: designer, front-end developer, article writer and project manager.

By learning to implement your own designs, rather than letting them become orphans in the hands of developers - you increase your own value. After all, it can’t hurt to mention design and coding skills on your resume. On the contrary, in this era of financial crisis, with corporate restructuring (see: mass layoffs) and cost-cutting, it is possible to emphasize one's importance without getting fired.

However, even with all these reasons for designers to learn to code, there are also some objections.

Quoting Lukas Mathis’ controversial article “Designers are not programmers” ( note 1)

If a designer implements his own design, he is constrained by two different goals: clean code and good user experience. These two goals are contradictory. If you were to implement your own design, you would inevitably compromise on the quality of the code, which is not conducive to interaction design.

Designers who implement their own designs face two problems: they know that a great new idea will create a mess of code, and they also know that if they improve the user experience, existing code will be disrupted. The two are at odds with each other because user experience is all about the small details, and those small details are ultimately ruined by their reluctance to clutter the code.

This aptly sums up the hardline stance taken by the "Web development purists." They are old school and advocate for a clear distinction between design and development. Obviously, designers create for humans and developers create for machines. Therefore, UX designers should design the best possible user interface and let developers make the best possible programming decisions. While there is some truth to this, when I was working on a user interface, my efforts to find inspiration in code were often unsuccessful. In general, it is helpful to have a correct understanding of the technical and usability limitations in mind.

Final Thoughts

Ultimately, the scale of the project being developed may ultimately determine the roles of designers and developers. A small application can be managed by a project manager ( Note 2) , but a large system will inevitably require different professionals!

Note 1 Mathis-Lukas——“ Designers are not Programmers ”——ignore the code

Note 2 Spolsky-Joel - describes a position called "designer-programmer" - "How to be a program manager" - Joel on Software

<<:  Discussion on the problem of garbled characters in iframe page parameters

>>:  Use CSS3 background control properties + color transition to achieve gradient effect

Recommend

Best Practices for Developing Amap Applications with Vue

Table of contents Preface Asynchronous loading Pa...

Understanding of web design layout

<br />A contradiction arises. In small works...

Implementation of CSS3 button border animation

First look at the effect: html <a href="#...

React Router 5.1.0 uses useHistory to implement page jump navigation

Table of contents 1. Use the withRouter component...

Detailed explanation of Linux redirection usage

I believe that everyone needs to copy and paste d...

Detailed explanation of how to use Teleport, a built-in component of Vue3

Table of contents 1. Teleport usage 2. Complete t...

Summary of Linux nc command

NC's full name is Netcat (Network Knife), and...

TCP socket SYN queue and Accept queue difference analysis

First we must understand that a TCP socket in the...

Detailed explanation of how to use the vue3 Teleport instant movement function

The use of vue3 Teleport instant movement functio...

Solution to the problem that docker logs cannot be retrieved

When checking the service daily, when I went to l...

HTML uncommon tags optgroup, sub, sup and bdo example code

Optgroup is used in the select tag to make the dro...

Summary of some HTML code writing style suggestions

Omit the protocol of the resource file It is reco...

The most convenient way to build a Zookeeper server in history (recommended)

What is ZooKeeper ZooKeeper is a top-level projec...

MySQL 8.0.11 compressed version installation tutorial

This article shares the installation tutorial of ...