I agree that most companies get it wrong, but what is right? It seems like interviewing and recruiting is a field dominated by "sounds right, common sense" styles of thinking (like most HR) where there is no post-mortem of how well a candidate did in the next 6-24 months.
Even if you look at most MBA programs, the stuff on recruiting and interviewing aren't as research and evidence based as you would expect, and instead you just get spoon fed a bunch of best practices seemingly out of thin air.
I think programmers and technology companies in particular are very trend-following. For example, Microsoft decided to do some out-of-the-box questioning about circle manhole covers and suddenly tons of other companies had to have their own version. Google did CS algorithm questions, so everyone else had to have them also (even for jobs which use high level libraries like Java, C#, PHP, etc).