Computer science is boring, tedious and hard to understand. and it makes it much worse when everyone else around me clearly can get basic python code while i’m here struggling to understand the difference between a dictionary and a list. Why won’t I change my major? Money. I’ve been lower middle class all my life and I want a better life for myself. This seems like the only way to do it without going into medicine. I dont understand how you guys do this. Office hours are no help, my professor is rude, my TA’s don’t know how to teach, and I feel stuck.
Here are reasons why I hate Computer Science and you should also hate and some people already hate
1. You have to be a mathematical genius to understand CS
If you are passionate about computer science, you must have an in-depth understanding of mathematics. While the traditional approach to mathematics involves operations and calculations, computer science focuses on logical thinking, which is how computers think. However, most computer science degrees do not require you to be a math genius. The subjects you study are usually interesting and not too practical. Even if you are not particularly good at math, you should have a natural curiosity about puzzles and numbers.
Learning computer science is not easy, though. The more complex components will take you years to master, while the easier ones can be mastered within a month. This is why some students feel intimidated about this field. Still, you should remember that people learn step-by-step over many years. After all, it takes months to learn an instrument, and you cannot learn a foreign language in a semester.
Even if you are not a mathematical genius, mathematics can help you immensely in computer science. It gives you the mental tools and framework to think in a logical way, which is essential for programming. But, to become a true computer genius, you must have the aptitude to master all the aspects of the field. This means that you must be able to use logical thinking and creativity.
As a math major, you can stop learning after earning your four-year degree, but you should consider further education to advance your career. After all, you won’t be a Nobel laureate based solely on talent alone. You will have to position yourself with education and experience that employers value. According to U.S. News, the average salary for a mathematician in 2017 was $103,010 a year. With experience, mathematicians can earn up to $130,000 annually.
2. Perception of difficulty:
Some people may perceive computer science as a difficult and challenging subject. They may struggle with programming and find it frustrating to debug errors, leading to feelings of frustration and discouragement.
3. Massive Workload
In Computer Science, there’s a lot of workload and the student will have to spend a lot of time on the projects. Students can’t just watch a movie or hangout with friends after class because students have assignments to finish or code to write.
Every company wants to hire computer science graduates because these graduates are the best at what they do. However, what many people don’t realize is that these jobs require a lot of hard work and dedication. The curriculum is very challenging, especially in the first year, and can be overwhelming at times.
When a student goes to college as a CS major, the students are expected to spend 40+ hours a week in the classes, but also at least 20 hours a week on homework and projects outside of class. This is already more than enough time spent on school work, but then there is the issue of actually finding a job after graduation.
4. Irrelevant Subjects
Every semester when a student looks at the syllabus, there are a few subjects that the student hates and never wants to take again. These are usually topics which are far removed from what people actually do in real life. The subjects that students study in the first year are totally irrelevant to what students will be doing in the following years. Students study topics like Calculus, Physics, international relations and languages but never use these subjects later on in their career!
This is bad because irrelevant subjects waste time and teach students’ things that are n’t needed for students’ majors, and some of these classes require a lot of work.
5. Lack of interest:
Computer science may not be a subject that interests everyone. Some people may find it boring or unappealing.
6. Isolation from Others
The hour upon hours of coding is very lonely and isolated, not collaborative. There are times when a developer or student doesn’t get to hang out with other people for days, weeks or even months! Developers can get so absorbed in the software development work that most users forget to eat, sleep and sometimes socialize. This is a problem because computer science can cause anxiety and depression if a user pushes too hard. So,it is important to find time to have fun away from the computer screen.
There are stereotypes that computer science is a field dominated by men and that people who work in the industry are socially awkward or introverted. These stereotypes can be off-putting to some people and discourage them from pursuing a career in the field.
8. Testing and Debugging
Hours upon hours of bug finding and going nowhere, with no help which is horrible. Users can’t just get up and walk out of the lab when a user is debugging, which usually takes a long time. Users will have to stay there until the user figures out where the bug occurs and how to fix the bug. Then the user will have to go through all the steps again, only this time the user knows what to do (or at least hope the user does).
9. Lack of exposure:
Some people may not have had exposure to computer science education or technology in their upbringing or education, which may make it harder for them to understand and engage with the subject.
Computer science education and careers can be expensive and not accessible to everyone, particularly those from marginalized communities. This can create barriers to entry and contribute to a lack of diversity in the field.
Most people hate computer science just because of complex Coding. Coding is tedious, repetitive and boring. Coding takes away from the interesting aspects of programming, like design and problem solving. The only reason most people do coding is because this makes users more efficient at writing code later on. However, these skills can be learned through practice rather than through being forced to do them over and over again in class.
Comments are not just for students. Comments are also important for the teachers. Humans can read comments to understand what the code is doing, Teachers also read the comments to make sure you know what you are talking about and look for similarities with other students’ work.So, commenting on the code properly is vital.
People hate computer science because making Comments for every function and file is exhausting and takes more time than writing the code in some cases.
What types of people suit computer science?
1. I actually disagree with people that say the first courses are the easiest. In any subject I’ve taken, I have found the intro courses to be the most difficult for a few reasons. First, it’s introducing you to an entirely new way of thinking. Depending on your background knowledge, this is unintuitive and requires adaptation. Second, there is a bunch of material covered at a high level, but the details and real reasoning are glossed over. I like to understand the details and have trouble taking it at face value.
2. You need to ignore your peers. Are you the first in your family to go to school? I was. It took me a long time to learn this, but all of the friends I made in university had both parents attend university. Many of their parents had a PhD or an MD. My current coworkers will help their kids or their nieces / nephews with their assignments and studying. Friends who had parents that were university profs helped them with reviewing their homework. What I’m trying to say here is that your classmates may have additional help that they won’t be willing to admit. You need to be looking at your progress and comparing yourself to how you were the previous day.
3. Some students in CS will tend to study ahead. They will do tutorials on their own to learn the syntax of a language before the class begins. You may need to do some of this on your own for future courses. In particular, compiling programs in C (my intro CS course used Replit in the browser), using git, and other tools are things you can learn on your own.
4. Some profs suck, some TAs don’t know how to teach (probably they are still students maybe a couple of years older than you, and they are TAing because it’s paying their living expenses), and sometimes office hours aren’t helpful. What are you doing on your own to learn the material? It may take a while, but the internet is full of resources. Have you tried to look at stackoverflow to see if your questions have been asked before? You can look for notes or open source textbooks from other schools too. Or tutorials.
5. If you want to work in tech but not developer, you can look at things like management information systems or a similar named business major.
6. Boring, tedious, and hard to understand. I think all jobs / fields of study will have this at times. If the good parts don’t offset the bad parts, then it maybe is for the best if you switch. However, if you have spent 10 hours on something, it’s probably too early to tell if you’re suited for it. If you’ve failed multiple CS classes and put in 20 hours per week, then that’s a different situation. I work in technology as a business analyst, but I am going back to take CS courses will working at the same time. It’s hard, and it’s not very fun. Many people in my region will finish an unrelated major and then go back and study CS. School probably won’t be as difficult as work. I have coworkers that are self-taught and haven’t learned even CS 101 equivalent knowledge. You can work as a business analyst or some tech adjacent job that won’t be typing code into a terminal.
Overall, it’s important to remember that not everyone will enjoy or excel in every field, including computer science. However, with increased accessibility and education, we can encourage more people to explore and engage with the field.