General jargon like foobar is not that far off in meaning from "unfinished software". I think it's possible there's not really a contradiction between the different sources. The "unfinished software" meaning in the NYT article might have just been an example of one possible use of a more general nonsense word.
Isn't it supposed to be fubar? fucked up beyond any recognition?
Yes that’s the original spelling & meaning. But using the spellings foobar, foo, bar, and sometimes baz, have been used for decades in programming as examples, temporary names, stand-ins etc. I just assumed that spelling it foo was meant to distance it from the curse word slightly while simultaneously making the pronunciation more clear (i.e. foo not fuh); foo just makes a good nonsense word.
I only just realized the z in foobaz stood for zork
not in code, the tradition has been two words actually, foo and bar
Note the Etymology of "Foo" RFC
[dead]