Computer Science vs. Computer Engineering


Recommended Posts

I was wondering what the general difference is between Computer Science and Computer Engineering majors. What classes do you usually have to take for each and what is the focus of each? Is one more focused on how computers work (circuits, PCBs, etc.) and one more on programming or what? Thanks.

p.s. I did try looking for my self but all the sites I looked at were pretty unorganized so I was hoping some people with real life experience could help.

i recently payed a visit to the engineering department at Auburn University. They told us that computer engineering is the people that directly work with the circuits and such. computer science deals a lot with a variety of programming languages. The classes for both included computer history and the basics of programming and hardware. the engineering degree then broke off into specific classes about specific parts of the computer while the computer science degree focused on the basics of operating systems and the individual programming languages. its different at each university i believe.

  CatnipOligarthy said:
i recently payed a visit to the engineering department at Auburn University. They told us that computer engineering is the people that directly work with the circuits and such. computer science deals a lot with a variety of programming languages. The classes for both included computer history and the basics of programming and hardware. the engineering degree then broke off into specific classes about specific parts of the computer while the computer science degree focused on the basics of operating systems and the individual programming languages. its different at each university i believe.

Exactly, thank you colleges for making our future look fuzy more and more everyday.

I'm a computer engineer at UCI... so i'm pretty sure it's the same thing at most universities. Engineering is the hardware side of computer, and computer science is the software side. Engineering requires an extended study into physics and mathematics. CS involves studies in discreet mathematics, but not a great emphasis on physics. If you're comfortable with physics then you will be fine in engineering, but if not, then you might want to consider computer science.

  CatnipOligarthy said:
i recently payed a visit to the engineering department at Auburn University. They told us that computer engineering is the people that directly work with the circuits and such. computer science deals a lot with a variety of programming languages. The classes for both included computer history and the basics of programming and hardware. the engineering degree then broke off into specific classes about specific parts of the computer while the computer science degree focused on the basics of operating systems and the individual programming languages. its different at each university i believe.

yup you're right

im in computer science myself, the lowest we go is Machine Language (binary opcodes etc) and im sure glad im not taking engineering lol we had a guy do a presentation and he was a computer engineer and he showed us about what he does.....its cool but not my thing, i like working at higher levels like C/C++

  hunter1234 said:
CS involves studies in discreet mathematics, but not a great emphasis on physics. If you're comfortable with physics then you will be fine in engineering, but if not, then you might want to consider computer science.

that might be one of the reasons i went for CS lol i HATE physics and CS here doesnt require any Physics, just Calculus and Discreet Math :x

:p

  Rudy said:
that might be one of the reasons i went for CS lol i HATE physics and CS here doesnt require any Physics, just Calculus and Discreet Math  :x

:p

Yea i'm thinking of changing major too!!! I hate ASM so much!!! the only high level programming language i've learned is Python... but I know I'm not gonna use that in my career. And you know what? i'm studying for a physics quiz tomorrow. we're on relativity... ugh so boring!!!

I am a senior in Computer Science, and I can tell you that it is definitely more software related. Although, I do take a couple architecture classes, the majority are software based. There is a lot of math, theory, and algorithm analysis. Engineering majors develop software a bit more different than Computer Scientists do. Computer Scientists try to maximize run time and ensure they choose the best algorithm for the function, while Computer Engineers simply try to accomplish a task, regardless of many optimizations. Their main focus is on circuits, signal processing, hardware descriptions, etc.

Software Engineering is part of Computer Science, which includes the planning, design, and implementation of large scale projects. Understand that most of Software Engineering is done on paper, and not in the coding process.

Anyway - for my degree, I've taken classes like: Algorithms, Data Structures, Compiler construction, Machine programming, Computer Architecture, Operating Systems, Software Engineering, and Graphics.

Hope that helps a bit.

can anyone tell me why calculus is a requirement for computer science? :blink: i understand the need for basic math and some advanced math, but i don't see where calculus fits into everything... :huh: i've done a lot of programming myself, a lot of it before i was even in algebra II :blink: i'm in a c++ intro class right now, and we're adding variables together now :sleep: fun stuff...

but why do i need calculus? i mean, i understand it and all... i don't like doing it, but that's not the question :p

gameguy,

For me, it is a requirement for a couple of reasons:

1) It's something different than the finite and discrete mathematics courses

2) It's required for Engineering Physics (yes, CS people do take this too)...

--> Physics is helpful for many things...take graphics for instance, if you're doing game design, you have to calculate all sorts of forces, etc...

3) Almost every major here must take a form of Calculus...it's kinda like a basic math. The business majors take business calculus, while the CS & Engineering majors take Calculus and Analytical Geometry.

