Nonetheless, even with the best available hardware, a computer is nothing more than a heater without software.
Software is the specification of how hardware components should operate. In a more specific definition, software is the specification of how a processor in a computer should operate. Of course, many computers now have multiple processors, therefore the definition should be updated to say ``the specification of how processors in a computer should operate''.
At the core hardware level, processors can perform certain operations like addition, subtraction, multiplication, division and many other mathematical functions. However, such operations are useless until they are performed in a logical order. Software is the component that specifies how operations should be performed in a logical order to accomplish specific tasks.