What does "ad hoc" mean in programming?

The term "ad hoc" is used in programming. What exactly does it mean?


"Ad hoc" is a Latin phrase that can apply to anything, not just programming specifically.

It means something that was made up on the fly just to deal with a particular situation, as opposed to some systematic approach to solving problems.

Regarding programming specifically, it's probably similar to what Joel Spolsky recently called duct tape programming.


It basically means writing some quick and dirty code without the intention of reuse. User-entered queries are usually the main example. Another common occurrence is a utility to convert data sets from 1 form to another, which will have no use when the conversion is done.


Generally meaning improvised / impromtu / made up on the fly, such as ad-hoc reports or queries. Not pre-determind / pre-meditated


  1. Formed temporarily for a specific, non-continuing purpose, as an ad hoc committee on ice removal.

  2. Impromptu, not planned, improvised, as an ad hoc attempt to remove the ice with a screw-driver.


The antithesis of "ad hoc" (which means, "specifically for this") might be "commercial off-the-shelf" (COTS) software, which is written to solve a general category of problem (e.g. word-processing or book-keeping) for several possible customers.