It could have something to do with universities in those regions attempting to teach marketable skills. My own experience in having been forced to learn Ada instead of C/C++ resulted in me only being able to find a job at defense companies. That quite often results in your job being classified so you can't tell prospective employers what you did or show them examples of your work.
That's funny, because various universities in the south west of Germany used to teach Ada in the mid 2000's. They did it because it was seen as an academically valuable language for learning how to program properly.
At least that's what I've been told by complaining students that switched to my university where we learned C, C++, MATLAB, assembler, and VHDL (not exactly software development).
Having graduated over 10 years ago, I've got some different opinions on what universities in Germany teach to people, and maybe what universities teach in general.
If you're in the science and engineering fields they mostly teach you mathematics. All the other skills you can acquire on your own. An opinion that has been at least anecdotally confirmed by a lot of self-taught programmers that I've met who were quite good at programming, despite never having seen the inside of a university. Of course this requires some extraordinary initiative from the individual to push themselves so far. So there aren't too many good self-taught programmers either. But still, they exist and can be quite good at what they're doing.
I suppose technically you can also tech mathematics to yourself using educational books, youtube, and so forth. But I've rarely met people who were good at mathematics that didn't have at least some form of higher education in their life time.
Anyway, these days even more than before I'm of the opinion that if you understand one programming language you'll have an easier time to learn any other.
Though I'd suggest learning a language that doesn't have automatic memory management with garbage collection out of the box, which in my experience has been the cause of a lot of pain when it comes to performance critical applications where memory and processor cycles are a commodity, we seem to have gotten to a point where most practical applications don't care any more. It's become mostly an embedded systems thing, where you'll have your specially trained "computer engineers".
What universities teach (Score:3)
It could have something to do with universities in those regions attempting to teach marketable skills. My own experience in having been forced to learn Ada instead of C/C++ resulted in me only being able to find a job at defense companies. That quite often results in your job being classified so you can't tell prospective employers what you did or show them examples of your work.
Re: (Score:2)
At least that's what I've been told by complaining students that switched to my university where we learned C, C++, MATLAB, assembler, and VHDL (not exactly software development).
Re: (Score:1)
Students: "We don't want to program properly, we want to get a job."
Re:What universities teach (Score:2)
If you're in the science and engineering fields they mostly teach you mathematics. All the other skills you can acquire on your own. An opinion that has been at least anecdotally confirmed by a lot of self-taught programmers that I've met who were quite good at programming, despite never having seen the inside of a university. Of course this requires some extraordinary initiative from the individual to push themselves so far. So there aren't too many good self-taught programmers either. But still, they exist and can be quite good at what they're doing.
I suppose technically you can also tech mathematics to yourself using educational books, youtube, and so forth. But I've rarely met people who were good at mathematics that didn't have at least some form of higher education in their life time.
Anyway, these days even more than before I'm of the opinion that if you understand one programming language you'll have an easier time to learn any other.
Though I'd suggest learning a language that doesn't have automatic memory management with garbage collection out of the box, which in my experience has been the cause of a lot of pain when it comes to performance critical applications where memory and processor cycles are a commodity, we seem to have gotten to a point where most practical applications don't care any more. It's become mostly an embedded systems thing, where you'll have your specially trained "computer engineers".