What an unfortunately brief article. The reason seems clear to me[+]: there are plenty of science students but not enough entry level "professional" jobs. Hence the long post docs, the multiple post docs, until the poor candidate gives up. Either we need more research labs and universities or we need to age scientists out. I would prefer the former, but who knows?
It is interesting to note two commonly repeated facts about academia, one of which you mention:
1. It is very difficult to get rid of aging professors with a low output.
2. It is fairly easy to get postdoc positions (but hard to get a permanent position).
In a way, you can argue that point 2 is a solution for point 1 -- with two postdoc positions (two years each, which is common at least in computer science) and a 4-5 year long PhD, you get 8-9 years of work from a candidate who is in his prime at the start and around say 30-32 years old at the end. After that, if you hired the candidate, you would only risk point 1, so why do that?
(I agree that it's incredibly mean to take 9 best years of a scientist while they work for a small wage, and then throw them away unless they are a genius. I think it's also important to keep in mind that while postdoc researchers face an extremely difficult challenge of getting a permanent position, they likely enjoy their academic work quite a bit. Postdoc/PhD are not exactly a "drain" in the same way a factory job might be.)
+ (but like many beliefs, a study is needed)