<p>I'm a math major, but I'm thinking of adding on a Computer Science major. </p>
<p>The main reason for this is because I know I should be very familiar with computers if I want to go into any remotely mathematical field, but I also feel like I should have another major or else I'll be taking a few semesters worth of electives.</p>
<p>My question is, is it possible to start CS in college and be successful? I know a lot of computer science majors started programming and studying that stuff back in high school. My background consists of getting a beginner's Java book this summer and trying to teach myself the basics. I thought it was ok - I understood the concepts (being a math major I don't like not knowing why all of the code works how it does, but I'm learning to just accept it), but it doesn't feel like it comes naturally to me. Also, with my math major I was familiar with most of the names of the upper level courses, even if I hadn't studied them before. With CS I don't even know what some of the upper level courses' names mean. </p>
<p>Will I fall apart once I get past the basic courses, or is CS something you can pick up comfortably in four years of college?</p>
<p>Math is fundamental to Computer Science programming so you should have and easier time than most. Why not take a course or two in computer science and see how you do. You would be surprised at software companies that cannot find computer science major and train math majors as their computers. Good luck and talk to the computer science department when you get back to school.</p>
<p>Hmm...computer science is tricky business. I mean you can definitely add it because it will not hurt. But you are right, just like anything else, you need to enjoy programming to succeed. Java is good way to go because it uses a popular syntax, which means you can transition easily into other programming languages. It also teaches you good OOP (object oriented programming) - which all modern languages employ. Good luck. You will probably like it ... but ask yourself if you want to be in front of a console 8-10 hours/day =).</p>
<p>You will find that your upper division CS courses will rely heavily on Math concepts and therefore a double major might be a good idea. In addition, you would be much more marketable for employment when you graduate.</p>
<p>Thanks for the responses, everyone. I'm especially glad to hear the upper CS courses are really mathematical. </p>
<p>I figured out how many CS courses I would need to take per semester to get a degree in four years, so I think I'll stick to that plan unless I get really discouraged. Thanks again!</p>
<p>What math classes usually go well with computer science (besides the required discrete math sequence)? I've heard stats, combinatorics, and graph theory go well, but what else is there?</p>
<p>All the different sorts of numerical math, linear algebra (graphics), real analysis (sound), logic and symbolic math to some extend, and of course the general process of problem-solving. One of the CS professors at my college has a research interest in algebraic topology - pretty much anything in math can be approached from a numerical perspective.</p>