FizzBuzz golf challenge ...
golf.shinh.org
golf.shinh.org
We use the FizzBuzz (or equivalent) test to get candidates warmed up to the interview, thinking about programming and design and technical issues. A good 60% can't even get it working, so that lets us terminate the interview early. For the remainder, we ask various technical questions that arise naturally.
On of the questions we sometimes ask is this: Suppose you're trying to fit the code on a really small embedded processor. In truth, of course, you'd have to write it in assembler, but let's assume we already have a C interpreter. How small can you make the code?
This isn't a stretch. Some of the systems I used to work on were small (in implementation) for exactly this reason. We wrote a miniature interpreter, then wrote the working code in something nicer to program in. It was possible to save overall space that way.
The ROM in the BBC micro had a built-in BASIC interpreter (of course), but if you look closely, some of the OS on the ROM were written in BASIC. I've been told it was for reasons of space.
I've just invented a language where if you give it an empty source file, it produces an executable that (the challenge's requirements). Here's the source... ""
Zero characters.
(It's not funny any more, if it ever was.)