Maybe, what we really need is for this to become the rule, rather than the exception. I know every single one of you knows at least 1 co-worker who you can't figure out how they got into, or continue to maintain, their position. That one individual who can barely remember to take their next breath let alone do their job adequately. That person who makes your job more difficult than it already is because you have to put up with their simpering incompetence on a daily basis.
I work at a company, located in Washington DC, where we test all incoming developers prior to the interview and again during the interview and it has saved our employees from having the simpering idiots as I've described above sharing an office with them.
The first test is open-web (it says you can look up anything you want) and establishes the applicants general knowledge of their language of choice (Python, Perl, Java, C#, VB, or PHP). On a test like that it's an easy A, right? Most applicants leave the questions they don't know the answer to blank. That says one or two things about your perspective employee-of-the-month:
1. They don't read instructions and didn't know they could use google if they get stuck.
2. They didn't care enough to attempt an answer when it wasn't easy for them.
3. 1 & 2 combined.
Company policy is to immediately eliminate any applicant who doesn't answer all the questions. It only hurts us, and our employees, when we hire people who fit the above.
The second test, done during the interview, tests a person's ability to think on their feet and work in a group environment. As a web company, you'd think people who apply would be able to write a little HTML, right? Well 90% of our applicants who make it to the interview screw up a simple table in HTML! A three-cell HTML table, one red, one green, one blue. One has a rowheight of 2. There's also a simple SQL test and a simple debugging test. AND WE GIVE HINTS! They can ask us any questions they want, up to and including "how do I do it?" We've actually hired a person who asked just that!
Bottom line is that any schmuck can print out a resume and call himself a programmer. College degrees for programming are a joke. Either you need strict guidelines for who can call themselves a programmer (think of the guild system for electricians, plumbers, et al) or you need to have testing to separate the wheat from the chaff.
And on the note of company culture, we were voted the best small business of the year for 2008 in DC, have practically 0 turnover in development, and by far the absolute best company culture I've ever seen. I may sound fanatical at this point and honestly I am because my company does everything they can to keep good people here and bad programmers elsewhere.
"And remember: Evil will always prevail, because Good is dumb." -- Spaceballs