You may well have a point. But: I know several people with a degree in linguistics and while it may help them to have a better idea of the structure and deeper understanding of languages in general it doesn't seem to help them at all in day to day communications with people in other languages. They tend to get hung up at the details of grammar and the finer points of sentence structure whereas what matters is to keep up the flow of information. Function over form any day. You see the same with music: people that know a ton of music theory can be very good musicians. But there are plenty of musicians who have a fairly shallow understanding of the theory but they pick up an instrument and start making music rather than to wonder about the theory behind it.
Language and music have a lot in common in that respect, it's perfectly possible to be proficient at either without having a very deep understanding of the theory as long as you are willing to put in the hours, and having that deep understanding is - as far as I've been able to discern - absolutely no guarantee for being good at making music or communicating with other people. It may help some but I doubt that it is the kind of thing that works for everybody in the way that you assert. It's hard enough to get kids to learn a new language, even if it has some direct applicability. Getting them to learn an abstract science which lays a foundation that they then may be able to apply to learning another language may well be one demand too many.
Still, for whoever it works it may be worth the extra investment in time and effort.
>it doesn't seem to help them at all in day to day communications with people in other languages.
Humanities sorts are terrible at communicating with those who are not humanities sorts, just as most doctors and lawyers are terrible at communicating their specialties to the laymen. I am not talking about studying linguistics to the ends of getting a degree in it but in a more pragmatic sense, if you want to learn a bunch of languages than it is very useful to learn what all those languages have in common so you do not have to relearn the same thing in new contexts, you just learn the contexts.
>Language and music have a lot in common in that respect, it's perfectly possible to be proficient at either without having a very deep understanding of the theory as long as you are willing to put in the hours
They do but becoming proficient is different than success. Satie and Bukowski were proficient but not at all ignorant but plenty have success while being ignorant. It is that pragmatism thing again, what are your goals, learning music theory will probably not help much if you want to become a success in a popular music genera but it could be very useful if you want to become a success across genres. Where do you want to shift the ignorance and the knowledge? what will be of most use to your goals.
So, that may not be what you are talking about when you 'talk about studying linguistics' but - and this is in a way very funny because it is exactly the point of this whole discussion and yet we seem to have a misunderstanding right there - it is what other people will interpret when they say that you should 'study linguistics'. Maybe not to the point where you'd get a degree in it but even as an extra field during your high school studies.
And in my experience your CS degree example simply fails: CS does not prepare you at all for dealing with the various programming languages and their implementations of various concepts. The parts of CS that would apply to that bit you can pick up in a few weeks by reading some books and even then you're going to be dealing with implementation details most of the time by the time you want to apply that knowledge.
If you understand variables, assignment, control structures (if, for, while, pattern matching etc) and abstraction mechanisms (subroutines, functions) then you've got the bulk of it. But it isn't going to help you more than a little bit in tackling a mid sized Java, Rails or C++ project.
If you were going to design a new programming language or write a compiler for an existing one then it may well help, and also if you are going to be working on novel data structures or to try to improve what's already there.
Being a linguist or studying linguistics may well help me to read works in dead languages or maybe to analyze other people's writings. Because that's the kind of stuff that I see the linguists around me do that seems to actually use their skills.
If there would be a single bit of advice that I could give to someone that intends to study multiple languages then it would probably be: take a year or two of Latin. Even though it is a dead language that little bit of foundation will help you gain a much easier entrance into other languages all over Europe (if those are the languages you intend to learn).
If you are going to study in language areas outside of that region, say Asia then I have no idea what would help other than to move there an immerse yourself for a couple of years.
Language and music have a lot in common in that respect, it's perfectly possible to be proficient at either without having a very deep understanding of the theory as long as you are willing to put in the hours, and having that deep understanding is - as far as I've been able to discern - absolutely no guarantee for being good at making music or communicating with other people. It may help some but I doubt that it is the kind of thing that works for everybody in the way that you assert. It's hard enough to get kids to learn a new language, even if it has some direct applicability. Getting them to learn an abstract science which lays a foundation that they then may be able to apply to learning another language may well be one demand too many.
Still, for whoever it works it may be worth the extra investment in time and effort.