Sivers's post is a step-by-step guide to advertising and hiring, but it also serves as a good model for planning ideas and tackling achievable project milestones.
The most important point, perhaps: make sure to crystallize your idea, then simplify it down to a succinct assignment that a programmer can undertake. Sivers urges you to "Dream the big dream of everything your site/service/company might be some day, and write it all down. But then think of the bare minimum that would make you happy, and people would find useful." Sivers says to use this Version 1.0, broken down into even smaller milestones, in order to advertising for programming help.
Hire for Milestone 1 of Version 1.0
"Write down every thing you know this Version 1.0 needs to do. Every click. Every action. A long list of small simple things," says Sivers. To find a programmer you like, take the first milestone in your walkthrough, and treat it as a complete project. Advertise this as if it was a "start-to-finish project that sounds like a day's work, and mentions nothing else."
He suggests not only posting the advertisement on multiple freelance sites, but also hiring multiple programmers for the initial milestone. And then continue in a longer term working relationship with the one that works out the best.
Next Steps for Hiring a Programmer
Sivers describes these eight steps in designing a project's specs, then finding the right programmer for the job:
1. Reduce your big idea to "Version 1.0".
2. Write a simple overview of what it does.
3. Write a detailed walk-through of every click.
4. Break it up into milestones.
5. Make your first milestone a stand-alone project.
6. Post it on a freelance website.
7. Hire one from each.
8. Continue with the one you like best.
In addition to this overview, Silver's guide contains lots of important tips, such as how to quickly remove spammers from the responses you receive on the job boards, and how to clarify between getting source code and a functioning product on a development server.
What tips would you add - as an entrepreneur looking to hire or as a programmer looking for work?