Colleges: You are graduating computer science/software engineering students who don’t understand pointers, floating-point, or what a closure is. (And I don’t mean that they don’t understand the terms; they don’t understand the concepts.)
It is so frustrating when I don’t get to talk to an interview candidate about higher level concerns because they don’t know the fundamentals. (It is even more frustrating when I do get a chance to talk about higher level concepts only to find they don’t have a grasp of those either.)
I’m not so idealistic to think that a degree can ever be a guarantee of anything, but the current situation is that the degrees you are handing out are worthless.
Students: I don’t think the moral of the story is to not go to college. I may not have graduated, but college did expose me to things I might not have been exposed to otherwise. Understand that college will not prepare you for your career. College is an opportunity for you to prepare yourself for your career. You will get out of it what you put in.