Is computer science an easy major compared to other engineering majors?

<p>I have a degree in chemical engineering and did well in all those difficult classes (orgo, thermo, etc.) and can’t program my way out of a paper bag.</p>

<p>My very bright son is a CS major and a very good programmer - but it’s not easy and it is very time consuming. A lot of people wouldn’t have the patience necessary for it even if they did have the capacity for it.</p>

<p>

</p>

<p>I should tell that to my wife whose software (pharmaceutical manufacturing) is CMM level 5 with validation requirements to match :D</p>

<p>Plenty of liability in software actually… Not in a Professional Engineer sense but plenty nonetheless.</p>

<p>

No liability in the “if it’s designed wrong it might explode and kill someone” sense, the main purpose of a PE license (Civil = design buildings that could collapse if built wrong, etc).</p>

<p>@dirtysocks45,</p>

<p>It is indeed a misconception. While CS may not be “engineering”, at competitive universities, it is quite rigorous, requiring understanding of the same types of mathematical principles that are the foundation of the mathematics that engineering students are required to do. For example, a rigorous algorithms class requires understanding of discrete math, probability, linear algebra, and some other things.</p>

<p>FWIW, I had to take signals and systems as an undergrad CS major (along with electronic circuit theory). I found the class enjoyable although it was challenging. The topics covered required much of the same background that the algorithms class required – linear algebra, discrete math (the ability to solve recurrences and the like), some transform theory, etc.</p>

<p>

</p>

<p>As I said, if my wife’s software malfunctions and the wrong amount of medicine goes in a pill and ends up killing someone, she, individually, may not have liability (the way the bridge designer would) but ultimately the cause is found - traceable back to the manufacturer by batch number, manufacturing date, and the like - and it’s not difficult to trace it back to a person. If you have not gone thru an FDA audit you really don’t know what you’re missing :D.</p>

<p>Likewise, I have worked on a couple of projects where our products interact with a bigger ecosystem - say, a heavy duty truck. If we’re on the same bus that controls the real workings of the rig, we could screw up in a variety of ways and hose the rig during operation, which could cause, you guessed it… I have friends who work in hard real time systems (avionics, medical devices) and liability is very high on their list as well.</p>

<p>Liability does not go away because there’s no ‘PE’ on the title, believe me.</p>

<p>OP: No offense, but it sounds like your friend and your sister are a couple of morons. I’d be careful about taking advice from them - consider placing them in the smile, nod, disregard and forget category of acquaintance (academically and professionally, of course). I love my grandma but don’t ask her how to shop for tires.</p>

<p>CS isn’t easier than other engineering majors*, and the claim that it uses easier math is laughable.</p>

<ul>
<li>Ice cream engineering is indeed the best, hardest, engineering major around. The others are about on par, but Ice Cream is where it’s really at. To the Cone!</li>
</ul>

<p>

</p>

<p>It seems that’s specific to your CS program. Most other CS program are hard and a lot of programs have trouble graduating students. Very few admit mickey mouse for an MS CS. Maybe it is more competitive now</p>

<p>

</p>

<p>haha so funny lol</p>

<p>I did not find our MS program much different than those of harder or better schools. The Mickey Mouse admissions are common today even. Not as many people do the BA Unemployable Studies with an MS CS today simply because employers have been flooded with foreign talent hence less demand.</p>

<p>Grad CS is mostly papers, smaller projects, and theory. Heck, the grad Computer Architecture class was MUCH easier than the undergrad… Ditto the OS class. A lot of papers, comparative analysis, blah blah, but not the sheer coding of undergrad CS.</p>

<p>Take a no-thesis route and its pretty easy actually. I would think a good undergrad GPA and GRE should get even the most mickiest of the mickeys into a decent regional MS CS… I’m not talking top 25 or 50, but lots of schools right below flagship level would gladly admit Mickeys those days.</p>

<p>I find it odd that a grad course computer architecture is easier than an undergraduate one. Someone with a master degree should have a broader knowledge than someone with a BS degree. Thanks for the info though. I was considering getting an MS part time while working but I won’t even consider it if they really admit any dummy</p>

