What exactly is computer science?

<p>I know that literally it means "the science of computers", but that is too vague. For example, what do they do on a daily basis?</p>

<p>If I enjoy programming, would I enjoy computer science?</p>

<p>science on how to manipulate computers to do stuff for us.</p>

<p>
[quote]
**
If I enjoy programming, would I enjoy computer science?

[/quote]
**</p>

<p>My answer is IF you excel at math yes. If not you will not make it to the top of the cohort. Only you can answer this question. There is an inherant struggle in CS btwn the Math folks and the "regulars".</p>

<p>
[quote]
My answer is IF you excel at math yes. If not you will not make it to the top of the cohort. Only you can answer this question. There is an inherant struggle in CS btwn the Math folks and the "regulars".

[/quote]
</p>

<p>Not good; I've always been ok at math (mostly A's and B's), but never actually enjoyed the subject. Now, I'm in AB Calculus, and am barely scraping by with a B.</p>

<p>If I had to pick a single branch of math that I disliked the most, it would be geometry (specifically trig).</p>

<p><a href="http://cs.stanford.edu/degrees/undergrad/Requirements.shtml#1%5B/url%5D"&gt;http://cs.stanford.edu/degrees/undergrad/Requirements.shtml#1&lt;/a>

[quote]
** *</p>

<pre><code> Math 41/42 or Math 19/20/21 - Calculus - (weekly problem sets, two midterms and final)
</code></pre>

<p>If you recieved AP credit placing you out of these courses, you can count that AP credit towards the major instead of taking 41/42 as follows: </p>

<p>Statistics - (weekly problem sets, midterm and final)
You must take either Stat 116, MS&E 120, or CME 106. AP Statistics credit does not count towards the major. Stat 116 is a class that meets every day for an hour. MS&E 120 meets three times a week for about an hour and a half. If you have a limited interest in statistics, some people recommend that you take the MS&E class instead as it is somewhat less theoretical.</p>

<pre><code> CS 103 - Discrete Mathematics and Structures - (weekly problem sets, midterm and final)
CS 103 is an introduction to the type of math and theory which you will see throughout the CS major. In order to satisfy the 103 requirement, you can take the 103A/103B sequence, or you can take 103X. 103X covers basically the same material as 103 A/B does, but it does so at a much faster pace. In general, you should only take 103X if you have already had some exposure to discrete math, or you are extremely comfortable learning new mathematical concepts quickly. Check out the class webpages to see what material is covered, so you can judge whether it is stuff you are or will be comfortable with. If you take 103X, you will need to take 3 electives to fulfill the major requirements. If you take 103A/B, you will need to take 2 electives.
*

Math Electives
You need to take two of the following courses:
o Math 51* - Linear Algebra and Differential Calculus of Several Variables
o Math 52 and 53 or Math 103* or Math 113* - Various versions of Linear Algebra and Matrix Theory
103 and 113 cover the same material, but 113 takes a much more proof based, theoretical approach, while 103 focuses on applications. Taking 52 in addition to 53 will also cover all the material in addition to some multivariable calculus.
o Math 108 - Combinatorics
o Math 109 - Applied Group Theory
o Math 110 - Applied Number Theory
o CS 156 - Calculus of Computation
This is a new course, so not much is known about it yet.
o CS 157* - Logic and Automated Reasoning
This is a standard logic class with an offering in the fall. The class usually consists of 4 problem sets and a final exam, focusing on automated reasoning. You should note that the CS department will also accept Philosophy 151* as a substitute for CS 157. Phil 151 is the logic course which Symbolic Systems majors are required to take. It is considered significantly more difficult than either offering of 157, but is highly recommended for anyone with an interest in the subject.
o Phil 151 - First-Order Logic
o CS 205 - Mathematical Methods for Robotics, Vision and Graphics
This class focuses on applying mathematical methods to real world computing systems. It's taken largely by first year graduate students and upperclassmen, but it would not be unreasonable for a younger student who was interested in Robotics/Graphics/Vision to take it if they have had an introduction to matrix theory and linear algebra and are comfortable learning mathematical concepts quickly. There is one open ended final project which should "show you learned something". Students also have the option to turn in multiple smaller open ended assignments instead of one final one. Last year, an optional final was offered which could replace the project.
o CME 100*, 102, or 104 - Vector Calculus, ODEs, and PDEs
* Warning: These pairs of classes cannot be used together to satisfy the Math elective (i.e. only one from each pair can be counted):
o Math 51 + 103
o Math 51 + CME 100
o Math 103 + Math 113
o CS 157 + Phil 151
</code></pre>

<p>

[/quote]
**</p>

<p>programming != computer science. It is called a "science" for a reason. But anyway, from what I've heard/seen, real "computer scientists" regularly use linear algebra/calculus/differential equations, and most computer science major programs include at least a few courses beyond that level (discrete structures, complex analysis, algebra/number theory/cryptography, etc).</p>

<p>Anyway, if you are only in HS you have plenty of time to decide. When you get wherever you are going, talk to your advisor and professors and upperclassmen. They are there (advisors anyhow) to help you with things like this. Try taking a 200+ level CS class before you affiliate with a major (maybe also with a class in whatever other major you are considering). Just because you "only" have a B in your first semester of calculus in high school doesn't mean anything, a lot of people find linear algebra way easier than calculus. You may find you enjoy math more once you are actually applying it (in computer science, for instance) rather than just cranking out integrals and derivatives.</p>

<p>Heh, computer science is just a thinly veiled math major.</p>

<p>Some of the greatest computer scientists rarely use a computer. You will need a lot of math for cs. And it's math that you're not really accustomed to.</p>

<p>Would I be accurate if I said that CS is about the same as a mathematics major?</p>

<p>In the higher levels YES.....but many jobs in computer science are not. The greater your math skill the higher level of work you will do. I only warn you about the required math skill because many students do not seem to know this. I feel sorry for kids who think they want CS only to find out they will be technical advisors and not the higher level CS job.</p>

<p>explain what you mean by higher level CS job</p>

<p>Pattern recognition, intelligence, advanced algorithms for various applications, etc. Lower level CS jobs are basically programming.</p>

<p>I'm assuming that the higher level work pays more.</p>

<p>Rest assured very large difference. In type of work, level of pay.</p>

<p>are the math classes the same for computer engineering? or is it less rigorous?</p>

<p>Engineering where? I think that the posting #5 should help you compare.</p>

<p>
[quote]
My answer is IF you excel at math yes. If not you will not make it to the top of the cohort.

[/quote]
</p>

<p>don't listen to this crap. don't let anybody tell you what you can't do </p>

<p>you can do anything you want if you put your mind to it</p>

<p>
[Quote]
are the math classes the same for computer engineering? or is it less rigorous?

[/Quote]
</p>

<p>Computer Engineering is more rigorous (well, in my opinion). Calculus thru multivariable, linear algebra, differential equations, eng vector calculus, Discrete/Continuous Signals and Systems, etc.</p>

<p>
[quote]
**don't listen to this crap. don't let anybody tell you what you can't do

[/quote]
**</p>

<p>Geez! I didn't tell OP not to do anything. I reported facts. I posted a degree requirement. There is a wide range of jobs in CS and to that end any individual that can manage a degree requirement will enter the market.<br>
I find it interesting you call facts CRAP?</p>

<p>
[quote]
Geez! I didn't tell OP not to do anything. I reported facts. I posted a degree requirement. There is a wide range of jobs in CS and to that end any individual that can manage a degree requirement will enter the market.
I find it interesting you call facts CRAP?

[/quote]
</p>

<p>too small, too slow, too short, too weak, too dumb</p>