Abstract: Disclosed herein is a heating apparatus for a domestic or commercial building. The apparatus comprises a controller for determining whether there is a need for heating in the building and a computer system for installation in the building. The computer system includes a data store, a program store storing processor implementable instructions, and at least one processor coupled to the data and program stores for implementing the stored instructions to thereby produce thermal energy. The apparatus also comprises a thermal energy distribution means arranged for transferring the thermal energy from the computer system to at least one other location in the building, to a thermal energy storage means and/or to an industrial process. The apparatus is arranged to operate the computer system to implement processor implementable instructions, to thereby produce thermal energy, in response to the determination of a need for heating in the building.