Here's some advice for anyone that ever needs to hire a programmer: Stop focusing so much on years of experience. I think this advice is probably fitting for almost all jobs, but I'm certain that it is for programmer positions.
The other day I was writing up the description and requirements for a job opening and I decided to start by going online to see how other companies do this. I was annoyed to see that almost every job posting for a decent programmer required at least five years of experience using a specific programming language.
Let me make this very clear. For any halfway decent programmer, anything beyond 6 months of experience with a specific language is meaningless. All programming is more or less the same so you should focus on the applicant's understanding of basic computer science principles rather than how long they've been using PHP, ASP, C++, or whatever. The only people that get significantly better with a programming language over five years are people that don't actually understand basic programming. By focusing on that requirement, you're effectively admitting that you won't be hiring a good programmer.
Additionally, I would suggest that focusing on any type of experience is generally a mistake. In most industries, anyone that is really good at what they do will advance quickly so they'll never be applying for the job they had five years ago. If you want someone with five years of project management experience, that means you won't get any employees that are good enough to be promoted beyond that role after five years. If they were a project manager five years ago and they still are now, that means that they aren't extraordinary (or they just really love project management, but that's rare I think).
If you need to make a conservative hire, this is fine. Take the safe pick and accept the lack of upside. But if you're trying to find unique talent, requiring five years of experience almost guarantees that you won't hire any of the best people (because after five years they've already been promoted beyond the job you're offering). If someone has only been doing something for two years, they're more of a risk, but at least there's a chance that they are an elite talent.
I'm not saying that experience should be ignored when hiring. I'm saying that it should be one of many things that you consider when making a personnel decision, and setting strict requirements will just keep the truly great candidates from applying.