Newsgrouper 🗨 💬 🗯 💭
From: HenHanna@NewsGrouper <[email protected]>
Newsgroups: rec.puzzles,comp.lang.lisp,comp.lang.misc,alt.foobar
Subject: Re: Snarge, Snafu
Date: Mon, 25 May 2026 17:14:29 GMT
iirc, Some Programmers in Japan have a hard time thinking of
function names and end up naming their functions
function1, function2, function3, function4,.... (very unhelpful naming)
David Entwistle <[email protected]> posted:
> On Sun, 24 May 2026 20:18:22 GMT, HenHanna@NewsGrouper wrote:
>
> > FUBAR
>
> Does anyone know the origin of the similar(?) foobar, which finds its way
> into computer programming literature? Usually as a function name, where
> the details are unspecified, or separate boolean variables foo and bar.
>
FOOBAR is less common among Python and C++ crowd???
_____________
Yes, the computer science term "foobar" (and its separated forms "foo" and "bar") is widely considered a playful corruption of the World War II-era military acronym FUBAR. [1]
However, the complete history of how these [metasyntactic variables](https://en.wikipedia.org/wiki/Foobar) evolved is actually a mix of military slang, 1930s comic strips, and early hacker culture. [1]
## The Timeline of "Foobar"
* 1930s (The Cartoon Era): Long before computers, the nonsense word "foo" appeared frequently in the popular comic strip Smokey Stover by Bill Holman. The cartoonist used it on car license plates and in background signs (e.g., "Where there's foo, there's fire"). This popularized "foo" as a generic nonsense word in American English.
* 1940s (The Military Era): During World War II, American soldiers coined the vulgar acronym FUBAR, which stood for "Fucked Up Beyond All Repair" (or "Beyond All Recognition") to describe chaotic or broken situations.
* 1960s (The MIT Hacker Era): The term officially entered computer culture through the Tech Model Railroad Club (TMRC) at MIT. The students, who were among the world's first computer hackers, combined the existing nonsense word "foo" with the military slang "FUBAR" to create "foobar". They split it into two separate placeholder names—foo and bar—to represent generic components, variables, or functions. [1, 2, 3, 4, 5]
[1] [https://forum.arduino.cc](https://forum.arduino.cc/t/why-most-of-people-using-foo-a-name-of-variable/75200)
[2] [https://softwareengineering.stackexchange.com](https://softwareengineering.stackexchange.com/questions/221/whats-the-origin-of-foo-and-bar)
[3] [https://swetava.wordpress.com](https://swetava.wordpress.com/2013/10/31/the-origin-of-foo-in-computer-programming/)
[4] [https://medium.com](https://medium.com/@sohail_saifii/i-found-the-real-reason-every-tech-tutorial-uses-foo-and-bar-44fa9acf4427)
[5] [https://www.facebook.com](https://www.facebook.com/groups/cs50/posts/1660341007446271/)
[6] [https://www.reddit.com](https://www.reddit.com/r/computerscience/comments/1snv3a5/why_are_foo_and_bar_the_conventional_dummy/)
[7] [https://medium.com](https://medium.com/@brij2097/foo-bar-and-the-adventures-of-nonsensical-variables-from-military-chaos-to-programming-fun-e07da4d19ddf)
[8] [https://www.munish-mehta.com](https://www.munish-mehta.com/post/who-is-foo-bar-and-baz/)
[9] [https://www.quora.com](https://www.quora.com/Who-invented-the-software-meta-names-foo-and-bar)