Computer Science vs Computer Engineering
Blogs > Try |
Try
United States1293 Posts
| ||
naonao
United States847 Posts
| ||
Racenilatr
United States2756 Posts
| ||
JWD
United States12607 Posts
| ||
Pervect
1280 Posts
| ||
Luddite
United States2315 Posts
On the other hand, there's lots of people who go into CS and want to make games, and probably there's still a need in the game industry for people who do CE and want to make games. So you might be more marketable that way. | ||
Pengu1n
United States552 Posts
Computer Engineering deals more with circuits, signals, assembley etc. I'm currently majoring in Computer Science myself | ||
cgrinker
United States3824 Posts
Anyways, are you sure you want to make video games? Are you sure you just don't want to play video games? | ||
EsX_Raptor
United States2801 Posts
| ||
Try
United States1293 Posts
On February 17 2009 04:03 cgrinker wrote: If you want to make video cards for video games then to computer engineering. You have to do some architecture for CS anyways. Anyways, are you sure you want to make video games? Are you sure you just don't want to play video games? well, i've learnt some basic C++ and how to use Blitz, and so far its been fun. I enjoy the "rough" crunch-time lifestyle. And I really don't have any interest in any other fields. | ||
Phyre
United States1288 Posts
On February 17 2009 04:05 Try wrote: well, i've learnt some basic C++ and how to use Blitz, and so far its been fun. I enjoy the "rough" crunch-time lifestyle. And I really don't have any interest in any other fields. Haha, if you enjoy crunch you're going to fit right in at a game studio. I'm sure Mora can back me up on this. On topic, Computer Science. I'm CS myself. | ||
EsX_Raptor
United States2801 Posts
| ||
fusionsdf
Canada15390 Posts
CS is definitely the way to go for what you're interested in | ||
Kennigit
Canada19447 Posts
| ||
Archaic
United States4024 Posts
| ||
Cobalt
United States441 Posts
That seems to contradict everyone else in this thread though. | ||
Qatol
United States3165 Posts
| ||
kawaiideshou
United States34 Posts
Computer Engineering isn't for you, though. I'm a Computer Engineering major and I had to take only the most basic programming courses. Most of what I do end up coding is Assembly-ish, which won't help you in the game programming world. What Qatol said is true, though. You have to be able to keep up with the evolving hardware technologies, which may have impacts on software programming. Computer Engineering, in that sense, may be more useful to you. | ||
AcrossFiveJulys
United States3612 Posts
On February 17 2009 04:17 fusionsdf wrote: software engineering is more about lowlevel hardware/software interaction, like computer organization, logic gates and that kind of stuff You must be referring to CE, not software engineering, because that is so far from the truth it's ridiculous. For the guy asking about software engineering, it is more of a course on how to go about designing huge software systems efficiently, including programming practices, design patterns, and other related topics, whereas computer science is more general and will go deep into computation theory as well as touching on software engineering principles. | ||
AcrossFiveJulys
United States3612 Posts
On February 17 2009 06:08 Cobalt wrote: A computer science teacher at the best school in my state told me this: computer science is about the theory behind computing, whereas computer engineering is about implementation of that theory. So programming etc. would fall under computer engineering, whereas making new programming languages, optimization, and innovation would fall under computer science. That seems to contradict everyone else in this thread though. what state do you live in? Is it... NOWHERE? | ||
miseiler
United States1389 Posts
CS would be the best between the two. The curriculum likely includes linear algebra and vector mathematics, which as someone mentioned is required. No, make that your entire job, start to finish. Data structures should be required for anyone who does any programming at all, and OS is I guess useful because it should teach you threading models. Other than that, CS is meh. | ||
kawaiideshou
United States34 Posts
On February 17 2009 06:33 miseiler wrote: They're all crap, but you could say that about any undergraduate degree. It's really what you learn outside the class that will be helpful, such as the proficiencies you already mentioned. CS would be the best between the two. The curriculum likely includes linear algebra and vector mathematics, which as someone mentioned is required. No, make that your entire job, start to finish. Data structures should be required for anyone who does any programming at all, and OS is I guess useful because it should teach you threading models. Other than that, CS is meh. Incidentally, my Computer Engineering curriculum requires Linear Algebra and Vector mathematics, but the Computer Science curriculum at our school does not. I also learn the basics about OS and threading models in my other courses (Computer Architecture and Design, and I'm required to take an Operating Systems CS course as well). | ||
Mastermind
Canada7096 Posts
On February 17 2009 06:08 Cobalt wrote: A computer science teacher at the best school in my state told me this: computer science is about the theory behind computing, whereas computer engineering is about implementation of that theory. So programming etc. would fall under computer engineering, whereas making new programming languages, optimization, and innovation would fall under computer science. That seems to contradict everyone else in this thread though. that teacher is WAY off. CS is about designing programs, CE is more about hardwars and low level software | ||
pirate cod
810 Posts
Corbalt is correct. Designing programs is not CS - that's software engineering but normally the two are taught in the same curriculum. As Cobalt stated, CS is theory (Computer __Science__) - looking at computers/computing from an empirical point of view and Computer __Engineering__ is the implementation. | ||
Try
United States1293 Posts
| ||
fight_or_flight
United States3988 Posts
But the large majority would probably be programming completely abstracted away from he hardware which means CS. I think learning embedded hardware would be helpful though and may give you an extra edge above other people in addition to a CS degree. | ||
prOxi.swAMi
Australia3091 Posts
| ||
Phyre
United States1288 Posts
On February 17 2009 06:37 kawaiideshou wrote: Incidentally, my Computer Engineering curriculum requires Linear Algebra and Vector mathematics, but the Computer Science curriculum at our school does not. I also learn the basics about OS and threading models in my other courses (Computer Architecture and Design, and I'm required to take an Operating Systems CS course as well). That's not entirely true. Linear was required for me. I don't remember having any vector math classes beyond Linear though. Just some forewarning though, for anyone trying to become a game programmer don't rely on your classes alone to prepare you for that job. You'll go out into the job market and realize you've got practically nothing to really show. You'll need to code on your own, make your own games, pursue internships with every fiber of your being, etc. Really, that stuff outside of school work will be what separates you from the wanna bes and the people that make it. I'm somewhere in between since I figured that out very late in my college career and I'm paying for it now, working way harder to get to where I want to be. | ||
Badjas
Netherlands2038 Posts
Hobby lots on for example mod making (advanced SC2 stuff, counter-strike, whatever's mod-able). Make stuff with standard all-round libs like lib-sdl and the like. Learn fast prototyping. But I think you have to specialize, if you want to work on any bigger project. Companies look for the perfect guy for their graphics engine, or the perfect guy for their scripting work, or the one that can manage a team or yada yada. An all-rounder has to excel at a lot of areas to sell himself. You'll find out what you find most fun. In this vein, it is useful to know some existing gaming 'engines' (quake engine and others that are open sourced). | ||
AcrossFiveJulys
United States3612 Posts
Computer Science is the theory of computation and what can be done with it in different situations. Different programs heavily differ in what their curriculum entails. At most schools, you will learn languages and practice applying them to problems, writing code to complete labs. In most programs, you will also learn the basics of computer engineering, including computer architecture and digital logic. Finally, you will probably also take calculus (introductory, then vector), probability and statistics, and physics-- my program requires 10 courses from these 3 categories. I am a computer science major, so if you have any questions you can PM me. Computer Engineering deals with the software / hardware interface. You learn in detail how a computer is designed, from analog circuits to digital logic, and how low level code (drivers, firmware) is used to make devices run. You will practice implementing hardware/software systems and extensively practice digital logic, such as building a processor from scratch. You will also take a number of physics and other "hard science" courses, as well as a decent amount of math courses. Software Engineering is the design of software systems. You will learn design patters, development principles and strategies, and extensively practice implementing said techniques with a multitude of languages. The amount of math and theory you will learn will be minimal. | ||
Bill307
Canada9103 Posts
Computer Science may teach you good programming practices (e.g. one such course was mandatory for my CS degree, and others were optional), but its real focus is on the mathematical and theoretical aspects of computers and computation, not on programming. Despite that, CS may be a better option than SE at your institution, depending on what the required courses are. E.g. at my university, I think that the CS requirements are just a subset of the SE requirements, so you could in theory take all of the same courses as an SE student while being in CS. You wouldn't graduate as a certified engineer, but if there are required SE courses that don't interest you (e.g. business and chemistry, in my case), then you can avoid them and take more courses that do interest you (e.g. psychology and physics, in my case). Computer Engineering focuses on the hardware computers run on, and it's probably the worst option of the three if you want to do programming, but to be honest I don't know much about it. On February 17 2009 07:31 Try wrote: I have no idea who to believe... Find out what courses are mandatory in each of these programs at the institution(s) you're thinking of attending. If you're not sure what the course titles mean, then post them here and we'll help you understand what you'll be forced to learn. Every college and university will have its own ideas of what CS, SE, and CE are, so this is the best way to find out which major you should enroll in. | ||
Bill307
Canada9103 Posts
On February 17 2009 06:08 Cobalt wrote: A computer science teacher at the best school in my state told me this: computer science is about the theory behind computing, whereas computer engineering is about implementation of that theory. So programming etc. would fall under computer engineering, whereas making new programming languages, optimization, and innovation would fall under computer science. That seems to contradict everyone else in this thread though. In his defense, maybe computer engineering used to be about both programming and hardware, but in modern times its focus is on hardware, and a new field called software engineering focuses on programming. | ||
Bill307
Canada9103 Posts
Also, Computer Engineering is almost definitely not the major you want. The hardware knowledge you'll need can be learned in CS and SE. Anything extra you would learn in Computer Engineering will be completely useless. E.g. do you care about the electromagnetic effects that hinder chip sizes from getting any smaller than they are today? Only if you want to build your own console, otherwise it'll never matter to you. | ||
IzzyCraft
United States4487 Posts
| ||
cgrinker
United States3824 Posts
| ||
cgrinker
United States3824 Posts
| ||
slained
Canada966 Posts
| ||
Iankill
Canada109 Posts
| ||
Badjas
Netherlands2038 Posts
I think that by far the most important thing is what you do in your spare time. Spend lots of time learning existing open source games, modding, learning (scripting) languages, lua python lisp C++ with a bunch of libs (directx, opengl, boost, libsdl, alegro maybe even), java, webbased stuff. Do some work in sourceforge or so.. Any amount of useful hobby experience you can put on your CV, will be the eye catcher for any employer. | ||
| ||