I recently met someone with a great business idea who has done a lot of research and wants to start a company. When I was in a similar situation last year, my two big questions were: 1) how do I find a programmer, and 2) how do I find investors? I don't know if I have the perfect answer to these questions now, but I can at least share my recommendations from my own experience. (If you've started a successful company before, have access to angels or VCs, or are a programmer, this post doesn't apply to you.)
Last year, I thought my best choice was to find a developer who would work for free in exchange for 50% ownership. If you have a friend who is interested, that's probably your best option. But if you don't personally know someone who's interested, it's very hard to find a stranger who will believe in you and your idea enough to work for free on it. There are a lot of people with business ideas, and most of them fail. Good developers have better options than risking their time on a venture that, statistically speaking, will likely go under without paying them anything.
So if bringing on a 50% partner isn't an option, then you need to raise money, right? I'd suggest that, if your idea is so great, spend your own money on it. (If you don't have money to spend, then you should probably work on your own financial management first - that's pretty essential to running a business!) You need to be confident enough in your idea and plan that you're willing to put a few thousand of your own dollars behind it. Figure out your minimum viable product, so that you're minimizing your risk, and come up with a marketing plan that you really believe in.
Now you've got a plan and you're ready to shell out some cash to make it real. Unfortunately, you're still not in a place to hire a good programmer. Chances are, anybody good will either want a stable job, or to work for a startup run by someone with a history of success. Instead, you can hire a contractor or outsourced development firm to build your product. Find someone who is used to working with startups - many companies and contractors these days are.
Once you've got your minimum viable product built, congratulations! Sell it, and prove yourself - make back the money you've invested so far. If you can do that, you'll be able to convince your friends and family to invest in your business. With their money, you can hire a good developer, since you've got more cash to pay up-front, and a proven model that will convince them to take equity for lower pay. When you're able to pay back your friends and family, you can decide if you can grow out of cash flow, or if you need to raise larger amounts of money from angels or VCs. If you want to go that route, you'll be able to get investment from good sources and at a good rate, since you've got a good track record.
I hope this is helpful for folks thinking about starting a business!