1. A method of providing a compiler interface, the method comprising: generating compiler requirement data at a computer, wherein the compiler requirement data indicates a required compiler and a required platform; selecting a machine in accordance with the compiler requirement data using a virtual compiler disposed upon said computer, wherein the selected machine is one of a plurality of machines connected to a network, wherein the machine is selected using said virtual compiler disposed upon said computer by querying the network in response to receipt the compiler requirement data, and the machine is selected by said virtual compiler disposed upon said computer on a basis that it has the required compiler installed to run on the required platform; and sending source code by said computer to the selected machine for compilation.