<p>I took AP Computer Science this past year, and I really enjoyed the problem solving aspect of it. Having scoured these forums, I've come to doubt whether I should apply for the major because of the intense level of mathematics involved. While I'm not totally remedial in math, having taken Calculus my junior year (AP conflicted with my schedule), I do not enjoy math at all. For a computer software engineer position, how much math would you say is balanced with all the logic based programming?</p>
<p>I'm not too sure how much math is involved on the job, but you can expect just as much math as any engineering major (up to calculus 3, linear algebra, differential equations)...definitely not for those who hate math.</p>
<p>sleeper is right, you need about as much math as any other engineering major. In addition to calculus and linear algebra, you probably will have to take a course or two on discrete mathematics.</p>
<p>Yeah, I forgot about discrete mathematics, which most engineering majors (from my knowledge) don't need to take. So in a sense, you actually have to take more math than the average engineering major.</p>
<p>Yes but you'll rarely use math in the workplace once you get a software dev. position. How hard is it to get through a few math classes in college!?</p>
<p>CS is NOT all about programming. If you really just want to be a software engineer, go with computer engineering. If you want to say work at Nvidia on new raster algorithms, by all means choose CS. Far and away most jobs programming are not difficult but rather tedious which is why CS is not a great choice if that's what you want to do.</p>
<p>CS is not all about programming, but software development basically is. And 95% of people with CS degrees do software dev!</p>
<p>CS is not about programming or software development. read the wiki article, fatpig554.</p>
<p>The fact remains, an overwhelming majority of CS students enter the software industry.</p>
<p>
[quote]
The fact remains, an overwhelming majority of CS students enter the software industry.
[/quote]
</p>
<p>A good portion of math/physics students enter the finance industry. That doesn't imply that finance is the best use of a math/physics degree or even that math/physics degrees are most appropriate for anyone who wants to go into finance.</p>
<p>So what's the best degree for the OP since he DOES want to enter the software industry?</p>
<p>I have already suggested computer engineering. There is typically a hardware and software track within that major.</p>
<p>The original poster asked: "For a computer software engineer position, how much math would you say is balanced with all the logic based programming?"</p>
<p>My answer is that for a software engineer position, not that much math is used. What exactly is your complaint? When did I say that a CS degree is all about programming, and what does that have to do with his original question?</p>
<p>
[quote]
CS is not all about programming, but software development basically is. And 95% of people with CS degrees do software dev!
[/quote]
</p>
<p>Possibly, but a CS person who is doing software development might be asked to defend the correctness of their approach. In this case it is helpful to have the math background. Even if you don't remember the details, you'll at least know where to look to review concepts.</p>
<p>It will definately give you a way to look at certain problems. I don't know how other people look at stuff but I make it very logical. For example, I tried to make mappings out of some of the design patterns so I can understand them. The software engineering classes I took did not require much logic at all, and even the stuff we did in the linux kernal didn't need much math.
Taking the calculus classes did not help me much. Taking classes (algebra) and doing proofs really helped. Once you see how some math is done, the rest will be easier. And discrete stuff might interest you a lot more, I know most of my friends prefer it. It will be more useful for you anyways.</p>
<p>Thank you guys so much for your helpful responses! Over the past few days, I've realized I might lean more towards getting a computer engineering degree because I've always been fascinated by computer hardware as well. After getting a feel of "both worlds," would this degree successfully allow me to pursue either career (software or hardware)?</p>
<p>And thank god the software aspect doesn't require too much math. It seems difficult enough to develop algorithms by themselves, but integrating highly complex math seems completely out of my league.</p>
<p>frost_44,</p>
<p>I am in a computer engineering program and I can tell you that you will be able to do any software job out there or anything related to computer hardware. The key thing to make sure is that your school's CE program is an actual CE degree. This means taking all the math and physics of an EE, the core CS topics (data structures, operating systems, sofware engineering, OO programming etc), hardware topics (AC/DC circuits, control systems, etc), and of course a very healthy amount of embedded systems programming and design. You should even have some electives to spend doing advanced topics in either area. And if you're like me you'll take a couple networking classes too.</p>
<p>Computer engineering is a great degree you just need to make sure your school has a reputable program.</p>
<p>For all of these you are going to need quite a bit of math. You can search for schools that are somewhat lighter on the math requirements, or the rigor of the courses, but there will not be much range among the engineering programs due to ABET. Computer science programs will be more variable and you may find some that will give you a CS degree with less math.</p>
<p>Many computer scientists and software developers say they have very little use for the math they learned in college, except for the discrete math. Part of the problem is that all the professors are pretty good at it or they would not be where they are. It also makes it easy to assume a fairly high level of math sophistication in planning courses. There has been talk of reducing the standard math requirements, and I think there was some national CS committee that recommended this. Don't know if it is going anywhere.</p>
<p>Linear Algebra is pretty useful if you're going into graphics. Calc I, II, III prepare you for Mathematical Statistics which can be useful in databases of all things. Discrete Math is a must. Number Theory is very useful for security. Having a lot of math makes more opportunities possible with the CS degree.</p>
<p>
[quote]
For a computer software engineer position, how much math would you say is balanced with all the logic based programming?
[/quote]
</p>
<p>Depends. If you're a graphics devloper in the game industry, you're going to need a lot more math than if you're a standard-issue web developer, for example.</p>
<p>Keep in mind that what you think of when you think of math may not be the most valuable math for a CS person. There is a lot more emphasis on discrete math in CS than in most other engineering disciplines (prob/stats, number theory, algorithms, linear algebra, etc), and, in most subfields of CS, somewhat less emphasis on continuous math (calc, diffeq).</p>