>The question we should be asking is why talent doesn't seem to increase with age as much as we'd like.
Wrong question, I think. Talent does increase with age, at least if the developers in question actually care enough to stay current. [1] I don't think it gets better by orders of magnitude, though -- the mythical 10x-20x programmer starts out as a 5x+ programmer. I know I was already at least that much better than most of my coworkers when I got my first day job.
What does happen is that developers are less willing to work crazy amounts of overtime just to impress management, and it's overtime bias that's the real problem.
I just blew away a team of two developers (both much younger) who had been working on a project for 9+ man weeks, catching up and passing them in less than two calendar weeks of development (on an implementation of the same code on another platform). And I did it in 30-40 hours per week. At a "traditional" company that rates performance by the number of hours each developer sits at their desks, I would have been the worst performer, and it's only the fact that I was doing almost exactly the same thing as the other team that made it clear I was getting more work done in less than half the work hours.
The corollary is that, as a young programmer, I cost the same as an idiot who couldn't put two lines of code together without creating three bugs, but I was already at least 5x as productive as that idiot (well, infinitely more productive than some developers I knew back then...). But now I have a track record and I make a lot more money; if I'm as good as 3-5 typical programmers, 3-5x the average starting salary is a bargain (considering reduced overhead, management, and increased chance of project completion because of reduced complexity).
But most companies don't recognize that, so they'd rather hire and manage 3-5 young developers for "cheap" who are willing to work lots of overtime. If they get at least one who's good, they may get more than their money's worth. Otherwise they're likely to end up with a project that's late, has tons of preventable security issues, and that is harder to extend than if they'd hired the expert.
That's what's broken. As to how to fix it: Would be wonderful if there were some verifiable way to rate programming skill, but until someone comes up with a system that can't be gamed, I don't see how.
[1] I've known many developers who effectively "give up" on learning new things at some point, and from that point on their skills rot (and/or they become managers). The ones who keep learning don't seem to hit a "skill wall", at least into their 50s, where my sample size drops precipitously.