4 ms·
Here's another recommendation for a Computer Science/Software Engineering degree, and find a degree program that focuses on the fundamentals: algorithms, data s
by xenophonf 9y ago
Here's another recommendation for a Computer Science/Software Engineering degree, and find a degree program that focuses on the fundamentals: algorithms, data structures, computer architecture, procedural and functional and OO styles, design patterns, user interfaces, project management, etc. It'll be good if you get exposed to a _wide_ variety of problems and languages and tooling and techniques across the entire OSI stack. My degree program forced me to learn at least one new programming language each trimester, and past the early 200-level classes, we were expected to pick up the languages on our own from the reference manuals. The really good degree programs will have you do things like design/simulate a CPU and write an interpreter/compiler (both pretty far into the theory side of the house) in addition to internships or senior projects with local/regional businesses (exposure to the real world). Ideally, you'll graduate with both a deep theoretical foundation and broad practical experience.
If you're interested in combining CS/SE with another field---awesome! Consider a minor in that field, or double major/double degree if you're sufficiently motivated/funded. I majored in CS with a minor in Psychology, and I was one class away from a Literature minor (which I regret not completing). My Psych classes ended up getting me ready to work supporting IT and computing in healthcare/bioscience, though admittedly somewhat indirectly. Regardless, there will always be openings in your course schedule for electives, so if you want to do AI later, take an AI elective. If you're interested in bioinformatics, take a few biology classes. In general don't constrain yourself to a single educational course; make choices that expand your horizons.
Focus on the fundamentals, go as broad and as deep as possible, and get as much practical experience as you can. You will graduate with a wide variety of doors open to you.
Edited to add: Do not neglect the arts, humanities, philosophy, sports, etc. Aim for "well rounded" as best you can.
- Eugeleo 9y agoThanks, I'll keep that in mind. I have a tendency, I must admit, to overlook humanities. How does it work in the US? In my country, it works like this: you choose a "route" (for lack of better word). Based on the route, there are some compulsory classes you must take, some optionally-compulsory classes (around 5 in a group, you have to take at least 2 of them) and then you can take whatever classes you like, from whatever other route you please (you don't have to take the whole second route, just nitpick the interesting classes). E.g. We have three routes in bachelor CS - general CS, software and data engineering, programming and software systems. All of these are divided into 2-4 branches, which differ in couple of the compulsory classes, but are otherwise very similar. All those three routes also have some classes (most of them, actually) in common, such as Linear algebra, Calculus, Probability, Analytics, Intro to Programming etc. I can pile up as many other classes on top of this as I please... Even take all the genetics, molecular biology and others from bioinformatics (if time and mind capacity permit).
- xenophonf 9y agoIt varies by college but what you've described is basically how it works in the U.S. Take my alma mater for example: http://rose-hulman.edu/academics/academic-departments/computer-science-software-engineering/majors-and-minors.html#CS http://rose-hulman.edu/academics/academic-departments/comput... A while ago they split the CS degree program into three tracks---computer science skews towards research topics, software engineering is more process oriented, and international computer science combines the two with study abroad---but the three programs overlap so much that you could have a CS graduate go into industry with zero problems, and you could have an SE graduate go into academia just as easily.