> I don't know of any way to interview programmers which actually guarantees that you won't get a lemon, or even filters out most of the lemons
I don't think you have any guarantees and that the only way to know is to not be afraid to try. A probationary period or temporary contract with option to hire makes it much easier to learn from your hiring mistakes rather than being paralyzed by fear or making a mistake or stuck with a lemon