A computer implemented method of printing includes the steps of: (a)
providing a computer server linked via one or more data links to a
plurality of printers, where the computer server has access to
identification information, location information and configuration
information pertaining to each of the plurality of printers, where the
configuration information includes information to ensure each of the
plurality of printers is configured to correctly print a print job; (b)
initiating a print job on a user computer device, where the print job
includes print data; (c) querying the computer server by the user
computer device for one or more available printers; (d) transmitting
identification information and location information of each of the
plurality of printers by the computer server to the user computer device;
(e) displaying identification information and location information in a
list of the plurality of available printers on a user interface operating
on the user computer device; (f) selecting by a user one of the plurality
of available printers in the list; (g) transmitting the selection to the
computer server; (h) transmitting configuration information for the
selected printer by the computer server to the user computer device; (i)
configuring the print data by the user computer device with the
configuration information; and 0) transmitting the configured print data
from the user computer device to the selected printer for printing on the
selected printer.