(You can skip a few paragraphs, it’s a small rant)
Before getting into university, I read a lot about how the Indian curriculum is severely outdated, and that what you learn in college doesn’t prepare you for the industry. And I, being a naive school student who’s easy influenced by what I read was afraid about what it’s going to be like. And you know what? I don’t think it really applies. You’ll see many people here sharing that perspective. Many people who think why am I learning automata theory, I’m here to build cool stuff. But that’s the difference between “Computer Science”, and Programming.
The common misconception is that the goal of a Computer Science major is to teach you how to code and teach you to build software. But that’s somewhat of a secondary goal. The main goal of a Computer Science degree is to develop your abstract thinking skills and to expose you to a wide variety of fields in Computer Science so that years later when you come across a simple text-processing problem, you don’t have to shittily reinvent everything about regexes. I kid of course(somewhat), but the point I’m making is that a computer science degree merely equips you with the tools required to reason about, well, computer science problems. It gives you some theoretical grounding on what’s actually going on behind the scenes.