The term "foo" - as well as "bar", "baz", "mu" and "qux" - are sometimes used as placeholder names (also referred to as metasyntactic variables) in computer programming or computer-related documentation.
When you do not want to use a real variable name (because the part of the program defining it has not yet been written) you substitute "foo". when discussing the program with other developers.
(not to be confused with the acronym "FUBAR" which stands for Fu***d Up Beyond All Recognition.