That's about the best reason I can give. I know I use the discrete math a bit more in CS, but if you do want to do Graphics...Calculus, Physics, and Matrix Analysis is a must. I'm sure there are other CS specializations out there which require some form of Calculus.

  gameguy said:
can anyone tell me why calculus is a requirement for computer science? :blink: i understand the need for basic math and some advanced math, but i don't see where calculus fits into everything... :huh: i've done a lot of programming myself, a lot of it before i was even in algebra II :blink: i'm in a c++ intro class right now, and we're adding variables together now :sleep: fun stuff...

but why do i need calculus? i mean, i understand it and all... i don't like doing it, but that's not the question :p

Calculus is required in CS. Sorry bro, just gotta stick with it.

  gameguy said:
can anyone tell me why calculus is a requirement for computer science? :blink: i understand the need for basic math and some advanced math, but i don't see where calculus fits into everything... :huh: i've done a lot of programming myself, a lot of it before i was even in algebra II :blink: i'm in a c++ intro class right now, and we're adding variables together now :sleep: fun stuff...

but why do i need calculus? i mean, i understand it and all... i don't like doing it, but that's not the question :p

calculus is essential and basic requirement for computer graphics, not tools but programming in language like c++, you study line algorithms, slop concept and apply all these in c++ to make these things...i know all these things are built-in in graphics.h but some programmed that graphics.h too...google line/circle/ellipse algorithms and you find just calculus there...in calculus we study y=mx+c and like that...i hope you can find more and more info on this from net

SkullBock,

I asked my CS instructor the same thing... 'Why is calculus required?' The following day he came back and handed the class a program and told us to do it. Unfortunately for us, you had to know calculus to do the problem.

I don't exactly remember all the details, but say you're being contracted to write a program for a construction company. They want to build a road through a mountain, but need to figure out ACCURATELY how much sand/gravel/dirt/rocks will need to be blasted. You need calculus because this is what calculus specializes in, finding the area underneath a curve... Mountains are certainly not straight. This kind of work is done constantly... as we all know, and it is calculated by programs. Programs that CS majors create... so.. CALCULUS IS NECESSARY

i have just applied to college and was fuzzy with the CS and CE differences. i knew CE focused more on the hardware aspect, which i like more. however, one of the deciding factors for me was what i read about future career opportunities. its being predicted (and is already happening) that CS jobs are going to decrease in the states significantly and be outsourced to foreign countries (like india). CE jobs on the other hand, will increase very significantly in the next 5-10 years.

but heres a question for all of you, what jobs will you get out of college after studying CS? CE?

most of the colleges and universities i applied to said average starting wages for CE graduates were around $40-50k a year.

btw, anyone here go to northeastern university, RIT, rensellaer, or university of rochester? hows life there?

  Quote
I am a senior in Computer Science, and I can tell you that it is definitely more software related. Although, I do take a couple architecture classes, the majority are software based. There is a lot of math, theory, and algorithm analysis. Engineering majors develop software a bit more different than Computer Scientists do. Computer Scientists try to maximize run time and ensure they choose the best algorithm for the function, while Computer Engineers simply try to accomplish a task, regardless of many optimizations. Their main focus is on circuits, signal processing, hardware descriptions, etc.

probably the best description so far but here's some of my insight.

Computer science is a science. Hence, its drenched in pure theory. What you guys specialize in is information theory and algorithm development. You try to put normal things into mathematical terms, and do it well! This includes languages, physics, processes, intelligence, etc. It's not so much about "learning to program" as much as "learning to design programs". When they teach you computer science, they usually teach you in tons of languages so you think language independant. The language is just a stumbling block, the emphasis is on the algorithm.

Computer engineering does involve lower level design, as well as high level design. An engineer is someone who you can ask to build something, and they will do it. It involves the entire system of things. For example, lets say you were designing the next generation software defined radio cellphones. There's all kinds of things invovled, first is the hardware design, the frequency usage, power usage, chip design, all the different components, costs, etc, and all the hardware design stuff that needs to follow codes and get fcc or csa or whatever approved. Then there's software end of it, how is the information being sent, are packet size big enough?, could we organize topology better, have firmware (For different regions) upload centres here, how much bandwidth. dsp (digital signal processing), Games? interface design? whatever. There's a lot to it, that the engineer needs to be responsible for and able to do. You ask him to do something, even if they knows nothing about it, and they should be able to do it.

So to contrast the two, computer science is really all about algorithm design and information theory. Computer engineers must take in a wide variety of disciplines and be able to accomplish many tasks. We are the applied science. Computer science is really more of a pure science.

