DEV Community

Basel Akasha
Basel Akasha

Posted on

5 reasons why every programmer should learn UI design.

No doubt, User Interfaces (UI) design is an independent topic; there are professional designers whose job is to make outstanding and perfect looking interfaces considering client requirements, target audience and many other important factors of good interfaces.

However, learning the basic UI fundamentals is very handy for every programmer. For the following reasons, I think every programmer should learn UI design.

Why not?

There is no wasted skill. Every skill you learn give you a new experience and helps you develop your main career. Especially if you are someone like me who likes to learn new skills and go into new experiments. In my opinion, there is no reason to stop learning any secondary skill as long as you are not going to spend a huge amount of time on it and it's not going to take you away from your primary skill.

Well, I'm not a designer…

I have heard many programmers saying the phrase "Well, I'm Not a Designer…". It's true if it used in the correct context, but a lot of programmers use it to justify their poor user interfaces.

Well, if you are not a designer, stop making bad user interfaces and putting them into production 😁.

Face your fear

Some programmers developed a fear from user interfaces designing. This primarily because they tried to make interfaces without understanding the fundamentals of UI design. It's very hard to get a "good-looking" interface without understanding what makes a good design. With some basic UI design fundamentals, you would be able to easily make a usable and good-looking design.

Furthermore, learning a skill that you couldn't do gives you self-confidence and boost your energy to program.

Become more organized

Since I learned UI design, I have felt that I am more organized; after learning UI design you are like making everything neat, organized and good-looking. This is because some UI design fundamentals apply to any design in general (for example colours matching)

Poor UI, Poor application

Users see the interface; they don't see the code. Let's say you are a programmer who made a small application that users will interact with using a graphical user interface. As the application is a small project, you decided to design the interface yourself without help from a specialist designer. Even if the app is well coded, performance-optimized and supports a lot of futures, users might avoid it because of the poor UI design.

Moreover, if the interface includes a design mistake which affects the usability or accessibility of the website (such as poor colour contrast), your app might be completely unusable and therefore pointless.


That was my opinion about why every programmer should learn UI design fundamentals. Please share your opinion in the discussion section 😀.

Top comments (11)

Collapse
 
steelwolf180 profile image
Max Ong Zong Bao

I think the most important advantage is that it makes it easier for you to communicate with your designer. As sometimes you might not be the one who design the UI. but are the person who implemented it.

Collapse
 
baselakasha profile image
Basel Akasha

Absolutely, you also would be able to justify the designer choices.

Collapse
 
steelwolf180 profile image
Max Ong Zong Bao

Yup cause there will be times you might need to tell the designer this is not possible to implement. There will be time you might need to ask them, can you export the image to SVG instead?

Collapse
 
lakshmigandh profile image
lakshmigandh

Good one.
Can you please point some good links/tutorials or a learning path.

Collapse
 
baselakasha profile image
Basel Akasha

I have personally found Gary Simon's short tutorials useful:
youtube.com/watch?v=tRpoI6vkqLs

Collapse
 
cchana profile image
Charanjit Chana

I always refer back to this collection of tips from Steve Schoger: twitter.com/i/moments/994601867987...

He went on to write a book called Refactoring UI which completely changed how I approached designing and prototyping UIs.

Collapse
 
cherif_b profile image
Cherif Bouchelaghem • Edited

In reality users will see your code through the application behavior.
The UI is important for the end user for sure, UX and behavior are what make the UI valuable.

Collapse
 
baselakasha profile image
Basel Akasha

Yes indeed, I meant "physically" see your code 😁.

Collapse
 
stavshamir profile image
Stav Shamir

Ok, sold, but where do I learn it?

Collapse
 
baselakasha profile image
Basel Akasha

The Internet is full of online courses that teach UI design fundamentals.
I personally followed Gary Simon's tutorial on youtube:
youtu.be/tRpoI6vkqLs

Collapse
 
petoroland profile image
Roland Pető

Totally agree!