As a Computer Science (CS) student, I understand how confusing CS can be. I myself had gone to research it before I applied to study it, just to make sure I knew what I was getting into. In doing so, I realised some of my ideas about CS were misconceptions.
I want to save you the trouble by going through the most common misconceptions that people have about CS that may be stopping you from taking the degree, with a few being misconceptions I had in the past.
1. CS is Computer Engineering (CE).
Some people think they’re the same. Some know the two are different but don’t know how exactly.
CS focuses only on the software side of things, while CE is a combination of Electrical Engineering and CS, so you’ll focus on both software and hardware.
CS students will learn different programming languages, how to troubleshoot problems as they come up, various algorithms, and machine learning. CE students learn how to design software and hardware; they will be dealing with circuits, chips, microcontrollers, and logic gate implementation.
Both majors are highly technical and far from easy, both requiring critical problem-solving skills and an analytical mind.
If you’re considering between CS and CE, I suggest you compare the syllabi between the two courses of the schools you’re interested in and see which suits your interests and strengths more.
2. CS is all about coding.
CS does include coding, yes, but that’s not all! Theory forms the bulk of my curriculum, since I have to study different algorithms, and not to mention math. CS is basically the theory of how computers work. We study operating systems, kernels, and compilers. We learn about servers, how websites get hosted, and then we learn how to code them.
Some of the things we learn are highly technical such as mathematical logic. We learn Boolean algebra to understand how logic gate functions work. All this knowledge may not be immediately obvious when you look at a piece of code written by CS students, but a lot of understanding is present underneath it.
Coding is only one part of CS, and a good CS student will have learnt many more things beyond just coding.
3. CS students can solve every single problem devices have.
This is not true. Knowing CS doesn’t tell you why your computer keeps fading out into a black screen or why your iPad keeps glitching. You would probably have a more educated guess, but it doesn’t mean you’ll always be able to solve the problem.
I experience this a lot whenever my dad needs help with his phone because he’d always casually say, “you should know how to do this because you’re a CS student”.
But oftentimes, these kinds of problems are very specific and technical, and require in-depth knowledge of the operating systems or servers involved. Having a CS degree doesn’t mean you would be an expert in every field.
Therefore, programmers are known for using Google to help them troubleshoot. There’s always a person before you who’s had the same problem as you. Googling for the solution saves time.
4. You should already know how to code before you take CS.
This is a common misconception that actually isn’t true. Most people in my class didn’t have experience coding prior to uni. And sometimes, they performed better than those with experience. Since CS is more than just coding, many people start on equal ground. For instance, a good coder may not be great at theory and math.
And even when it comes to coding itself, there is also no guarantee that those with more experience will always come out on top because the lecturers will start from scratch, guiding everyone along for the whole process. The playing field tends to stay balanced because of that.
As long as you pay attention in class, stay on task with your programming assignments, and clarify whenever you’re in doubt, you should be able to perform well.
5. You need to be good at math.
Because CS is first and foremost about how computers work, some math is inevitable to help you analyse that. There is really no escaping this.
But as discussed above, because CS has other modules covering theory and programming, you don’t need to be fantastic at math to score well. In my degree, math is rarely used when discussing theory and programming.
To give you a better idea of what kind of math we do, some of the topics I’ve had to study include probability & statistics, calculus, and linear algebra.
Even though math will definitely be something you will study in a CS degree, you should never feel like you’re studying math just for the sake of it. The math you learn as part of your degree should make you feel like you understand CS more and a better computer scientist.
Furthermore, on the bright side, some job positions won’t have you doing math as much as others would. A game or a web developer will likely not be using math as much as a researcher dealing with advanced AI and data structures. It all depends on what field you choose to go into.
6. You can have little to no social interaction in the CS industry.
I’m not sure where this misconception came from, but it is untrue. Even in school, you would have group projects where the work is split, teaching you the essence of what it means to work in a team. I had to do a group project on web development in my first year, and I’m sure there will be more to come in my second and third year.
We are taught to leave comments on our code to allow everyone, be it a fellow programmer, or a client, to understand what exactly the code does. This is mainly because different people will be tasked with programming different things in the project and sometimes others will have to continue writing your code.
It is hence crucial that people in the CS industry are able to communicate to each other well, be it helping others when they need help, or graciously asking for help when in need. Only by doing so will the group accomplish their goals together.
Even as a freelancer, you will have to work with clients and understand their needs. Since the CS industry is one that strives to meet people’s needs with technology, there is no escaping social interaction. However, the joy of accomplishing your goals with your fellow colleagues should outweigh the awkwardness of any social interaction.
Computer Science may not be an easy degree but it can be quite fulfilling if you enjoy it. Unsure if you’ll enjoy it? I suggest looking into more resources online such as sharings from seniors on Reddit, or even tapping into your own personal network of friends and seniors. You can even try taking a free online course on CS from Udemy or edX to see if you enjoy CS.
At the end of the day, I believe that when you eventually make the choice you’re most confident of, everything will eventually fall into place.