What the foo really means

When I started reading over internet about programming (mainly for php) I was facing the word “foo” all the time. A lot of times I asked myself “what foo really means” and I supposed that means nothing with specific sense.

1. interj. Term of disgust.
2. Used very generally as a sample name for absolutely anything, esp. programs and files (esp. scratch files).
3. First on the standard list of metasyntactic variables used in syntax examples

foo is used as a place-holder name, usually in example code to signify that the object being named, or the choice of name, is not part of the crux of the example. foo is often followed by bar, baz, and even bundy, if more than one such name is needed. Wikipedia calls these names Metasyntactic Variables. Python programmers supposedly use spam, eggs, ham, instead of foo, etc.

When foo started to be used?

I seems that the word ‘foo’ itself had an immediate prewar history in comic strips and cartoons. The earliest documented uses were in the Smokey Stover comic strip published from about 1930 to about 1952. Bill Holman, the author of the strip, filled it with odd jokes and personal contrivances, including other nonsense phrases such as “Notary Sojac” and “1506 nix nix”. The word “foo” frequently appeared on license plates of cars, in nonsense sayings in the background of some frames (such as “He who foos last foos best” or “Many smoke but foo men chew”), and Holman had Smokey say “Where there’s foo, there’s fire”.

According to the Warner Brothers Cartoon Companion Holman claimed to have found the word “foo” on the bottom of a Chinese figurine. This is plausible; Chinese statuettes often have apotropaic inscriptions, and this one was almost certainly the Mandarin Chinese word fu (sometimes transliterated foo), which can mean “happiness” or “prosperity” when spoken with the rising tone (the lion-dog guardians flanking the steps of many Chinese restaurants are properly called “fu dogs”). English speakers’ reception of Holman’s ‘foo’ nonsense word was undoubtedly influenced by Yiddish ‘feh’ and English ‘fooey’ and ‘fool’.