Important courses

A first-year Computer Science student wrote to me: “There are so many courses in Computer Science program and I do not know which one is more important? Do I need to learn everything? Please advice.”

Answer: The University is NOT a market where you can select WHAT you want. There are required courses that you must take and elective courses where you can choose among several courses offered. Each school has its own training and requirements and since I am not familiar with your school's program so I cannot be specific. However Computer Science student must learn programming languages and today object oriented languages such as Java or C++ are very popular and being used in many places. If you learn these languages well, you will easily find work in the information technology industry. There are also two courses that I consider important because they are the foundations of the Computer Science: Data Structures course and Algorithms course. Basically, algorithms are a collection of step by step instructions to do something. A computer program is built from a combination of algorithms or logical steps to provide an output. If you put more efforts into studying these two courses well, you will advance further in your career because all software companies want people with strong knowledge of algorithms. In most software job interviews, there are always several questions about algorithms and data structures. Your knowledge in these two areas, especially in algorithms will set you apart from other candidates who only know how to write code.

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University