<p>Ice cream engineering, clown engineering, and moron engineering are much easier than CS.</p>

<p>Anyone who says CS is easy and non-math based needs to take an Automata Theory class. With that said, the hardest engineering major is whatever has the most professors that speak broken English.</p>

<p>

“Pass with a C and never use it” is a very viable option. It’s theoretical CS, after all. I wouldn’t be surprised if a lot of universities didn’t mandate the class either.</p>

<p>At my uni, its a required junior level course, but every uni is different.</p>

<p>The reason the grad arch course was MUCH easier is because the undergrad class had a very serious programming project component (using a microcode simulator, design and implement a computer architecture with an instruction set that facilitates running p-code in hardware). In contrast the grad course was mostly reading about historically important or modern architectures, what was good or bad about them, and so on. More papers, discussion, and more papers comparing the Illiac V with such and such. </p>

<p>For Operating Systems, more of the same. The undergrad course had us write a humongous piece of code over the semester while the grad course focused more on the theoretical gotchas of OS’s with little or no coding.</p>

<p>Programming Languages was about the same (bunch of goofy language assignments in both) and Theory class about the same also.</p>

<p>Keep in mind that there is tough and there is tough. Tough as in the compiler class, which has a stupendous and time sucking project component but is not necessarily difficult to pass, just a lot of work, or tough like theory that has a lot of hair pulling (denotational semantics, eek) to understand one page. </p>

<p>The happy medium were classes that had a bit of both. A lot of CS was in that category from my experience.</p>

<p>Seems like if I want to get an MS I would have to do good research on the program. Learning historical stuff is a waste of time and money. I want to take a compiler construction class as well, seems very interesting :)</p>

<p>CS is one engineering profession that many in the field do very well without a degree . You can’t say the same in almost any other major like ME, EE, Math, Physics…</p>

<p>Do anyone know what degree Tumblr founder has?</p>

<p>

</p>

<p>Pray tell us you’re an undergraduate :D.</p>

<p>There are some architecture designs (I’m picking a class here) that transcend technology trends. Without understanding the mindset that gave us CISC, and the arm race (ARM race :)) of backward compatibility, how would one ever understand how we got RISC? </p>

<p>Now, I’m not suggesting that learning how to wind core memory be made into a project or homework assignment, but there is plenty of historical value in understanding why things were the way they were, what issues they faced, and why are we where we are now. </p>

<p>(not to mention the 100-year old professor who actually worked on ILLIAC-V and had a trivial question in every PhD qualifier exam ever)</p>

<p>Hard as it may seem to be, we actually had high performance stuff in the 80’s (Hypercubes, Celerities, and other supermini’s) and even stuff that would blow away anyone’s idea of the 80’s computing (Symbolics Lisp machines, Crays, and the like). But, as fate would have it, while hardware of the time was pretty decent, compilers of the time generally sukked in the name of portability, and the result was great hardware and awful software. Why was it that on a VAX, PL/1 was as fast as C, if not faster? Could it be because the VAX PL/1 compiler was one of the best ever made, and could actually use the VAX instruction set to its full potential, while the C compiler would generate ‘portable’ code without using any of the VAX superb instruction set capabilities…</p>

<p>And that is why, my friend, we need to look in the past… In '85 a month into my first job we wrote a compiler from scratch that used the above comparison as its guiding light - use the native instruction set -. Our code generator, built in 8 weeks, was considerably more optimized than anything on the market simply because we used the target hardware as intended… Much of the above discussion was actually part of my interview…</p>

<p>Most if not all of developers who had success had been programming from an early age. I.E. 14 or 15 years. They are successful programmers but their not computer scientist. Math and Physics are research fields so you need a PHD to be success in them. Also computer science is a big field and if you want to create need technology, solve computational problems or do research you do need a phd in it as well.</p>

<p>Turbo if you are interested in any historical stuff from fields on CS, math , US history or pretty much any field. Wikipedia is free, you don’t need to have a class just for that. Time could be better spent learning computer architecture in depth</p>