3 ms·
Let me start by sharing what I think is the most important advice. I would focus and really ensure you "learn" things. Don't worry about optimizing for exam sco
by tracer4201 6y ago
Let me start by sharing what I think is the most important advice. I would focus and really ensure you "learn" things. Don't worry about optimizing for exam scores. In my opinion, it's better to get a 75% on an exam and understand that 75% well as opposed to getting 95% on an exam but only because you "remembered" things without really understanding them.
When you study, spend time deeply thinking about the concepts. Yes you're going to learn CS, but it's not just about learning data structures, algorithms, compilers, etc. etc. College is an opportunity to think critically. It's okay to be wrong or to not understand things. Use the internet to reinforce concepts you don't understand well, or go speak with your professor or TA's in office hours.
Okay... with that out of the way, here are some other thoughts:
1. Don't index too heavily on advice folks give you on learning any specific programming language. Focus more on the concepts that translate from one language to another.
2. In the first year or two, do invest in understanding object oriented programming principles, as OOP is quite common today. You'll probably cover this in one of your introductory CS/programming courses anyway. Note: OOP is not the end all/be all.
3. If you've used Windows your whole life, great. I would encourage you to spend some time learning a Unix-based operating system. This isn't so much related to your CS degree/course work, but I will bet it comes in very handy later on.
4. Do take a compilers course if it's not required in your degree program. Many universities who have ABET accreditation require it but I recall at least one (several years ago) that didn't.
5. Do pay attention in your Operating Systems course. Take that course if it's not required. Threading, memory management, scheduling algorithms... you learn concepts here that will likely be very useful in your career.
- linuxlizard 6y agoDug around until I could find a suggestion that I would recommend highly. As suggested above, taking a compilers course and an operating systems course will give you a view into how computers work (not the electrical parts, but the general software parts). In addition, I'd recommend taking any programming language course offered: C, C++, Java, Python, Lisp, Prolog, (Ada, Cobol, Fortran, Basic, and on and on). Learning the other languages gives one a view into programming in general, not just in your favorite language. My 2c.