The three main ways of recruiting seem to be:
1) Job boards
2) Recruiters
3) Via network/contacts
They all have problems: Online job boards haven't evolved in the last decade, searching through them can often be a soulless painful experience.
Recruiters are nearly universally hated, expensive and often adding little value to the process (this isn't true about all recruiters; but seems to be true of the majority)
Network recruiting limits the scope of the search (both for candidates and employers) plus the additional risk of hiring someone because of who they know rather than talent (or rejecting them and damaging relationships).
So what are the alternatives, how can recruitment be improved (from both the candidate and employer viewpoint) ?
If one is looking for a specific narrow skillset, the best avenue is to go straight to where people hang out. For example, advertising a mainly perl job on jobs.perl.org. In general I have found that approach to be very high signal-to-noise.
The real problem I find is what to do with "soft" jobs like project management. The situation seems pretty dismal there.