Join 300,509 Programmers for FREE! Get instant access to thousands of experts, tutorials, code snippets, and more! There are 1,910 people online right now. Registration is fast and FREE... Join Now!
Hey everyone I'm about to start comp science. I am by no means a math wizard, often scared of it. Although I have been told two sides of the story. Some people tell me that I am doomed, and others that are more relaxed with programming say it ends up not being as much math as "they" tell you. So aside from school, and once on my own in the code world (websites,games,small apps) how much math is really entailed. Am I really doomed? (looking for some easing of pain here, reassurance if you will..lol) Thanks everyone!!!
Really if you want to do Comp Sci and are "afraid" of Math, then i would suggest you trying the Bachelor of Arts( BA) in Computer Science . The only Math class required for BA in Comp Sci is College Algebra. For some schools it might be Calculus I. Either way, a BA in CS is way less Math than a Bachelor of Science(BS). So you may not be doomed after all.
This post has been edited by Zerobu: 30 Mar, 2009 - 10:02 PM
Really if you want to do Comp Sci and are "afraid" of Math, then i would suggest you trying the Bachelor of Arts( BA) in Computer Science . The only Math class required for BA in Comp Sci is College Algebra. For some schools it might be Calculus I. Either way, a BA in CS is way less Math than a Bachelor of Science(BS). So you may not be doomed after all.
What do you think of the BA in terms of jobs will I still be able to get the same type of work that degree? (Noob here, asking cause idk) Thanks for your input!
The math gets more and more abstract the more of it you study but don't get intimidated, just do the exercises and you'll pass the course, simple as that. Takes some hours per day but it's worth it, agree?! As a rule of thumb, in Sweden you're supposed to spend 4 hours per day on each subject (On CS at least, other non-s(ci)ence students usually need only about half an hour + lectures).
So in conclusion, as I've said many times before, do the exercises.
What do you think of the BA in terms of jobs will I still be able to get the same type of work that degree? (Noob here, asking cause idk) Thanks for your input!
You should be able to get almost any computer related job with a BA, with the exception of a few. If you want to do anything technical such as Software Engineering, the requirements are almost always a Bachelor Of Science in CS. But here what you should do, take Calculus I, see how that goes. Then make the decision whether or not you want to do BS or BA.
This post has been edited by Zerobu: 30 Mar, 2009 - 11:09 PM
Yea, it might seem obvious, but in the first calculus/algebra courses you will pass the exam if you have done the exercises because you'll have learned the techniques that you need to solve the problems. Find someone that you can sit down after class and do them together. It will be much easier to stay disciplined if you're two or a group but in groups it can sometimes end up being too much talk about other stuff. Just make eachother stay disciplined, set a timer on two hours and don't stop until it sounds. And above all, bring coffee to the session. Being two or more will of course have the benefit that you can discuss the solutions, sometimes you will probably have different but correct solutions and you'll learn to think in alternate ways. I used to sit with a guy and we rarely had the same solution, I have him to thank for passing most of my math courses.
I can also tell you that on the bright side, the math gets more fun.
Really if you want to do Comp Sci and are "afraid" of Math, then i would suggest you trying the Bachelor of Arts( BA) in Computer Science . The only Math class required for BA in Comp Sci is College Algebra. For some schools it might be Calculus I. Either way, a BA in CS is way less Math than a Bachelor of Science(BS). So you may not be doomed after all.
not to scare you, but check what your school requires from you, I am REQUIRED up to Calc 2, and I HATE math, I get why they want you to learn it, because it has helped me think outside of the box...
BUT, some schools require more math than you may need. But if you want to be a 3D game programmer, I would recommend 3 classes.
Linear Algebra, Calculus 3 and Trig
Yes they sound scary, but Linear Algebra is the MOST important for 3D programming, and it's not so bad, I am taking it right now.
To sum things up, you don't "NEED" anything past a high school level algebra to code, but to code efficiently (aka replacing if statements with equations etc...) is the reason they want you to know math. The best part is that things can be learned without math, it will just be harder in the long run if you didn't understand what you learned and how the math was working.
3D Games, Physics Programs and Math Programs will most definatly require actual "Hard" math, but any other application should be doable without any math at all (or close to any)
From my understanding you are going Computer Science , you will need to have a lot of math, because it is research and all the finicky bits of coding. For example, while on a college visit, I had a Computer Science professor give me a 1/2 hour lesson on logic gates. A Software Engineering degree is more of a developing apps and such. //Differences as I see them.
Here's a link of flowcharts for SE and CS from K-State. http://www.cis.k-state.edu/programs/undergrad They are in the college of Engineering, so a bit heavy on the math. It really depends on the University.
In my experience, the more math you know the more you can do, but most of the stuff I've run into is mostly algebra tops. Like I said there are many applications of math to programming, but you don't need all of them.
My advice:
Go for it. If you need help, ask for it. If it kicks your ass, try to do better next time. Sorry to rant, but you asked.
depends on what you mean by "A lot" because logic gates don't even evolve a real "math" more of changing zero's to ones and ones to zeros with AND, OR, NAND, NOR, XOR...etc...
engineering needs a bunch of math due to conversions of watts etc...
for computer science (which is basically programming) all you really need is know how to do... Add, Subtract, Multiply, Divide...
the rest is done with loops (powers, Iteration)...math just helps conceptualize what you need to do, thus helping you.
depends on what you mean by "A lot" because logic gates don't even evolve a real "math" more of changing zero's to ones and ones to zeros with AND, OR, NAND, NOR, XOR...etc...
engineering needs a bunch of math due to conversions of watts etc...
for computer science (which is basically programming) all you really need is know how to do... Add, Subtract, Multiply, Divide...
the rest is done with loops (powers, Iteration)...math just helps conceptualize what you need to do, thus helping you.
I have always viewed computer programming and Computer Science as two different things. I would say that if all you actually want to do is computer programming then not as much math is required unless dealing with 3D concepts (games, modelling, etc) and other sciences. If you want to do actual Computer Science then the more math the better since it will help you down the road when attempting to desgin that new algorithm or data structure which helps lead to the next 'Google'
As for the poster above. I would beg to differ that logic gates do in fact involve real math. Logic and Boolean Algebra are math in their own right with many of their own proofs all of which is applicable to both software and hardware. Although the subject can be taught on its own it may also be taught in a Discrete Mathematics course (Disclaimer: I have had both courses, once as an EET major and now as a CS major).
This post has been edited by madblogr: 31 Mar, 2009 - 09:36 PM
In my experience, there are two kinds of math you will have to deal with in CS:
Math department math, and CS department math.
Math department math is the kind of math you get in Calc classes - very abstract and designed to weed people out of a bunch of different majors. If, like most people have said before, you try and think through most of the excercises and make sure you have a basic grasp of the techniques (no more than an hour or two of homework a night, for me, and I am not very good at math at all), you won't have any trouble passing the class. If you want to get A's, you'll have to put extra work in, to be sure, but nobody who gives a legitimate effort would be in much danger of failing a class.
CS math is less conceptually difficult. You probably will not have to use anything more complicated than derivatives and integrals in CS despite the calc prereqs, and the derivatives and integrals that you do use will be fairly simple compared to most of the problems in your calc classes. Most CS department math isn't really math in the sense of calculus or trigonometry (unless you want to get into graphics) as it is counting. You'll do a bunch of binary stuff, but once it "clicks" the first time you won't really have to think about it too much. You'll do a bunch of fairly simple algebra. Most importantly, CS math has a point. You aren't solving equations for the sake of solving equations like you do in math classes, you're solving equations because they'll help you solve a programming problem.
My advice is just to man up and fight through the one or two calc classes you have to take. They are tough to get A's in (most CS requirements are, as you'll find out), but they're not all that tough to pass with a B or a C as long as you put a legitimate effort in. Once you get past those prereqs, the CS classes you'll take won't be difficult because of the math involved. Some of them will be tough for other reasons, but provided you can figure out binary, traditional math skill probably won't be the limiting factor in your CS success.
I remember I was in your position coming out of high school. I hated math, and I only took pre-calc in high school.
I suffered through Calc 1, but by Calc 2 I started to like math. I'd say just try it out, whats the worst that could happen... you switch back to a BA rather than BS.
If you really want to excel in Computer Science, I would argue you NEED to know math, and know it well. Computer Science, in every aspect, stems from math in one way shape or form.
I would say DEFINITELY give it a shot with the math requirement, you might see that you like it.
Also, BA wont pay as well as BS- that was my initial motivation for doing the BS program.
Good luck and remember you can only go as far as you push yourself!
From my understanding you are going Computer Science , you will need to have a lot of math, because it is research and all the finicky bits of coding. For example, while on a college visit, I had a Computer Science professor give me a 1/2 hour lesson on logic gates. A Software Engineering degree is more of a developing apps and such. //Differences as I see them.
Here's a link of flowcharts for SE and CS from K-State. http://www.cis.k-state.edu/programs/undergrad They are in the college of Engineering, so a bit heavy on the math. It really depends on the University.
In my experience, the more math you know the more you can do, but most of the stuff I've run into is mostly algebra tops. Like I said there are many applications of math to programming, but you don't need all of them.
My advice:
Go for it. If you need help, ask for it. If it kicks your ass, try to do better next time. Sorry to rant, but you asked.
Thanks for that link, that was very helpful. It was cool they laid out the options like they did.
I would like to thank all of you for your respones, it means a lot that people took the time to answer. I am also very thankful for this website it has helped me more than any of my instructors have been able to. All of the reponse have encouraged me even more, to keep hustling, suck it up and do it. Currently after reading responses I am torn between computer science and computer engineering. Below I have posted two links from Purdue for each degree. Again what I am looking to do is websites (which I will learn on my own) and building Apps, and possible small games.
Well if you want do websites and build game apps, CS is definitely the way to go, and also CE has way more math that CS. I'm not trying to discourage you or anything just letting you know what's out there
I completed a Computer Science degree where we did various aspects of Maths, such as Automata Theory. I come from a background where I had trouble with Maths but during University because of the effort I put in, I'm pleased to say I've overcome this.
As already has been said, if you put in the work you'll do well, if you don't you'll remain as hopeless as you were when you started.
I am in 3rd year Computer Science and I have had my issues with math, but overall i actually like the math. It does help a little in programming. Depending on the institution, you might do a varying number of math courses.
My advice is to work as much exercises as possible, do not be afraid of the math.