Aside from explicitly stating "Hey, encapsulate IF/ELIF/ELSE statements in a FOR loop", FizzBuzz doesn't seem too analytical--am I wrong?
Aside from explicitly stating "Hey, encapsulate IF/ELIF/ELSE statements in a FOR loop", FizzBuzz doesn't seem too analytical--am I wrong?
I don't ask for correct syntax, an actual programming language, fret over the 100 being included or not etc. Heck I even ask them what the output would be for the "code" they just wrote and they usually get that wrong too! For a for loop and 3 arms of conditionals.
I suspect it is a standin for experience. You can get pretty far copying and pasting sample code you find on the net, maybe altering a number or two. (Or the far more telling commenting blocks of code out.) These days you can have something that appears to work by using project creators and tinkering, but not actually doing a reasonable amount of what could be considered older school programming.
Supposedly senior candidates with ten years of experience have failed this. It's truly amazing. "Oh, I haven't written code in a while" is a common response. That's a show-stopper, too -- what, you want to /manage/ me or something? And you can't write code? God forbid.
There's no abstraction, it's literally instructing the programmer exactly what to do.
take 100 $ zipWith (++) (cycle ["", "", "Fizz"]) $ cycle ["", "", "", "", "Buzz"]