>>12765526Here's how
>EEDo this if you generally like electronics and want a generalist approach to engineering and technology. It's very versatile and most programs are decent.
>CE Do this if you want to do work specifically about making and iterating on design of computer hardware, firmware, etc. You trade some of your communication classes in EE for VLSI and similar topics. Despite people saying "it's just CS but rigorous" it's really just EE with a focus on computing technology. What CS you learn is usually relegated to data structures and like a systems class. But you do get experience with processor microcode and some assembly. Most schools are decent.
>CSThis is the tricky one. First, check to see whether you have a good program. Good programs generally have 2-3 semesters of calculus at the very least, options to take the intro proofs and probability in the math department, and a very bare minimum of any courses devoted to software. These programs are fairly rare in the US.
A good CS program will teach you how to solve problems using computation - essentially, instead of just using calculus and physics, you tackle engineering problems using other parts of pure math like combinatorics and abstract algebra. Furthermore, a good systems core will teach you about the hardware software interface to the point of doing well with embedded work or firmware, but you won't have as much experience with the nitty gritty of computer hardware as a CE would.
I'd recommend the CS major if you're at a program like MIT, Uchicago, Stanford, etc. A double major with math is the most "academically complete" and makes for a very powerful, rigorous degree, but if you just want a job, the CS degree alone will suffice. But I'd be very wary about CS - if you're not careful, you could end up in a program that wastes your time.
I skimmed over the features of these degrees, so feel free to ask further.
>t. did math/CS double major