And how about computer science?
CS is not a degree in web programming framework or DNN modeling framework du jour. Algorithms, data structures, linear algebra, and programming fundamentals do evolve, but gradually.
None of the languages I use at work existed when I was an undergraduate. Very nearly all the data structures and algorithms I use at work did.
Every time there was project work, we would be recommended using Swing or similar because that is what professors knew, but everyone used React because nobody hires Swing developers.
Someone once said "Our SQL professor's SQL knowledge is 10 years out of date. Probably because he has been a professor for around 10 years at this point" and that kind of stuck with me.
Of course, by then, it was antiquated.
it is good laughs how difficult finding documentation for homework is
The instructor was a phd student who'd never been in industry.
He kept correcting me about industry practices, telling me that I had no idea what the real world was like.
Very little coverage of tcp/ip in any of the courses. Language of choice in CompSci was Java at the time, which was reasonable as OOP was the rage.
Some compsci lecturers were very much of the opinion that computers got in the way of teaching Computer Science.
However it depends on the resources the univ got. In some places there were other less Comp sci / software engineering focused degrees but got a little content overlap (I guess for financial benefits to enroll more students) such as e-commerce / digital degrees. They shared some courses with CS but not all.
The engineering course covered token ring. Remember in 2000, and certainly a few years before (when I suspect half the courses were created as lecturers often go years between updating them), Ethernet and IP were not the only kid on the block. Netbios/ipx was still in widespread use, Token ring (which I do remember being covered, as I'd encountered ipx and ip over serial and ethernet, but never token ring) was still being developed. HTTP was only 9 years old.
No professor can enable you for tomorrow, and a CS career is one of constant education.
I'm glad I learned some STM32 assembly, but with the resources available today, I wouldn't get anywhere near as deep as I did in the early 2k's.
I am building a local low power RAG system for the programing languages I like, but I'll still include stm32 asm.
I would add I don't know how anyone can do any degree and career without some sort of passion for it.
For me personally, not only do I need passion but I have to have some sort of belief in the product and/or company I'm working for. In the early 00's I worked at a company, not software related nor was I working as a developer, and didn't like what I was doing nor did I believe in the product, it was lacking in so many areas where they were trying to frame it fit in the product market. I left after 3 years and did something completely different.
No.
A CS degree is not about the javascript library du jour, it is about the fundamentals of computation which don't really change.
If you provide a course on, say, Assembler and CPU architecture, you better have examples ready that are newer than Knuth's books. Your approach would be kinda ok if your program said: we'll ignore everything that is hardware and related ot the real world, but people take offense at claims like "there is only one cpu".
There's a difference between fundamentals and "details". Any given framework in one language is a uselesss detail, if you're teaching a course on programming language theory I would expect you'd at least have heard about most reasonably popular languages, even if they came out in the last 5 years - because people might be asking questions about their new favourite language versus what you are teaching.
Surely there are some core concepts.
I hear that schools today aren't teaching how to build a compiler. But to me this seems like a task that contains so many useful skills that can be applied everywhere.
It's simply not possible to cover all the languages, frameworks, databases, and whatever else you might use after graduating. They have to teach somewhat generic skills.
This applies to every degree. No one expects to learn all the latest developments in mathematics when majoring in that field.