<p>I'm having problems deciding on what to major in: electrical engineering or computer science. I think I don't have to major in computer science because it's something that can be self-taught (I taught myself programming) and the resources are not very hard to come by. But, computer science is becoming an essential field which gives a very wide range of options to people, and companies mostly select job applicants with a degree in CS, not just anyone who 'read it up'. I love electronics and computers, but I don't want to have to study what I can read up on my own; I'd rather do something more relatively rigorous. What do you think of the two?</p>
<p>Do you like hardware or software more? That’s what differentiates the two.
They’re both important fields that will be necessary. Don’t worry about the market too much because there’s no telling what will be important in the next career’s worth of time.</p>
<p>Computer Science is much much more than programming. I wouldn’t underestimate its curriculum. Most courses in CS (unless intro to programming) expects you to know how to program. If the course uses a new language, you’re expected to learn it in the first week or two of the semester on your own. I guess you could still self-teach algorithms, machine learnings, data structures, etc. on yourself, but you could do just the same with any of the EE courses through MIT’s opencourse and others. </p>
<p>Being an EE major who took various CS courses, I can assure you that CS is not an easy field. In fact, I usually perform better in EE courses…</p>
<p>Like NeoDymium mentioned, you should do what you’re more interested in. You could also do EE major, CS minor, and vice versa. Many of my friends did that.</p>
<p>Hope this helped!</p>
<p>Thanks.
@Neo; Is the difference really that simple? I do know that I’ll be splicing lots of cables in EE, but at some point, I’ll need to design the software that works with the hardware I create.
@F4; I’m not very familiar with the university system. Does minoring in CS make me elligible for interviews conducted by companies seeking CS guys?</p>
<p>Minoring in CS is enough to get attentions for most software positions. In fact, my internship this summer is in application development, and I’m not even a CS minor. I also know many non-CS majors who interviewed with microsoft, facebook, amazon, and google. As long as your resume shows that you’re interested and potentially capable of software positions, they will interview you. EE degree with bunch of CS courses will do just fine. </p>
<p>However, keep in mind that you’re obviously going to be competing with CS majors for these positions, and you have to be at least as good as them to get those positions. Majoring in EE is already a big commitment and will limit the number of CS courses you can take. So it would be best to major in the field that interests you the most, and spend all your time specializing in it.</p>
<p>My advice to you is to take introductory courses from both EE and CS, and decide your major based on your experience from them. You can always change major during your first 2 years. It’s way better to major in the field you ultimately want to work in. I personally regret not majoring in CS, as I had bunch of EE requirements that limited my time to study CS.</p>
<p>I don’t think that you will in fact be writing the software to work with the hardware. You may work with firmware, but most of the time, software will be left to CS majors.</p>
<p>Yeah, programming is certainly not the same as CS. It’s more like the tool used to learn CS concepts.</p>
<p>Do you have a computer engineering major at your school? This might be something relevant to your interests; CE is focused on the more computer-oriented side of EE as well as the lower-level side of CS. This means things like computer architecture, chip design, and low-level/hardware-level programming (e.g. OS and driver code). The great thing is that you have the freedom to focus in whichever direction you like (CS/EE), and at least at my school companies don’t really care. As long as you can program and know data structures, you can get an interview with most companies (including MS, Facebook, Google, and Amazon), especially since there’s somewhat of a skilled CS labor shortage right now.</p>