Introduction to User Interfaces

A user interface is the means by which a person is able to interact with a computer system. You use user interfaces every day. Your smartphone has a user interface, your laptop or desktop computer has a user interface. This allows you to interact with your computer, such as by clicking/pressing on an icon to start up a software program.

Typically, your smartphone and PC’s operating system use the same type of interface. A Graphical User Interface. But lots of other devices and software programs use different types of user interface.

In this lesson, we’ll learn about:

  1. Text-Based Interfaces
  2. Speech/Natural Language Interfaces

1. Text-Based Interfaces

Once upon a time, the text-based interface was the only way we could interact with a computer system. Old operating systems would simply display a plain black background with white text on it and everything you did on that computer involved typing text commands to tell the computer what to do.

That’s exactly what a text-based interface is. It involves text on a plain background and requires the user to type in commands via a keyboard to input instructions.

Typically we don’t use this type of interface anymore, but you can find it in use in some places. For example, have you ever used the Command Prompt program on your Windows computer (or Terminal on your MAC)? If you have, you would know it looks just like the image below in figure 1.

A command line interface.
Figure 1: a text-based interface.

This is a text-based interface and is used by many technical computer users to perform complex tasks more quickly. However, it wouldn’t be a good user interface for most of us to use, as we wouldn’t know what commands to enter.


  • As it is just simple text on a plain background, it takes very little processing power to run. This makes it useful for really old computers.
  • If you know the commands, it is often much quicker to perform actions using a text-based interface. You don’t need to navigate between lots of windows and menus, just type in a single command.


  • The interface is not very intuitive to use as you need to know the commands to perform any action. These commands are not always obvious and require lots of training to learn.

Looking at the above examples can you see why more technical users might like a text-based interface? There are lots of commands in programs like Command Prompt that perform tasks, that would require you to navigate between loads of windows to perform in a graphical interface, but in the text-based interface is just one command.

Further Thought

The command ipconfig in Command Prompt will output all of your basic IP information in a single command. How would you get the same information using Windows’ graphical interface?

2. Speech/Natural Language Interfaces

“This is so sad! Alexa, play Despacito.”. You probably know the meme, but do you know this is an example of a speech interface? Yes, because the Amazon Echo is a smart speaker that takes commands (typically each command starts by saying “Alexa”) via a speech interface.

This is the idea behind a speech (or natural language) interface. Users will input commands verbally using a microphone. Output is often auditory too, such as with smart speakers, though not always.

For example, in-car satnav systems might use a speech interface to ask it to plan a route. This allows us to use the car satnav safely while driving, as otherwise we’ll be busy looking at a screen and pressing buttons which could distract us and make us crash.


  • It can be used more easily by people with visual impairments as it doesn’t rely on sight to use at all.
  • It can be used when hands are unavailable, such as while driving a car, or perhaps due to a mobility disability.


  • If there is a lot of background noise, this can interfere with the use of this interface as it can’t pick out our voice from the background noise.
  • It is limited in the complexity of tasks that can be performed, as technology hasn’t evolved enough to understand everything we say and so it can only perform a certain range of specific tasks.

As we’ve mentioned, this type of interface is heavily used in smart speakers to make it really convenient to perform tasks, like turning on some music or controlling smart home devices (like smart central heating). It’s also really useful for controlling in-car systems so we aren’t distracted by a screen when we want to plan a route, phone someone or turn on some music.

Further Thought

Where else might a speech interface be used that would be beneficial? Could a pilot use it on a plane? If not, why not?

Lesson Summary

So to summarise what we’ve learnt in this lesson:

  • A user interface is the means by which a person is able to interact with a computer system.
  • A text-based interface uses text on a plain background and you perform actions by entering commands typed in via a keyboard.
  • This requires little processing power and, if you know the commands, is quick to perform actions.
  • It is not very intuitive though as you need to know the specific commands to perform a task.
  • It is commonly used by technical users for performing certain tasks like network admin.
  • A speech/natural language interface uses voice commands inputted via a microphone.
  • This can be used easily by people with visual impairments and can be used when hands are unavailable.
  • However, background noise can interfere with its use and only a limited range of commands can be performed.
  • It is used in smart home speakers for convenience and in-car systems for safety.