LinuxQuestions.org
Support LQ: Use code LQ3 and save $3 on Domain Registration
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
LinkBack Search this Thread
Old 04-22-2007, 10:37 AM   #1
aguire
LQ Newbie
 
Registered: Apr 2007
Posts: 7

Rep: Reputation: 0
How important is math in CS and programming?


Hi guys,

Ok, here's a general question for you.How important is math in CS and programming?

I assume the answer to be "very important", so here's my next question.Which mathematical concepts are the most important for CS and a must-know for anyone interested in programming and CS in general?

I've had a look on the web site of a few CS departments, but they are not very clear on which math concepts related to CS they teach.For example not every course may be available on-line.Are the math classes really 1 or 2 and then the concepts are taught in the context of CS?
 
Old 04-22-2007, 10:55 AM   #2
introuble
Member
 
Registered: Apr 2004
Distribution: Debian -unstable
Posts: 700

Rep: Reputation: 31
Take a look at Knuth's Art Of Computer Programming. Should give you a rough idea :-)
 
Old 04-22-2007, 12:56 PM   #3
jtshaw
Senior Member
 
Registered: Nov 2000
Location: Seattle, WA USA
Distribution: Ubuntu @ Home, RHEL @ Work
Posts: 3,892
Blog Entries: 1

Rep: Reputation: 65
I'd say combinatorics and statistics are probably the mathematical concepts I find myself using the most... but that might be because of the kind of stuff I develop.

...

In school with the emphasis on computer science theory we used all sorts of math concepts that I don't find myself using as much in the "real world".

Last edited by jtshaw; 04-22-2007 at 12:58 PM.
 
Old 04-22-2007, 01:51 PM   #4
nadroj
Senior Member
 
Registered: Jan 2005
Location: Canada
Distribution: ubuntu
Posts: 2,539

Rep: Reputation: 58
last fall i finished college and earned two diplomas: 'computer programmer analyst', and 'computer systems technician'. in college we only had one required basic math course.

this winter i transfered to a university and there seems to be a very strong emphasis on mathematics. in fact, with all the math courses required for the CS degree, you only need to take another, i think, five courses and you also get a math degree. if you take a double major (CS and Math), there is something like 18 math courses required, and less than 10 CS courses.

as i havent really gotten into the math courses yet, i dont know for sure, but i think there is alot of emphasis on it because it gives you practice in the way you need to think when programming systems, that is, abstractly and logically. check the computer science article on wikipedia.org and youll see mathematics is a major field of CS, just as, say artificial intelligence.

and, as jtshaw said, it is correlated to what you are doing. example, computer graphics relies very heavily on math.

Last edited by nadroj; 04-22-2007 at 01:55 PM.
 
Old 04-22-2007, 02:10 PM   #5
aguire
LQ Newbie
 
Registered: Apr 2007
Posts: 7

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by nadroj
as i havent really gotten into the math courses yet, i dont know for sure, but i think there is alot of emphasis on it because it gives you practice in the way you need to think when programming systems, that is, abstractly and logically.
That's what i think as well and that's why i'm interested.In programming, for example, an algorithm that just works is something a lot different than an algorithm that works efficiently.
 
Old 04-22-2007, 02:30 PM   #6
nadroj
Senior Member
 
Registered: Jan 2005
Location: Canada
Distribution: ubuntu
Posts: 2,539

Rep: Reputation: 58
not if you work at microsoft

heres the link to the class website for the first CS course for my university (save the $500 it costs and do it yourself for free, heh).

at first i didnt like the course because it started off with basic programming concepts (in a language called Miranda). but in the end i like the course. it covers a variety of key concepts, giving an introduction to each. the two topics on math were mathematical induction (ie proving that an equation is equivalent to another one) and complexity (figuring out how costly a function is, see Big-Oh notation from wiki).

Last edited by nadroj; 04-22-2007 at 02:31 PM.
 
Old 04-22-2007, 03:09 PM   #7
aguire
LQ Newbie
 
Registered: Apr 2007
Posts: 7

Original Poster
Rep: Reputation: 0
Quote:
Originally Posted by nadroj

heres the link to the class website for the first CS course for my university (save the $500 it costs and do it yourself for free, heh).
Thanks, another interesting link. I've found a lot of interesting info searching the web sites of CS departments for the last couple of weeks.

Thanks for all the answers so far, guys.More info is always welcome
 
