The best way to hire good programmers is by tapping into the network of the good programmers you already have. Everyone with a few years of experience has a short list of developers they'd like to work with again.
EDIT: sponsoring hackathons may be another way of finding great programmers. And don't forget the colleges in your area: if you have an interesting piece of technology you can show off, you can present a talk and hopefully get a handful of resumes.
Networking is a good strategy, but you have to temper it with interviewing and portfolios or it can turn into nepotism and a mushroom cloud of bad hires.
Hackathons and design contests like topcoder.com are great for employers but really bad for contestants, most of whom are left with nothing.
http://codeanthem.com might turn into something of an inverted marketplace where employers can compete for the attention of good programmers. (I'm not associated with codeanthem.com)
EDIT: sponsoring hackathons may be another way of finding great programmers. And don't forget the colleges in your area: if you have an interesting piece of technology you can show off, you can present a talk and hopefully get a handful of resumes.