How do you know this? Have you been in a good position to evaluate the performance of many older devs? If so, how much diversity in languages/environments is in your sample?
Most of the negative attention I've gotten from younger devs in work settings has been in the form of constant interruptions for me to use keyboard shortcuts. 1) It's very disruptive to the discussion at hand. 2) It's never been an actual problem. 3) It's always couched in impatient and negative emotional tones. 4) It makes it harder for others to follow what you are doing, if you are always concentrating so hard at going fast. 5) It's always seemed like a pointless attempt by young people to seem like fake hackers on TV.
Chris Granger famously observed that programmers who said "I never use the mouse" use it about 50% of the time they're actively programming.
But I kept that for myself despite the itch to insist on telling him to use the damn shortcut instead of going to the menu each time. After all, he was as productive as the younger ones as far as quantity was concerned, and more productive as far as quality was concerned.
Your mouse thing is funny, it makes me think of touch typing evangelist maniacs. They probably allot a specific budget for spare backspace keys. In my experience, that's the key they use the most.
Are you sure? I had a coworker who was a fellow Smalltalk consultant. At the time he was just out of college and in his 20's, but he deliberately didn't use any OS keyboard shortcuts. Our company's development environments ran transparently cross platform on eight different OS, so to keep himself from stumbling when out in the field, he only used the cross platform UI commands.
So perhaps your coworker didn't want to spend extra effort on Ctrl-C Ctrl-V because he wanted to preserve muscle memory for another system? (OS X?) Did he normally work in Emacs? Or maybe he's just jaded.
But I kept that for myself despite the itch to insist on telling him to use the damn shortcut instead of going to the menu each time. After all, he was as productive as the younger ones as far as quantity was concerned, and more productive as far as quality was concerned.
Good on you! It's the output that matters. And if one can't have a modicum of patience while collaborating/pair programming, then that's a sure sign of an opportunity to learn something valuable and powerful.
touch typing evangelist maniacs. They probably allot a specific budget for spare backspace keys. In my experience, that's the key they use the most.
I'm constantly amazed at the degree to which young people in the Bay Area pay attention to preference signalling. It's like they think it's some sort of divine oracle or moral imperative in and of itself!
What I'm referring to is people whose skills are all in, say, Microsoft C based GUI programming and who have not updated their skills at all. They're stuck on one tool and that tool is old.
You see younger devs who get stuck on tools too, but their tools are more likely to be up to date and therefore their skills are more marketable.
One group has continued to learn and keep up with their skills. These developers are extremely skilled and experienced and can in many cases be far more productive than younger developers with more shallow knowledge. What they lack in appetite for workaholism they make up for in ability to do more with less work and avoid fads and dead ends. They also tend to have a deep conceptual understanding of the entire stack all the way down to the metal, which younger developers often lack unless they're the super-prodigy type.
The second group decided at some point that they knew all they needed to know, and they've gotten really rusty and out of date. When coupled with higher salary demands and less time flexibility, this latter group really are at a huge disadvantage vs. younger developers in the labor market.
Here's the trouble and the source of a lot of the age bias IMHO.
The first group are seasoned black belts and are exactly the kind of devs you want if you are doing seriously deep ground-breaking stuff or if you want quality. In other words if you are really innovating. Ideally you'd probably want a mix of really experienced devs with a lifetime of experience and younger devs that might bring some new perspective, but you'd certainly want at least some of the former on the team to keep the latter from chasing fads and implementing badly thought out junk.
Problem is that most work isn't this. Most work is CRUD-slinging and prototyping and cobbling ready-made modules and services together. That kind of work does not require the deep experience or skill set of the first group.
In other words: seasoned "black belt" developers are over-qualified for most mainstream programming work.
Now throw in the fact that your over-35 developer wants a higher salary, likely has kids and actually wants to see them, etc.
It just makes sense for a lot of shops to recruit cheaper younger developers right out of school who have a lot of time on their hands and who know how to do standard types of work with the latest tools vs. older more expensive developers who know everything and can implement exotic algorithms and close to the metal stuff you probably don't need.