The major you apply matters for your chances of admission to college. This is especially true when you are applying to the most competitive majors, and currently Computer Science holds that crown. This makes your choice of major when applying to computer science very important.
Some schools have a single CS major, but many offer significantly more options. In this article, we’ll begin by going over the full range of options in computer science (and related fields), then cover some of the country’s top CS programs, so we can see what majors they offer to prospective students, and which would best suit your academic needs. Let’s get started!
Computer Science Major Options
Computer science is a growing and changing field, and each university has their own approach. Not all schools will offer all of these options, but these are the most common ways to study computer science.
Computer Science: BS vs BA
The most common is a degree in computer science itself, which is offered as either a BS or a BA (or with options for either at some universities). You may have a chance to specialize further within this degree by taking specializations or specific electives.
A BS in computer science tends to focus more on technical details, and delves into the architecture of programs and programming languages. It can come as an engineering degree, but does not always.
A BA in computer science instead tends to have more of a liberal arts focus; while you still learn all of the technical skills of programming and coding, the degree usually doesn’t count for engineering certification, and often has additional course requirements in the humanities, such as ethics classes.
Computer Science and Engineering
These are specifically engineering degrees, and focus specifically on programming and architecture. Note that computer engineering is a separate but related field which is concerned with the physical hardware used by computers. While engineers do learn programming in the course of their studies, it is not their main focus. Degrees which are not a Bachelor’s of Science in Engineering will not qualify you to take the qualifying exams needed to become certified as an engineer.
Robotics
This major is often offered through engineering, and is very niche, with only a few schools offering it currently, though it is becoming more popular. This major tends to cover both the engineering aspects of building robots, and the programming aspects of directing them. It is more focused in its applications than a general CS program, but will give you a solid foundation in coding and CS principles.
Data Science
Data science is a multidisciplinary degree combining Computer Science, Machine Learning, Mathematics, and Statistics. It requires many of the same skills, and opens up many of the same careers, especially as the manipulation and application of data becomes ever more important. Data science programs will give you a strong grounding in programming, but with less of a broad base than CS generally. For more on the field, see our guide to data science careers.
Statistics
Statistics does cover some programming and data science applications, but has significant applications outside these fields as well. It is generally a less popular major, but it is growing in appeal as data science does. You will be able to take a number of computer science courses through statistics, but will not gain the same breadth or depth in the field.
Applied Mathematics
This is a subset of math which deals with practical concepts, rather than the theoretical fields which dominate much of higher math. This often has significant overlap with data science and statistics, as the mathematical models used to analyze large sets of data are one of the core fields in applied math. Not all applied mathematicians will focus on these fields of course, but it is one option.
Math majors are often far less popular, even applied math, though they are often seen as more difficult in terms of the classes you will need to take. While you will need a strong grasp of mathematical concepts for any study of computer science, this is especially true for those who study applied mathematics.
Computational Biology
This field involves computer science and biology in tandem, and is very popular with students interested in both. This generally involves using programs and machine learning to take on challenges within the biological field, such as dealing with large data sets, using machine learning in medicine, or modeling the folding of proteins. These majors are often competitive, as they require a solid grounding in both biological and computer sciences.
Linguistics
Sometimes referred to specifically as computational linguistics, this is the study of languages, and tends to investigate programming languages as languages. The skills used and classes taken are similar to CS, but have a different focus, and explore the reasoning behind why languages do what they do more deeply. Linguistics is usually a far less popular major, though computational linguistics is growing increasingly common.
Computer Science Options at Top Schools
Now that we’ve seen all the possible options which may exist for you to study computer science, we’ll look at what some top schools offer. This won’t be a complete review, but a sampling to see what’s out there. We already covered UC Berkeley’s new CS options in a previous article, but we’ll see what else some schools offer.
Caltech
The computer science major at Caltech offers a strong grounding in the fundamentals of computer science, and offers a number of tracks to allow you to specialize more within the field. Other majors at Caltech overlap with CS, though often with their own separate focus. These include: Applied and Computational Mathematics, Computational and Neural Systems, and Information and Data Science. Note that all students at Caltech can take minors intersecting with CS, and can add computer science courses to their schedule.
Carnegie Mellon University
CMU has an entire college devoted to the study of computer science, and offers five different major options. Applications are handled by CMU admissions, and are to the School of Computer Science. You do not select your major until the middle of your second semester.
CMU has options to study CS even outside of the school for it. These include: Electrical and Computer Engineering, Statistics & Data Science, Information Systems, and Computational Finance. These are offered by a number of different schools within CMU.
Columbia
Columbia’s computer science department is in the School of Engineering and Applied Science, but offers degrees for both engineering and Columbia College students. Each has their own requirements, but are available regardless of where you are taking classes within Columbia. Barnard students are also able to earn a BA in cs through Columbia’s department.
Columbia College has a number of majors that parallel computer science without studying it directly. These include: applied mathematics, data science, information science, and statistics.
Cornell
Students in both the College of Arts and Sciences and the College of Engineering may major in CS at Cornell, and students from any college may add a minor in CS. For students in both schools, you must apply to the major after completing the necessary prerequisite courses in your home college. The courses once you are in the major are the same; the difference is the other course requirements you need to fulfill to graduate, which are set by your home college.
It is possible to study CS outside of the major, through programs including: Biometry and Statistics, Electrical and Computer Engineering, Information Science, and Statistical Science. These are offered by a number of Colleges within Cornell and allow the investigation of different facets of CS.
Dartmouth
Dartmouth’s Department of Computer Science offers a major and minor in the field for interested students, along with a minor in Digital Arts, for students interested in the intersection between computer science and the arts.
There are a number of other majors offered at Dartmouth with an intersection with computer science. Notable are Quantitative Social Science and Mathematical Data Science, both of which rely heavily on computer science, and offer applications of the field.
Duke
Duke’s Department of Computer Science is in the College of Arts and Sciences, and offers both a BA and a BS in CS. The Pratt School of Engineering offers a BSE in Electrical and Computer Engineering, which is not officially linked with the CS department in Arts and Sciences.
There are a number of majors which offer parallel options. Statistics in the College of Arts and Sciences is one, while an interdepartmental major allows you to combine computer science with any other field offered at the school, such as visual arts or biology. The interdisciplinary option (known as IDEAS) in Duke Engineering allows for a similar freedom for exploration.
Emory
Emory’s Department of Computer Science offers both a BA and a BS in CS, along with degrees in Mathematics & Computer Science and Economics & Computer Science, for students interested in those applications of the field. The department also offers minors in computer science, informatics, and artificial intelligence, which are intended for students in other disciplines who have an interest in this field, and how it applies to their studies.
There are other majors at Emory which intersect with computer science, though offered by other departments. These include: Applied Mathematics, Applied Mathematics and Statistics, Information Systems and Operations Management, and Quantitative Sciences.
Georgetown
Georgetown’s Computer Science Department is part of the College of Arts and Sciences, and offers both a BA and a BS in CS. They have a further BA in Computer Science, Ethics, and Society; this examines both computer science and its impacts on the world at large. A minor in computer science is available to students outside the major.
Georgetown has some major options outside of CS that touch on similar topics. These include: Linguistics, Mathematics, and Science, Technology, and International Affairs. Generally, applying to CS directly is the best way to study the subject at Georgetown.
Harvard
All computer science students at Harvard earn a BA through their department. There is an honors-only interdisciplinary program associated with the program and several other departments at Harvard called the Mind, Brain, and Behavior Program (MBB). This program looks to address questions of neuroscience and cognition through the lens of computer science. Computer science may also be studied as a secondary field; their version of a minor.
There are a number of other programs of study at Harvard which allow for an exploration of computer science. These are: Applied Mathematics, Electrical Engineering, and Statistics.
Johns Hopkins
Located in the Whiting School of Engineering, the Department of Computer Science offers both a BA and a BS in CS. The BA is intended for students who want to pursue non-engineering applications of computer science. Students not in the School of Engineering may take part in the CS minor offered by the department.
There are a number of other majors at Johns Hopkins which allow students to explore computer science related topics. These include: Applied Mathematics and Statistics, Computer Engineering, and Systems Engineering.
MIT
The general path to study CS at MIT is through the School of Engineering; the Computer Science and Engineering or Electrical Engineering and Computer Science. The latter has more of a focus on hardware, as is often the case with electrical engineering degrees, but both prepare you for a career in engineering, and have similar course requirements.
There are other majors which offer approaches to CS, including Business Analytics, Mathematics with Computer Science, Computer Science and Molecular Biology, Computer Science, Economics, and Data Science, and Urban Science and Planning with Computer Science.
New York University
Located in the College of Arts and Sciences, the Computer Science Department offers a BA in CS, along with joint degrees in Computer Science & Math, Computer Science & Economics, and Computer Science & Data Science. Minors are available as well, though students in the School of Engineering may not minor in computer science.
There are additional majors available at NYU which allow for an exploration of computer science throughout their undergraduate colleges. These include: Business, Technology, and Entrepreneurship, Computer Engineering, Game Design, Integrated Design & Media, Music Technology, and Science and Technology Studies.
Northwestern
Northwestern offers computer science as a major through both the School of Engineering (as a BS) and the College of Arts and Sciences (as a BA). The computer science course requirements are identical between the programs; it is the non CS course requirements which differentiate them. The department also offers minors in computer science and data science.
Northwestern offers a number of other majors which allow you to explore concepts adjacent to computer science. These include: Applied Mathematics, Computer Engineering, Mathematical Methods in the Social Sciences, and Statistics.
Notre Dame
There are two tracks to pursue computer science directly at Notre Dame. The College of Engineering offers majors in computer science and computer engineering, both of which offer BS degrees and prepare you for a career in engineering. You can also major in CS through the College of Arts and Letters. This offers a BA degree, but covers the same foundational topics as the BS degree.
Notre Dame has a number of additional majors throughout its undergrad schools which allow you to study parallel topics to computer science. These include: Information Technology, Analytics, and Operations, Electrical Engineering, Applied and Computational Mathematics and Statistics, Chemistry/Computing, and Science-Computing.
Princeton
Princeton offers both a BSE and an AB in computer science, both of which have similar requirements. The BSE is only offered through the school of engineering, and prepares you for an engineering career specifically. The department and courses are the same for majors of both kinds.
There are a number of ways to study CS at Princeton outside of the major itself however. These include a major in Electrical & Computer Engineering, and certificates or minors in Statistics & Machine Learning, Robotics & Intelligent Systems, Quantitative & Computational Biology, and Applied & Computational Mathematics.
Rice
The Department of Computer Science at Rice offers two degree options: a BA and a BS. The BA is more flexible and has more leeway for students who want to explore topics outside of CS, while the BS is more intensive, and offers students a more thorough and in depth exploration of CS topics.
Outside of the department, Rice has a number of majors which allow you to pursue topics adjacent to CS. These include: Computational and Applied Mathematics and Operations Research, Electrical and Computer Engineering, Statistics, and Mathematical Economic Analysis.
Stanford
Stanford’s Computer Science Department offers a BS in the field, though it has a number of tracks within the major for students who want to further specialize their studies. These tracks are: Artificial Intelligence, Computational Biology, Computer Engineering, Visual Computing, Human-Computer Interaction, Information, Systems, and Theory. If you are interested in one of these subjects, you should enter it through the CS major. They also have unspecified and individually designed tracks if you don’t see your area of interest listed.
In addition to the computer science major, Stanford has a number of other majors which allow you to explore CS. These are: Biomedical Computation, Electrical Engineering, Mathematical and Computational Science, Science, Technology, and Society, and Statistics.
Tufts
Tufts’ Department of Computer Science offers two options for a CS degree. You can earn a BA through the School of Arts & Sciences, or a BS through the School of Engineering. These are offered through the same department, and allow you to take advantage of the same courses and resources; it is the class requirements outside of CS which differ. The department also offers a major in Data Science, and a joint major in Cognitive and Brain Sciences with the Department of Psychology. There is a minor in CS for students not in the major.
Outside of the CS major, Tufts’ has a number of other tracks of study that allow you to explore computer science. These include: Applied Mathematics, Computer Engineering, and Quantitative Economics.
UC Berkeley
UC Berkeley has just opened a new college specifically for computer science and data science, and students wishing to major in either of these fields. These are all BA degrees; the college also offers a computer science minor which is open to Berkeley students in all other colleges.
In addition to these majors, Berkeley has a number of others which allow you to explore aspects of computer science. These include: Applied Mathematics, Digital Humanities, Electrical Engineering and Computer Science, Electronic Intelligent Systems, and Statistics.
UCLA
The Department of Computer Science is located within UCLA’s Samueli School of Engineering, and offers two majors: a BS in Computer Science, and a BS in Computer Science and Engineering. Students interested in these majors should apply to the School of Engineering directly, as they are quite competitive.
UCLA offers 135 majors, several of which offer you insight into computer science. These include: Applied Mathematics, Computational and Systems Biology, Computer Engineering, Data Theory, Linguistics and Computer Science, Mathematics of Computation, and Statistics and Data Science.
UC Santa Barbara
Located in the College of Engineering, UCSB’s Department of Computer Science offers a BS in computer science for students in the College of Engineering. Students in the College of Letters and Sciences may add a minor in CS.
Outside of the major itself, UCSB offers a number of majors which intersect with computer science. These include: Computer Engineering, Applied Mathematics, and Statistics and Data Science (which is offered as both a BA and a BS).
UChicago
The Department of Computer Science offers both a BA and a BS in computer science. The BA is meant to prepare students for either graduate study or a career in the industry, while a BS is meant to add another field of expertise within computer science by requiring an additional track of study. A minor in CS is also available, to complement students in other fields. Note that UChicago has very limited engineering options.
Outside of the department, several other majors offer a chance to involve yourself in computer science. These include: Computational and Applied Mathematics, Data Science, and Statistics.
University of Florida
The Department of Computer Science offers degrees in CS through both the College of Engineering and the College of Liberal Arts and Sciences. These have the same core curriculum of CS classes; the engineering degree is more technical and offers accreditation for a career in engineering, while the liberal arts degree offers more flexibility to take classes in other areas, or to combine the degree with another major. The department also offers majors in Digital Arts and Sciences and Computer Engineering. A minor in CS is available to students not already majoring in the department.
UF has a number of majors outside the CS Department which allow for the exploration of computer science. These include: Data Science, Electrical Engineering, Information Systems, and Statistics.
University of Michigan Ann Arbor
UMich offers two options to enroll as a CS major, through LSA and the College of Engineering. They have a similar setup for data science, with students able to enroll through both colleges. The major and program requirements are almost exactly the same for both colleges.
Because of the high demand for this major, students must be selected before they can enroll. For new students, this means you must apply as a CS major specifically; selection for the major is done separately from your admission to the school generally. It is possible to transfer into CS while a current student, though this is very competitive, and not available to students who applied for CS as freshmen.
UNC Chapel Hill
The Department of Computer Science offers both a BA and BS in CS. The BS is seen as a stronger preparation for advanced study in the field or to enter the industry, while the BA allows for more flexibility in combining CS with other programs of study. Due to current popularity, only current students at UNC may apply to the major, and must have taken or be taking the prerequisite courses to do so. There is a minor in CS offered by the department as well, but it too must be applied to.
In addition to the offerings of the CS Department, UNC CHapel Hill has a number of other majors which touch on the same topics. These include: Biostatistics, Information Science, and Statistics and Analytics.
UPenn
UPenn offers two ways to major in CS; a Bachelor’s of Applied Science and a Bachelor of Science in Engineering. Both of these are offered through the School of Engineering, and have similar course requirements. The BSE is intended specifically for students who wish to pursue engineering, while the BAS is meant to prepare students for any number of CS careers which are not engineering focused.
Penn’s School of Art and Science has a number of majors which incorporate computer science without focusing on it directly. These include: Applied Research and Data Analysis, Computational Biology, Data & Network Science, and Logic, Information, & Computation.
USC
Located in the Viterbi School of Engineering, the Department of Computer Science offers four BS degrees: Computer Science, Computer Engineering and Computer Science, Computer Science Games, and Computer Science and Business Administration (which is offered in conjunction with the Marshall School of Business). The program also offers a minor in computer science.
The CS Department is associated with the Department of Data Science, which offers BS degrees in both Data Science and Artificial Intelligence for Business (offered in conjunction with the Marshall School of Business). They also offer a minor in data science.
Aside from these, USC has a number of other majors which touch on computer science, including: Applied and Computational Mathematics, Arts, Technology, and the Business of Innovation, Computational Linguistics, Computational Neuroscience, Economics and Data Science, Electrical and Computer Engineering, Game Development and Interactive Design, Intelligence and Cyber Operations, and Quantitative Biology.
University of Virginia
UVA’s Computer Science Department is located in the School of Engineering, and offers a BS in CS through them, and a BA in CS through the College of Arts and Sciences. They also offer a BS in Computer Engineering jointly with the Electrical and Computer Engineering Department. The biggest difference in the BA and BS degrees is in the courses you have to take outside of your core major requirements. There are currently no caps for declaring a major in your college, but transferring between colleges may be capped. Any undergrad at UVA may declare a minor in CS.
In addition to the degrees offered by the CS Department, UVA also has the following majors which allow you to explore computer science topics: Applied Statistics, Electrical Engineering, and Statistics.
Vanderbilt
Based in the School of Engineering, Vanderbilt’s Department of Computer Science offers a BS which prepares you for the engineering applications of computer science. Students in other colleges can add computer science as a second major, but this will not accredit them to pursue engineering. You may also add a CS minor, no matter which school you are part of at Vanderbilt, so long as you aren’t already majoring in CS.
Outside of the major, there are a limited number of other courses of study at Vanderbilt which will allow you to explore computer science. The most notable is Electrical and Computer Engineering.
Wake Forest
Wake Forest’s Department of Computer Science offers both a BS and a BA in the field. They cover the same core curriculum; the BS goes more in depth while the BA gives you more flexibility to combine your studies with another major or minor, since it requires fewer courses. Students in any other major can add a minor in computer science to complement their studies.
Wake Forest offers a number of other majors which allow for investigations of CS, these include: Applied Mathematics, Applied Statistics, and Mathematical Business.
Washington University of St. Louis
Based in the School of Engineering, WashU’s Department of Computer Science and Engineering offers several majors to interested students. These are: Business + Computer Science, Computer Science, Computer Science + Economics, Computer Science + Math, Computer Engineering, and Data Science. They also offer a minor in computer science. Students who are not in the School of Engineering may add a second major in computer science to complement their course of studies.
While these are all great options, WashU has other majors which allow for an exploration of CS, including: Applied Mathematics, Electrical Engineering, and Systems Science & Engineering.
Yale
Yale’s Department of Computer Science offers both a BA and a BS to students in CS. The BS is for students who intend to focus solely on computer science, while the BA is intended for students who want to apply CS principles to another field. The department also offers joint majors with the Departments of Economics, Electrical Engineering, Mathematics, and Psychology.
In addition to this, Yale has other majors which allow you to learn about computer science. These include: Applied Mathematics, Computing and Linguistics, Computing and the Arts, and Statistics and Data Science.
Final Thoughts
If you are interested in pursuing computer science, there are myriad paths open to you, each with its own unique advantages and drawbacks. We hope this article has given you a sense of the myriad options open to you, and which may appeal to your specific interests and experience. While many of these are quite competitive for admissions, they are far from unattainable.
Of course, we were only able to include a small sample of the available CS programs here, just enough to give a taste of what’s out there. If you want personalized advice on finding the perfect program for you, schedule a free consultation today. We have a long experience helping students find the undergraduate program that best suits their needs, and then guiding them through every stage of the application process.