Because many CS fundamentals like sorting algorithms or tree traversal have almost zero real world applicability. (When have you ever had to implement a sorting algorithm?) People who are not already committed to learning these concepts through a class have no reason to learn many of them. They’re more likely to spend time on useful things.