The purpose of computer hardware is to run computer software. There are thousands of new hardware and software products produced each year.
Software is a collective name, like hardware. It is all the instructions that guide computers. Software is made of electricity so there is no physical thing to touch. Instructions are organised into task lists called programs.
software and hardware
Hundreds of programs have to run on one computer to make it useful. There are application programs, library programs, kernel programs, driver programs and firmware programs. They all rely on each other to do their work. Application software talks to people and kernel, driver and firmware software talk to hardware. The types of software are shown in this diagram. The areas that touch each other show types of software that talk to each other.
The most interesting type of software to most people are applications. An application is a set of software programs that do a job for someone. An application that provides a service for customers is called a server.
Hardware is not created for its decorative qualities: computers are complex, temperamental and expensive. A customer buys hardware because he wants to run a few software products. A database application like MySQL is used for the particular purpose of storing data. A web server application like apache is used to dish out files to web clients.