I fear - as far as I can tell - that most undergraduate degrees in computer science these days are basically Java vocational training. I've heard complaints from even mighty Stanford University with its illustrious faculty that basically the undergraduate computer science program is little more than Java certification.
I think the trick with knowledge is to “acquire it, and forget all except the perfume” - because it is noisy and sometimes drowns out one's own “brain voices”. The perfume part is important because it will help find the knowledge again to help get to the destinations the inner urges pick.
By the time I got to school, I had already read a couple hundred books. I knew in the first grade that they were lying to me because I had already been exposed to other points of view. School is basically about one point of view -- the one the teacher has or the textbooks have. They don't like the idea of having different points of view, so it was a battle. Of course I would pipe up with my five-year-old voice.
The idea that hardware on networks should just be caches for movable process descriptions and the processes themselves goes back quite a ways. There's a real sense in which MS and Apple never understood networking or operating systems (or what objects really are), and when they decided to beef up their OSs, they went to (different) very old bad mainframe models of OS design to try to adapt to personal computers.
The result is - document destruction - we're really not going to be able to prove beyond a truth the negatives and some of the positive conclusions that we're going to come to. There will be always unresolved ambiguity here.