I’ve been programming commercially for 32 years and in all that time, I have found very little correlation between age and ability to deliver quality software.
I have worked with younger, inexperienced, and uneducated programmers who were willing to learn, with minds like sponges and who were a pleasure to work with. They often found or thought of things the rest of us overlooked.
I have worked with younger, inexperienced, and well educated programmers who thought they knew better and were obstacles to progress.
I have worked with older programmers with the same one year’s experience 22 times. Oy.
I have worked with older programmers with excellent domain knowledge and limited technical range. Their personality and willingness to succeed were often the key to progress.
I have worked with older programmers with excellent technical range and limited domain knowledge. Sometimes it’s hard to teach an old dog new tricks, but when you can, results can be golden.
I have worked with brilliant older programmers with extensive experience and open minds. The best of all worlds.
(By the way, I have also worked with programmers of many ethnicities, female, handicapped, gay, Republican, religious, even left-handed, and have found little or no correlation between their “description” and their “performance”. One of the beauties of programming is that the easiest way to evaluate your performance is through your work itself and not much else.)