So ah...Wheres the math?
Author |
Message |
riveryu
|
Posted: Sun Aug 31, 2008 6:44 pm Post subject: So ah...Wheres the math? |
|
|
Hey, I have been looking up tutorials and things on the internet. I also read a first year UW Java text book. I can't see much math...
I've also seen CCC questions and the math involved seems to only involve a topic or knowledge in math, not actually math problem solving skills.
I'm having trouble seeing where math is linking to CS.
I have heard things like "CS is all math", so I'm wondering why I don't much of that.
I don't want to be backstabbed by my math grades in gr.12.
The part of CS I know that is centered on math are:
- graphics -> Calculus
- algorithm analysis -> functions ??
These are what I can name off my head right now.
It would be helpful if someone can explain exactly what I need to know in math and most importantly why.
No, you don't to write me an essay(but if you want to, you can, I'll memorize it just for your efforts).
Yes, I know math is the basis of CS. |
|
|
|
|
|
Sponsor Sponsor
|
|
|
changturkey
|
Posted: Sun Aug 31, 2008 7:20 pm Post subject: Re: So ah...Wheres the math? |
|
|
riveryu @ Sun Aug 31, 2008 6:44 pm wrote: Hey, I have been looking up tutorials and things on the internet. I also read a first year UW Java text book. I can't see much math...
I've also seen CCC questions and the math involved seems to only involve a topic or knowledge in math, not actually math problem solving skills.
I'm having trouble seeing where math is linking to CS.
I have heard things like "CS is all math", so I'm wondering why I don't much of that.
I don't want to be backstabbed by my math grades in gr.12.
The part of CS I know that is centered on math are:
- graphics -> Calculus
- algorithm analysis -> functions ??
These are what I can name off my head right now.
It would be helpful if someone can explain exactly what I need to know in math and most importantly why.
No, you don't to write me an essay(but if you want to, you can, I'll memorize it just for your efforts).
Yes, I know math is the basis of CS.
Good idea, I've been wondering this myself. |
|
|
|
|
|
Zeroth
|
Posted: Sun Aug 31, 2008 8:43 pm Post subject: Re: So ah...Wheres the math? |
|
|
Okay, here's a crash course in the foundations of math in CS:
One of the key foundations of CS is Boolean algebra. Basically, something a variable that is only either on or off... and the operations you can do on sets of boolean variables. This builds the foundation for how computers work, for conditionals, and for logic itself.
In addition, at higher levels of CS education, you will encounter a course called Discrete Mathematics. Or, as Wikipedia defines it:
Quote:
Discrete mathematics, also called finite mathematics, is the study of mathematical structures that are fundamentally discrete in the sense of not supporting or requiring the notion of continuity. Objects studied in discrete mathematics are largely countable sets such as integers, finite graphs, and formal languages.
Basic set theory logically is very important. As well as understanding how finite structures, like, say... state machines, or finite automata, work. Oh, and there's also Claude Shannon's Information Theory, which affects SO much. Information Theory affects language design, processor design, tcp/ip stacks, encryption and decryption, etc.
Another example, is the term Computer, which during WWI, and for a portion of WWII, was used to describe a large team of uneducated people, following basic instructions to process large amounts of numbers, say for ballistics trajectory tables. The desire to speed this up, provided an impetus for building machines like ENIAC.
See, so much of the theoretical basis of CS grew out of math, and the study of logic. What you are learning now, are concepts that have been refined over half a century of work, that stem from everything I mentioned. It seems like there is no math, but thats because you're learning the easy stuff.
If you meant math, as in algebra... well, math is way more than just algebra or calculus. Way, way, more.
EDIT: No, you don't need to learn anything from math, for CS. All of the stuff I mentioned is taught at higher levels because of the complexity. However, what you should take from math, is the ability to reason, and think logically. Those are the two most important concepts from math. |
|
|
|
|
|
Dan
|
Posted: Sun Aug 31, 2008 9:06 pm Post subject: Re: So ah...Wheres the math? |
|
|
riveryu @ 31st August 2008, 6:44 pm wrote:
The part of CS I know that is centered on math are:
- graphics -> Calculus
Graphics are deftly not calculus, they are almost the exact opieset, but discreet mathematics (witch i blive they removed from high school ciruclem now). In particular set therroy, matrices, vectors and graphs. There is also some optics from physics in there. Acuatly as zeroth pointed out alot of CS is discrete mathematics, witch makes it even more of a shame they removed it from high school. |
Computer Science Canada
Help with programming in C, C++, Java, PHP, Ruby, Turing, VB and more! |
|
|
|
|
Tony
|
Posted: Mon Sep 01, 2008 12:29 am Post subject: RE:So ah...Wheres the math? |
|
|
Calculate the average runtime of Quick Sort -- this is why UW will make you take two STATs courses.
Prove the lower bound of runtime complexity of Quick Sort -- Algebra, recursion, induction. |
Tony's programming blog. DWITE - a programming contest. |
|
|
|
|
btiffin
|
Posted: Mon Sep 01, 2008 2:20 pm Post subject: Re: So ah...Wheres the math? |
|
|
Everywhere. Instructions are numbers, images are numbers, colours are numbers, character strings are numbers, for loops are numbers, ... and mathematics is the language of numbers.
Math is usually hidden behind tools that allow us humans to interface with computers at a more conceptual level but is critical. A basic understanding of the truth that 3 < 4 is math and without it, a programmer would be lost.
Will you ever use 3rd order integration calculus in a career as a banking system programmer? Maybe not; but the boss will hire the developer that passed the course over the one that failed.
And again, as usual, I could have simply dittoed Zeroth - but that'd be less fun. "Less" being a mathematical concept.
Cheers |
|
|
|
|
|
Zeroth
|
Posted: Mon Sep 01, 2008 3:19 pm Post subject: Re: So ah...Wheres the math? |
|
|
<diversion>
Hey, its always nice to read your posts. Kind of a Zeroth comes to the past sort of thing, if you know what I mean. I can just imagine the day, way, way down the line, when I'm rambling about Python, and Java, and the young'uns keep rolling their eyes. "Oh, you had to use textual languages? I pity you." sort of thing.
</diversion> |
|
|
|
|
|
riveryu
|
Posted: Mon Sep 01, 2008 7:36 pm Post subject: RE:So ah...Wheres the math? |
|
|
Wow, thanks for your answers guys. You guys cleared up a lot of things.
I've originally been told that "the hard part of CS is math"(in chinese) by a relative who started learning CS at middle age(40-50) or so then went to back to being a biochemist again. So I doubted him a little.
So I guess a lot of the math I'll be hitting are theories in the high levels... |
|
|
|
|
|
Sponsor Sponsor
|
|
|
Richard Knop
|
Posted: Sun Oct 12, 2008 12:26 pm Post subject: RE:So ah...Wheres the math? |
|
|
It all depends on your area. There are areas where you won't need math that much but that is mainly because you will be using tools and frameworks that has already solved all math. problems for you.
But the better paying professions is CS are where you will use math a LOT. In fact, you will be lost without it - cybernetics, UI, Assembler, automatization. You will also need some basic understanding of physics (at least Newtonian).
But if you want to be just some front-end web or application developer, you probably won't neet it that much. It all depends on how far you wanna go. The deeper you dive, the more you will start to realize that people who invented computers, first programming languages etc... were real math gods. Without excellent understanding of advanced math they couldn't have done it.
Remember that you are benefiting from the work of others who have already solved most math. problems, and you are using their solutions (even though you might not know it) - languages, tools, frameworks etc... But there are also those who are developing these tools so the "lower" programmers can use them to code applications with only a small knowledge of math. |
|
|
|
|
|
|
|