It takes specialized knowledge to represent a photograph numerically, and most users rely on already written programs which do the translation from picture to numbers and back again. A word processor, for example, uses different numbers to represent each letter of the alphabet, as well as combinations of numbers to instruct the computer about type face, spacing, indenting, pagination, and the like. Programs which do this for computers are called software. Unlike things you can drop on your foot, software are translations and instructions for computers, and they are known by the functions they perform. Software is what computer programmers produce, and for most people, software is something that is purchased, shared or used, but not constructed, assembled or written.
Software programs are to computers what a score is to music.
They are the content and creative aspects of human endeavor. They make the hardware work through what is known as system operating software, though most people want to use the computer to accomplish specific functions and think little of the operating system. Folks can figure out what they want to accomplish much more easily then people can figure out how a computer could help them accomplish this task. Although there are some sets of instructions and programming language which are necessary to operate a computer and a network, by and large these functions should be transparent users. At least that is one of the goals of much software development.