Home / Definitions / Program


Webopedia Staff
Last Updated February 19, 2024 1:38 am

What is a Program?

A program is a piece of code or set of instructions that tells a computer how to perform a task. To use an analogy, a program is like a computer’s recipe. It contains a list of ingredients (called variables, which can represent numeric data, text, or images) and a list of directions (called statements) that tell the computer how to execute a specific task.

Examples of programs

Here are some real life examples of programs you might already be familiar with.


Malware is a great example of a program in action. Malware is malicious code that tells a device to behave in a certain way. It has no user interface, because it’s not designed for the end user; it interacts directly with the device only.

Web browser

Web browsers are also a type of program. A web browser interacts with your computer, enabling it to locate and read web pages.

How programs are created

Programs are lines of code written by a human, and subsequently read by computing devices.

Programming language

You can create a program by using specific programming languages such as C++, Python, Java and Ruby. These are high level programming languages that are human-readable and writable.

Machine language

These languages are then translated into low level machine languages capable of being understood by computers. This transalation is done by compilers, interpreters, and assemblers within the computer system.

Assembly language is a type of low level language that is one step above a machine language and technically can be written by a human, although it is usually much more cryptic and difficult to understand.

Programs vs. software

In simple terms, software is the final version of a program. It also tends to be much more complex than an individual program.

Software normally consists of numerous programs that work together to create applications and computer systems. So compared to individual programs, software is usually more complex.

Software is also designed to be a tool for end users, therefore it has a dedicated user interface. It will have gone through the compiling, testing, and debugging process before it is complete. This means that the program is already in machine language it has been assembled and is ready to execute.