<p>EE and CS can definitely go together. In fact, at UC Berkeley, we have them as a combined major. They have us go through two high level programming classes, one class on how computers work, one class on signal processing, and one class on basic circuit design. And after that we take whatever specialized classes we want.</p>
<p>In general, computer science deals more with the programs themselves. Generally everything from the Operating System up. You learn how to program, how to analyze programs efficiency, how operating systems work, how computer languages are developed, and probably some artificial intelligence. Depending on the school, you might have one class that teaches you the actual hardware of why a computer works, but outside of that it’s abstracted away and you only care about coding.</p>
<p>Computer Engineering deals more with the design of the actual computer, not the programs. Of course, computer engineers know how to program, but they generally learn from the operating system down. They generally cover much more of the digital design techniques that go into making a good computer hardware system than CS majors. In a sense its a cross between EE and CS, but its a very specific field of EE, dealing primarily with digital circuit design.</p>
<p>Electrical Engineering is much more broad. The curriculum can cover EM, optics, analog circuits, digital circuits, semiconductor physics, power transformations, and signal processing (both analog and digital). I’d say more but I’m actually much more on the computer science side of the spectrum</p>
<p>I would look at what kinds of classes Computer Engineers are required to take at Texas A&M. Like I said, CompE deals much more with the principles of digital circuit design, which you didn’t list as an interest, but I don’t know how flexible that school is with its requirements. What part of CS are you interested in? Do you just want to know how to code? Because most Electrical Engineering programs will require you to take a couple programming classes anyway.</p>
<p>It really depends what part of CS you’re interested in. If its the low level stuff about why computers work, I’d recommend Computer Engineering, probably the EE track. If you’re interested in compilers and higher level stuff like artificial intelligence, it might make more sense to double in EE and CS.</p>