Confused about CMU CIT ECE degree and Computer Science degree from School of CS

<p>I’m a CS major at CMU in my junior year. Everything that I’m writing is specific to CMU, because the lines between programs fall in different places at different schools. The best way to figure out what the difference is is to talk to someone or look at graduation requirements. The basic difference between CS and ECE is the difference between software and hardware.</p>

<p>In CMU’s CS program, there is a big focus on discrete math (which involves proof writing and mostly things that high school students don’t typically see much of), such that it is impossible to graduate without taking at least 3 or 4 discrete math classes; at many schools this number is 1 or 2. However, there is very little focus on calculus - if you receive credit for AP BC calculus, it’s not required that you take any more. This is different than schools where CS is a part of the engineering school (or CMU’s ECE program), where courses like differential equations and multivariate calculus are likely required. Similarly, if you’re a CS major, you just need to take 4 “science or engineering courses” (which can be ECE if you want). Unlike in an engineering program, you don’t need to take two semesters of physics. This doesn’t mean that CS is less rigorous, though; while many people think of physics and higher level calculus courses as being difficult, discrete math can be just as hard or harder because it involves thinking in different ways and many new ideas.</p>

<p>If you’re a CS major, you will never have to take a course where you have to draw circuits and/or gates and reason about them. If you’re an ECE major, you will never have to touch functional programming (ML/Scheme/Lisp). Either way, if these interest you, you can still take courses like this. While students do have priority for registering for classes in their own department, the CS program tries very hard to offer enough sections of every class to meet the demand - recently, one course had about twice the number of students trying to register for it as could be accommodated in the number of sections being offered, so more sections were added in the evening. Similarly, I don’t know of anyone who has had trouble registering for ECE courses after freshman year.</p>

<p>A minor is required for CS majors but isn’t for ECE majors. Many ECE majors double in CS; fewer CS majors double in ECE, but it’s still completely doable. ECE is not technically offered as a minor, but “Engineering Studies” is offered, and can consist of 4 ECE classes and an intro course for another area of engineering.</p>

<p>My advice is to apply to both and decide later, unless there is a strong preference one way or another - that seems to be a very common option.</p>