Disagree. This is a false limit, and a false criticism rooted in ignorance and lack of experience. I don't know what else to say other than as a designer with a CS degree, I actually take offense to this statement. I know how much greater value I offer and would like other designers and programmers I work with to reach similar levels of integrated skill.
Specialization is for the industrial revolution—the technological age requires expert polymaths.
Designer have lots of skills, so much that even they have to specialize often along additional axises that might not even be obvious to us (motion or color design as a specialization of visual). We are happy to just get one who has promising design skills, and most of the designer+programmers I've interviewed just don't even come close, sorry.
How many programmers can draw? Is it a hiring requirement?
But the worst UI designer I ever worked with knew how to draw pretty pictures and utterly refused to view the web as a separate media from print. Technical constraints were utterly ignored as were, frankly, a number of business constraints (Which is what really got him in trouble). A total failure.
Knowing the stuff that goes on around your UI is actually an asset. And knowing the tech deeply enough to code it is of immense value. Of course you still have to be good at your core craft.
Designers do understand the domains they are working in, otherwise they aren't very good. The developers are not that far away, so there is interaction if the spec goes somewhere where they can't (hardware constraints for phone UI, for example). On the other hand, knowing how to program would help a designer check the dev's bullsh*t that something can't be implemented, and they are just being lazy or toxic.
The reason I expect a good designer know something about the media they are working in is because this is been very traditionally part of the job. Designers have been expected know what inks can and can't be reproduced on which materials. Or which printing process will be most economical etc.
As you point out only the truly bad ones don’t know the baseline capabilities of their platform be it app or web design...
But for as for the good ones, that do know their media, - well, I don't find it odd that some would find the best way that they could learn the constraints of their media was to play around with HTML and CSS directly (or Interface Builder). And I do think that people who have of done that are actually a bigger asset that's than people who have just read up. I assume this is because they have a more visceral feel for the costs of their designs.
This does not mean that I expect my designers to code, or do production work. It just means that those designers who are capable of hacking out a toy system seem to be more capable of designing things that implement easily. And that saves me money.
So ya, given simple web/phone apps where HTML/CSS or interface builder are relevant, you could expect designers to be more involved with tweaking production assets directly. But I've never worked on those applications before, and the technical barriers for what I have worked on are quite high; expecting the designer to participate in modifying code assets is a bit crazy!
As well they should: the greatest value programmers can offer is if they use their programming skill to improve other areas of their company or solve problems in a domain outside programming itself. It is an exponential sort of value increase. We need more programmer generalists, and we need to encourage and embrace them.
There's nothing but benefit for a designer to also pick up some coding skills or a developer gaining an appreciation of design and interaction. And I see no reason someone can't excel at both if they truly desire.
Perhaps the worst designers you've worked with did both, but don't let bad logic lead you to think that the best designers do not.
I guess you guys live in a hiring environment where good designer/programmers are easy to hire. For us, just getting good designers, or good programmers, is hard enough. The ones who claim to do both are not good enough at either to make it worth our time. We also suffer from a shortage of good designers compared to good programmers, so dev is always blocked on design and even if designers could code, they would never be given time to do so, they just so many other things to do! After a few years, their programming skills would become stale, and it would just be a waste. You sort of have to practice continuously to keep your skills up.