Because computer science isn't about programming? That's exactly why a simple and elegant language should be chosen, one that allows to express the concepts that are taught. Java is such a horrible choice that it's laughable that it enjoyed this success at universities.
For programming related things (in general, everything non mainstream), I find ddg to be nearly unusable and I always have to go back to Google. The results I get on ddg are almost always only in the general area of the search terms, while Google gives me specific results that are relevant and helpful. Sadly that's why I can't switch as much as I want to.
I didn't say anything about areas whose research focus coincides with 'real-world needs', I specifically talked about programming languages and concepts. And no, universities should not teach micro services, enterprise Java code, or the latest frontend frameworks. But yeah, keep twisting my words around.
No, because this is computer science and not software engineering. The best introductory language is the one that allows to express the concepts that are presented in the cleanest way possible. If you want "real-world needs" then drop out and work for a software company. The purpose of universities is not to cater to the needs of industry - to pump out code monkeys.
It's a basic human right. People need to have access to clean drinking water, and if they can't afford it they still need to get it. "Nothing is free" simply doesn't apply here.
For me it was very difficult to setup/understand/use the following: build tools, dependency management, installing and using libraries, installing and using a specific library for working with unicode strings ("Camomille"), working with strings themselves, etc. I spent a couple of evenings on that and gave up because I just wasn't getting anywhere.
Sometime in the future I would like to use ocaml, but I found the user experience from 0 so difficult that I just didn't bother at all. Haskell was much friendlier.