If you’re considering getting into UX design or are already a UX designer, you might wonder how much you need to know about programming languages. While you won’t be coding, you will be communicating with developers in your UX design career.
To help you understand the role of a developer – and to work alongside them – we’ve compiled a list of the most common programming used by developers. But first, let’s talk about why you should learn about code and the types of programming languages you’ll hear about.
Do UX designers need to know how to code?
User experience design does not require coding. However, understanding the basics of coding can help you as a UX designer. Understanding how software development works gives you a better understanding of what’s possible, allowing for more efficient work and better designs.
Why should a UX designer learn about code?
Knowing the fundamentals of coding helps you design wireframes, prototypes and user interfaces that can actually be built. Then, you can communicate your ideas to a developer in meetings or in a design handoff. It’s important to add that including the fact that you can communicate with developers on your CV or during the UX interview process is a big plus.
Knowing the basics of coding may also give you a leg up in your job search. Many lean organisations and startups are looking for UX designers with multiple proficiencies. You may see more job opportunities that you’re qualified for if you understand the fundamentals of coding.
What types of programming languages should UX designers know?
There are a few different types of programming languages that you may want to be familiar with as a UX designer: front-end, back-end and mobile. Mobile programming languages are used to create apps for devices like smartphones and tablets.
Some languages can be used for both the front-end and the back-end too. The front-end and back-end are a bit more complicated, so let’s explore those more.
What is the front-end?
The front-end is the part of an application or website that users directly interact with. Sometimes, the front-end is also called the client side. The client side refers to anything that is displayed or run on the “client,” a.k.a. the user’s device. The front-end, or client side, includes everything the user sees – images, text, videos and user interface – as well as any actions that the user interface performs within the user’s browser or native operating system.
What is the back-end?
The back-end is the part of a website or application that is run on the server. It’s also often called the server side. The back-end includes the rendering of dynamic web pages, database interactions, identity authentication and push notifications. Users never interact with the back end.
7 programming languages UX designers should know
We’ve rounded up the seven most common programming languages that designers will see at work. Understanding how these work will allow you to create better designs and communicate more clearly with your team.
Used for: Front-end development
If you’re working with web developers, you’re guaranteed to see HTML come up. HTML stands for Hypertext Markup Language. It’s used to create website structure and basic content like headings, paragraphs, quotes, images and structure. You can think of HTML like the skeleton of a website.
Used for: Front-end development
CSS, a.k.a. Cascading Style Sheets, is a standard markup language that’s usually used in conjunction with HTML. CSS controls colours, font size and other visual aspects of a website. It’s a standard markup language. CSS tells the browser how HTML should be displayed. CSS is like the clothing of HTML’s skeleton.
Used for: Front-end development
Used for: Front-end and back-end development
Used for: Back-end and mobile development
Used for: Back-end development
PHP, or Hypertext Preprocessor, creates dynamic content on web pages. If you ever work with a WordPress-based website, you’ll come across PHP. Wikipedia and Facebook also run on PHP.
7. Objective-C or Swift
Used for: OS X and iOS application development
Objective-C is the primary language used for native software on Apple products. This includes OS X, their desktop operating system and iOS, their mobile device operating system. Swift is a newer programming language that can also be used to create apps for iOS devices. It was created to make developing for iOS easier and more accessible.
How to learn coding fundamentals for UX design
Now that you have a brief overview of the types of programming languages, the most commonly used languages and why you might want to know them, you might have a better understanding of the work that your current (or future) teammates do every day. Learning how to speak their language will make both your and their jobs even easier, saving everyone time in the design and developing processes.
The UX Design Institute’s Software and Coding Fundamentals for UX Designers is the perfect next step. It breaks down the work of the developer, allowing better communication between the design and development teams.
Karen, a former graphic designer, signed up for the course when she completed the Professional Diploma in UX Design and landed her first UX role. She was a few weeks into her roles as a Product Designer when she realised that the needed to know more about the development side of things:
“I had been in my Product Designer role with Salud Dental for a couple of weeks and when I was collaborating with the software developers, I realised that I had very little knowledge about how they worked, the programmes they used and what they used them for. It was all new to me and I did my own online research to find out more.
And then, as if by magic, the UX Design Institute got in touch with me because they were doing research for a new course on understanding software specifically for UX designers. I jumped at the chance to participate on the first course and it was exactly what I needed.”
She believes that by understanding the fundamentals of coding, she has enhanced her design skills too:
“My confidence has completely improved. The software course knowledge means that when I’m designing new features and products I’m confident when having technical conversations with developers and also asking them to give me feedback.
As a result, I’m confident that what I produce is not just surface level – there’s actually a lot of depth to what I’m doing.”