If a two week trial period is "expensive" to you, you don't have the budget for someone in that pay range.
A programmers who is currently employed but thinking about moving on probably won't agree to a two-week trial period because of the substantial risk that they get rejected afterwards and end up unemployed. That makes the trial period expensive to him. In turn, it makes it expensive to the employer as well, because you'll filter out good people.
Provide the candidate with a PC representative of what you'd give to him/her during the course of his/her's employment and assign an ~one-hour-long programming assignment to complete while you sit nearby.
If the candidate needs a particular program (e.g., "I don't like Vim. I prefer to write my code in VILE!"), then give it to 'em.
As for coding during the interview, I can't concentrate (get in the "zone") even when my wife watches me behind. So it is not about the stress, but the way how a programmer works.
Each of those people are important to have depending on the companies situation and that's why no one interview process works for all programming positions.