Why do we study Java at university?
This is a question I've wondered a lot as a young developer that just graduated from college. Why do schools teach Java in-depth vs something like C? A lot of my co-workers complain that there are no good C programmers anymore because schools no longer teach C in any real form.
For example, my first 6-8 undergrad CS courses were all in Java. Then I had exactly 2 courses in upper division that used C and C++, and the rest were in Java. That was it. A lot of students had to retake the C/C++ classes because nobody had introduced us to C/C++ or any concepts in C/C++. We were just expected to somehow program instantly in C/C++. Now you could say that once you learn a language, everything other language is more or less the same but a lot of my classmates had problems with pointers and memory allocation. I think I honestly spent half the quarter understanding pointers and memory allocation before I sort of understood it and even now I am not confident enough to say I truly understand it.
So why do schools do this? I've heard many developers say that going from C/C++ as a first language to Java is easy, but the reverse is much more difficult (This is also my sentiment). So why not do C/C++ first?