What Is Computer Software? When you think of a computer imagine a machine made of two parts. The first part is the computer hardware, the physical parts of the computer that you can actually touch. Some examples of hardware are disks, monitors, boards, chips, etc. Hardware does all of the physical work of the computer, from memory storage to display. The second part, what we call “computer software”, acts as the brain of the computer, telling the hardware what to do and when and how to do it.
Think of a computer as a living being — in this example, the hardware would be the body, the eyes, the limbs, the lungs, etc. Computer software would be the mind, interpreting sounds we hear with our ears into recognizable symbols. The “software” in our brain would tell our other body parts how to behave. Both parts are crucial for the survival of the body. Computer hardware, any single part of a larger machine, is only ever on or off.
There are no other states of being for the hardware, and computer hardware operates on a system called “binary”. Computer software uses this binary code to tell the computer hardware what to do. Computer software translates our human input (clicking a mouse or loading a disk into a drive) into a language that the computer hardware can use to actually perform a function. As such, computer software depends on hardware to survive just as much as hardware depends on software.
Where Does Computer Software Come From? Computer software is usually created by computer programmers using a programming language. The programmer “learns” a programming language that the computer can use to command the hardware to perform a task. The computer programmer (or software engineer) writes commands in a given programming language tha the computer understands. These “languages” are not totally like languages you speak, but many of them use our language in a way that makes sense to the programmer.
Common commands in programming languages are things like “if / then” or “type” or “function”. These individual commands are called “code”. Another piece of software called a “compiler” takes the source code writen by a software engineer and translates it into the language that the computer understands. What starts as a series of translations results in activity at the software and hardware level of a computer known as a computer “program”. This is just another word for software.
Different Types of Computer Software Though there are any number of subsets of computer software, most of it falls into two main categories: “system software” and “application software”. System software means that a piece of software commands a piece of hardware to run so that the computer functions. Application software is what we call programs that do anything besides the basic operation of the hardware. While there are other “types” of software, most of them can be considered one of the above.