I am reminded of a conversation with a senior CS undergrad that I had a few years ago. I was a fresh and new bright-eyed EE with a lot of passion for computer hardware and programming. I remember being excited to talk to this person about what he learned from university. To my horror, I was informed that he had never actually programmed much throughout his time in university. In fact, he had one class on Java programming. That’s it. I understand that CS is aims to instill more theory than application, however, to do anything interesting with a computer you must write programs.
Computer science as a study has been transitioning from an Engineering discipline to a business logic discipline. Most companies don’t care about engineering something fast, performant, and portable. They just want the damn thing out the door with the least amount of money put into it. There is more interest in cutting costs than anything else. Web technologies are so popular because they can be understood by frogbrained business majors with no notable skills other than pissing life savings into a mediocre degree. Thus widening the hiring pool and hiring people who can be paid less because they don’t have high-value skills and desire matching pay to that skill. From that we get the horribly retarded and awful software stacks we have today.
CS will soon have an event that puts to question how we got where we are. Dunno when that will be, but I’ll be laughing when it does.