Just want to share my experience studying computer science and share my pros and cons of studying computer science and whether if its worth in the long run. Now my own experience is different from the traditional Computer science route which is important to take note because it will be different from what people expect.
To put it simply, I jump straight to year 2 since I had a diploma in i.t and my uni is a 3-year university, and I can plan my schedule flexibly by choosing how many modules I want to take per trimester. The fastest for me to graduate is 16 months. My school uses a blended learning approach and I only have to go to school once or twice a week for a 3 module trimester.
I will give an overview of my experience so far, and the pros and cons of a computer science degree. First my own experience
I have been studying in uni for 1.5 years now and currently on my 2nd less last semester. To put it briefly, after coding for a year self-studying through personal projects and school. Both school and self-studying has helped my programming skills improved and I learnt important concepts that are useful and important in programming such as Object Oriented programming , data structures and exposure to different languages like java and c++. However, the on return investment is not worth spending studying in a school in terms of learning practical skills needed for the industry.
Those things I have mentioned and learned, are things that anyone can learn on their own. And what I mean is that the amount of money you paid for the degree won’t return a valuable investment compared to self-studying on your own. I’m sure many have talked about this before of how expensive it is doing a degree , you pay 20k-30k average for a piece of paper that is less practical compared to studying on your own. Using that same amount of money, you can buy books and buy courses on your own in udemy, treehouse etc and you will learn a lot more compared to a degree if you have the discipline to self-learn.
There is also the problem of the quality of the university you are from, no 2 degrees are equal and there many schools out there are offering degrees as a market for earning profits than caring about your future. Many commercial universities prorate their courses and lower the difficulty of the module depending on the number of fail rates they have. Computer Science in every university, has notoriously high fail rates no matter where you are from, you will be surprised how many clueless people who have no idea what they want to do in their career and take Computer Science without putting the effort in studying them and the amount of fail rate matter in your school because it will be a deciding factor whether the module you study will be something that can be useful to you or dumb down to the point its simple and you learn nothing from it .
From my own experience, when I looked at past papers for my modules in my school, the difficulty and the content were lowered in standards every year to the point one of the final year c.s subject I am doing now was teaching HTML and basic java for the first 2 lessons even though Java was something everyone has taken before.
Let’s not forget about the professors who are teaching c.s the number of professors or lecture who have any idea what is C.S about is rare. You will be surprised, there are professors who teach hardly write any line of code and are just there because they have coded some 10 or 20 years before and spent the rest of their career doing academic research. I once argued with my lecturer, because he showed a pop method that returns a value in a vector in c++ / aka ArrayList in java in a data structure class when it’s incorrect. Rarely, you will find anyone teaching in this field understands what they are teaching when its a subject related to programming.
I can list more about this, but my own experience has been horrible so far throughout my curriculum, and none of my classmates do programming on their own time which shows the lack of quality of my c.s degree here. Although I learned something valuable on my own through self-studying using the materials provided by the school.
Now although my experience has been negative there is some light to it and there are things I have learned that has helped me a lot which I have mentioned at the start.
Relational databases, how to normalize ACID
object-oriented programming, SOLID, DRY
data structures. BIG O, Binary search tree, linked list queue stack.
The assignments, even though the content was crap the assignments were great because you are given a scenario that you need to solve. This helped my problem-solving skills a lot
But here is the catch, spending a huge sum to close to 30k for these ^ when i can learn for free online or pay less than $100.
It also didn’t help me in any way for learning WEB development through freecodecamp.
The only main benefit of a cs degree is that it helps your problem solving skills if your goal is to be a software dev or web dev. but the field is more to that
And therefore, my conclusion is that the time and money investment is really not worth it in the long run. Unless you can enroll in a top school which has challenging problems every week like Stanford or MIT. It’s very unlikely you get something valuable for what you pay for. I strongly advice people for going back to school to
c.s study a degree.
Self studying programming is difficult , but the value you get from it is alot more valuable from what you spend in school. If i had the freedom to self study i would have learn more than what i did with the amount of time i spent in school. Hope this helps anyone who is considering in studying computer science