What Coding Skills Does A Computer Science Degree Teach You?

Are you interested in pursuing a bachelor’s degree in Computer Science? If this is the case, maybe you were drawn to this degree because you want to learn how to write computer programs, or as many people call it, learning how to code. Moreover, you may want to learn how to code because you want to build applications and work on projects of your interest with this knowledge.
If that’s the case, I have something to share with you.
When I was a Computer Science undergraduate student in college, I had the opportunity to take various courses that touched on the subject of computer programming. Furthermore, in these courses, we learned the fundamentals of computer programming and used these concepts to solve problems and work on projects.
So, today I am going to share my experience on some of the different programming concepts I learned, alongside some of the skills I acquired through the course of completing my bachelor’s degree in Computer Science.
Hence, let’s get started.
The fundamentals
In my first programming course, we used the C++ programming language. During the semester, we learned how to write computer programs using different concepts available in the C++ programming language such as decision structures, variables, loops, arrays, and functions. I call these concepts the fundamentals because they were ideas we learned through the semester and wrote programs using these ideas repeatedly.
I learned the fundamental coding related principles to build my foundation as a computer programmer
These are just some of the concepts we studied, but through the course, we learned what these concepts were on a theoretical level, as well as applying them to solve programming problems and work on class projects. We also learned how to organize our thoughts and ideas to solve problems using computer programs, by using tools such as pseudo-code. No worries if that term sounds cryptic at this point, you will understand it as you start learning it in your computer programming course if you decide to start a Computer Science program. On this introductory course, we also learned about the different sorting algorithms such as “Insertion Sort” and “Selection Sort.”
Now that I look back at my time taking the introduction to computer programming course, that was the time where I started to build my foundation on the basic programming principles that led me to start diving into more in-depth programming-related topics such as Data Structures. Also, with this newly developed foundation I started to build software applications, at the time they were simple, but as time went by, I could start working on more complex applications.
Data Structures
Once I took my first computer programming course, I went on to take Data Structures. On this course, we studied concepts such as stacks, queues, and linked lists. We learned how to store data in a way we could perform different operations such as accessing or even sorting the data that needed to be sorted. Through the course, we learned different data structures and their respective operations to the point that we understood it’s strengths and weaknesses when compared against each other.
That is, we studied cases where we needed to use a particular structure, and we discussed why choosing that specific structure over another one that we had already added to our skillset at the moment. Something I realized on this course, was the importance of dominating and mastering the concepts that we learned on the introduction to computer programming course because we used them to write the programs to implement the data structures we were learning at a theoretical level.
How to store data in a way we could later on perform operations such as accessing or sorting it
Also, some of the concepts I took on this course, later on in my journey I have been assessed on my understanding and mastery of these concepts in technical interviews when applying to jobs after graduating from my Computer Science degree. As a result, I recommend to anyone reading this article that is interested in taking Data Structures, in really investing the time into learning and applying these ideas as much as you can. These ideas might come up in different situations throughout your journey as a Computer Science student, or even as a future professional. This advice is something I tell all the Computer Science students I coach and tutor.
Analysis of Algorithms
Once we learned how to implement different data structures and their importance, we learned how to analyze the code we wrote and how to make it more efficient. That is, we learned how to meticulously take an in-depth look to our code, make the necessary adjustments to allow our system to perform at a higher level. We learned about concepts such as Time Complexity and how to use it in the code we wrote in class. On class lectures, we talked about different terms and notation like O(n) and O(n²), which you might have heard or seen online before.
I learned how to analyze and identify areas where I could improve my code
In a nutshell, in my opinion, this course really helped me develop the skill of studying the code I wrote and pinpoint any areas where I could make changes to improve the quality of the code I write.
Databases
In the Computer Science program I attended, we had to take an “Introduction to Databases” class. On this course, we learned about what databases were on a theoretical level, also, how to implement them on a practical level. We also talked about different cases on when to use databases and when not to in various software applications. On the theoretical aspect of the course, we learned how to write queries using SQL and how we could manipulate the data we needed from the databases.
What databases are and how to use them
We discussed different SQL commands such as SELECT, INSERT and ALTER TABLE. These concepts are crucial to working with databases in your applications, at least in my experience, I have used them as a professional software developer, not only when I was a student.
In hindsight
Now that I look back at my experience as a Computer Science undergraduate student in college, I realized that not only I acquired essential technical skills when it comes to computer programming, but also I developed a mindset and a systematic approach that I use today to write code. Through this time I built the foundation to keep on growing as a coder, a foundation that I still use to this day.
Nonetheless, I am not trying to convey that you have to go to college to learn these coding related concepts. I am sharing my experience as a former undergraduate Computer Science student, based on the Computer program I completed, to help anyone interested in pursuing a bachelor’s degree in Computer Science. I hope this article serves as a guide or even mentorship to upcoming Computer Science undergraduate students.
There you have it, an overview of some of the coding-related concepts and skills you can develop by pursuing a Computer Science degree. Note that, these are some of the topics covered in the Computer Science program I completed. These are just some of the coding-related concepts I learned through the course of my degree, in a nutshell.
If you happy and you know it, clap your hands :)
As always, don’t forget to follow me and click on the applause button, so you don’t miss content that can help you in some way as a Computer Science student currently in college.
Also, I know if you like this kind of content so I can keep writing more of these types of articles to help you on your journey as a Computer Science student.
If this article helped you in some way, please share it with a friend.
It might help them too.
Comment down below some of the coding-related concepts you are learning or coding-related skills you are currently developing in your Computer Science journey.
I would like to know.
I hope this helps!
Disclaimer: Results may vary. These tips and advice are based on my experience and opinion as a former undergraduate Computer Science student. Also as a tutor, teacher, and professional software developer. Everyone is different, so, the advice shared in this article may or not work for you.
If you liked this article, I think you might be interested in this one as well:
Originally published at yadielcabrera.com on March 24, 2019.
