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.