If you choose computer science takes calculus 1-3 (3 should be multi-variate). And take a basic mechanics and optics couse. A 1st or 2nd year course should do you fine. Also take some engineering course and learn "some" low level stuff. It'll give you insight into optimizing, os design, compiler design, etc. later on

If you choose computer engineering, i suggest you take as many physics and math courses as possible, even though you might not need as much quantum theory as a pure electrical (computer engineering is like a subset of electrical engineering), you'll definently want to take it because in 20 years time or so, you want to be able to adapt, and not bound to a single technology. One thing i noticed is that too many school's are focused on cmos and even now, a lot of techniques are obselete (unless you happen to be a grad student doing research like many are).

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Yeah!!!! I was damn well shocked to see the tab with previous file open when I clicked on the new file. It had private info and I was opening another file to show another person. That was weird
    • The article says the whole setup is about the size of a pencil case which sounds pretty portable to me.
    • I thought router has to have 6 Ghz band to be called wifi-7, guess I was wrong...
    • I have the Pixel 9 Pro XL...Unless this thing is "leaps and bounds" faster than the 9, I'll pass. And by leaps and bounds, I don't mean on benchmarks. "Real world" faster. Most people don't even come close to topping out the performance of their phones. Tensor G5 is Google's most powerful chip to date, boasting a staggering 36 percent performance leap over G4.
    • MIT's stunning 'bubble wrap' device squeezes water out from thin air even in deserts by Sayan Sen Image by Matteo Roman via Pexels Massachusetts Institute of Technology (MIT) engineers have built a new kind of device that can pull clean drinking water straight out of the air—no electricity needed. It’s designed for areas where water is scarce and traditional sources like rivers or lakes aren’t reliable. Right now, more than 2.2 billion people globally don’t have access to safe drinking water. In the United States alone, 46 million face water insecurity, with either no running water or water that’s not safe to drink. This new device, called an Atmospheric Water Harvesting Window (AWHW), uses a unique hydrogel panel that looks like black bubble wrap. These dome-shaped bubbles soak up water vapor from the air, especially at night when humidity is higher. During the day, sunlight makes the vapor inside evaporate. That vapor then condenses on a glass surface and drips down through a tube, turning into drinkable water. The AWHW doesn’t rely on power sources like batteries or solar panels. It’s completely passive, meaning it works on its own. The team tested a meter-sized panel in Death Valley, California, one of the driest places in North America, and got between 57.0 and 161.5 milliliters of water per day even with humidity as low as 21 percent. That’s more than what other similar passive devices have managed. “We have built a meter-scale device that we hope to deploy in resource-limited regions, where even a solar cell is not very accessible,” said Xuanhe Zhao, a professor at MIT. “It’s a test of feasibility in scaling up this water harvesting technology. Now people can build it even larger, or make it into parallel panels, to supply drinking water to people and achieve real impact.” Another cool part of the design is how they kept the water safe to drink. Usually, these kinds of hydrogels use salts like lithium chloride to absorb more vapor but that can lead to salt leaking into the water, which isn’t ideal. To solve this, MIT’s team mixed in glycerol, a compound that helps keep salt locked inside the gel. In testing, the lithium ion concentration in the harvested water stayed below 0.06 ppm (parts per million), which is way below the safe limit. The hydrogel domes also give the material more surface area, letting it collect more vapor. The outer glass panel is coated with a special polymer film that helps cool the glass, making it easier for vapor to condense. “This is just a proof-of-concept design, and there are a lot of things we can optimize,” said lead author Chang Liu, now a professor at the National University of Singapore. “For instance, we could have a multipanel design. And we’re working on a next generation of the material to further improve its intrinsic properties.” Published in Nature Water, the study says the AWHW could last at least a year and shows promise for making safe, sustainable water in places with harsh climates. The researchers believe an array of vertical panels could one day supply water to individual households, especially in remote or off-grid locations. Source: MIT News, Nature This article was generated with some help from AI and reviewed by an editor. Under Section 107 of the Copyright Act 1976, this material is used for the purpose of news reporting. Fair use is a use permitted by copyright statute that might otherwise be infringing.
  • Recent Achievements

    • One Month Later
      Ricky Chan earned a badge
      One Month Later
    • First Post
      leoniDAM earned a badge
      First Post
    • Reacting Well
      Ian_ earned a badge
      Reacting Well
    • One Month Later
      Ian_ earned a badge
      One Month Later
    • Dedicated
      MacDaddyAz earned a badge
      Dedicated
  • Popular Contributors

    1. 1
      +primortal
      505
    2. 2
      ATLien_0
      209
    3. 3
      Michael Scrip
      202
    4. 4
      Xenon
      143
    5. 5
      +FloatingFatMan
      121
  • Tell a friend

    Love Neowin? Tell a friend!