I've got a unique project that I am working on that I've received some good feedback on, and I think will be widely used by certain demographics. However, some of the coding required for it is above my skill level. I could probably take the time to learn the language required to get it going but 1) it may not be as effectively implemented as someone with a higher skill level and 2) I'd like to get it off the ground sooner rather than later. So my concern is, how do I go about hiring a programmer for this work and trust that he won't simply take my idea and create his own version of it?
1) Write a specification which describes the project, including a reasonable description of the completion state. Bug-free is not a valid description.
Hire a lawyer to write a work contract and NDA (non-disclosure agreement).
Require the programmer to sign the NDA before you discuss the project. You can give a general sense (a web based system to do e-Commerce). A professional will sign without any complaint. Look for a different person if they give you any grief at all regarding the NDA. The NDA is your primary means of protecting yourself if they share your idea with anyone else.
Once you have the signed NDA in hand, give them the specification and make sure they understand it.
Get a quote on how long it will take and how much it will cost. If it is too expensive, find a different programmer. You might have to offer a share of the company to get the upfront cost down.
After you reach an agreement sign the contract with them. They can now sue you if you don't pay, and you can sue them if they don't complete the work.
3) Profit