In terms of market and economy, I think it would be the same with staff and their specialties.
sometimes coaches will buy a staff member of a particular specialty, because it suits their need at the time. eg: PR Manager with Crowd invovlement if you have to play away games in the finals is a good example.
But to have that specialty all year round, sometimes it doesnt make sense. eg: Id rather have a higher level doctor, than a lower level with a specialty.
and the prices that you pay for those specialties/non-specialties is about right for staff. So it should be able to be implemented for players as well without too much of an impact of market prices.
I think if they made the skills hidden, it would defeat the purpose of the suggestion. But the benefits of the specialties would have to be made such that it did not influence the market too much - otherwise, as you said, people would just go out and buy all players of one specialty.
Thats why i like the staff specialties, because they are all applicable in various scenarios of the game, and as such, one type of specialty is never not used at some point by someone.
The specialties that have been suggested as well, are not always game-time enhancements, and as such would be hard to measure... I think it would be nice that if you could see what the specialty was, then at least you know for sure that that benefit is coming from that player, in some form or another.
having it hidden means your always guessing where the benefit comes from.
I dont mind having things in the game which are not easy to work out and require research and investigation, but to always be guessing i think is a flaw.