Old 04-22-2007, 07:10 PM   #8
95se
Member
 
Registered: Apr 2002
Location: Windsor, ON, CA
Distribution: Ubuntu
Posts: 740

Rep: Reputation: 32
I guess it depends on the context. I go to the same school as nadroj (very nearly done though!), and we take 5 mathematics courses from the math department. One of the mathematics courses introduces proof techniques while teaching about set theory, relations, etc.. Then there are a bunch of CS courses which make heavy uses of those concepts. You'll use these concepts in courses ranging from computer graphics to computational theory to software testing to anything really. Many are not math "heavy", but require a firm understanding of the core concepts.
 
Old 04-22-2007, 07:23 PM   #9
vxc69
Member
 
Registered: Jul 2004
Distribution: Ubuntu
Posts: 385

Rep: Reputation: 33
Quote:
Originally Posted by aguire
That's what i think as well and that's why i'm interested.In programming, for example, an algorithm that just works is something a lot different than an algorithm that works efficiently.
Quote:
Originally Posted by nadroj
not if you work at microsoft
LMAO



vxc
 
Old 04-22-2007, 08:27 PM   #10
nadroj
Senior Member
 
Registered: Jan 2005
Location: Canada
Distribution: ubuntu
Posts: 2,539

Rep: Reputation: 58
95se, your 'nearly done' as in after this week?

your site says your in the SE specialization. id like to do that, but all of the other (non-CS) courses are drawing me away from it. right now im actually registered in the networks and security specialization, but ill probably switch to either AI or plain honours.

i see your also in coop, mind me asking where your 3 placements have been? (or will be if you have any left)

good luck and congrats!

edit: i really need to disconnect my router or something.. so im forced to go study 212 and 256..

Last edited by nadroj; 04-22-2007 at 08:29 PM.
 
Old 04-22-2007, 09:08 PM   #11
rocket357
Member
 
Registered: Mar 2007
Location: 127.0.0.1
Distribution: OpenBSD-CURRENT
Posts: 474
Blog Entries: 100

Rep: Reputation: 74
My school is a bit of a M$ house...so unfortunately we hardly cover concepts such as pointers (and pointer arithmetic, etc...). Going on that alone, I'd say that everything "hardcore" in CS I've learned through studying Linux and the associated source code on my own time...

However, I can say that there have been two classes that required HEAVY use of mathematics...the generic algorithms class (that has been talked about already) and network security. The network security class was basically an encryption theory class (very little practical application, but man it was thorough!), so mathematics played a big role in it.

Oddly enough, I'm set to graduate this Christmas, and I haven't even taken MATH 201 (Boolean Logic). Doh? Guess I'll be taking that next semester...heh
 
Old 04-22-2007, 09:48 PM   #12
archieval
Member
 
Registered: Apr 2007
Location: Philippines
Distribution: Kubuntu, Ubuntu, CentOS
Posts: 289

Rep: Reputation: 41
In math, you can study about discrete mathematics and logic. Math can help you think more logically.
 
Old 04-23-2007, 11:15 PM   #13
graemef
Senior Member
 
Registered: Nov 2005
Location: Hanoi
Distribution: Fedora 13, Ubuntu 10.04
Posts: 2,376

Rep: Reputation: 147Reputation: 147
There is a wide variety of CS courses but being a "science" course they include mathematics at the core. Briefly the argument for math in CS is: it teaches you the rigorous way of thinking that is necessary for a programmer, it enables you to effectively describe an algorithm, it enables you to understand the underlying concepts (the science) of computing.

What gets taught will vary from course to course, one that I know quite well started with discrete maths (which was split into two modules) there ware two calculus papers one, stats one probability, differential equations, numerical analysis and Operational Research.

Of course not all computing degrees have maths but it would be rare for a CS course to not have any maths. Also the ACM has guidelines as to what should be in a CS degree.
 
  


Reply

Tags
cs, math, programming


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
math.h Damicles Programming 9 12-04-2010 05:51 AM
Help with math question nadroj General 28 01-20-2007 02:00 AM
Database programming like math? halfpower Programming 4 09-14-2006 07:27 PM
math program that I can enter math functions ... Four General 5 04-19-2006 08:02 PM
Math symbols ChimpFace9000 Linux - Software 1 08-18-2002 10:54 PM


All times are GMT -5. The time now is 01:53 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration