Computer Science- Math and Programming

<p>Okay, so I'm a sophomore at University of Houston and I have recently become interested in Computer Science, however i do have a couple concerns.</p>

<ol>
<li>Math- one of my favorite subjects in school until it started getting harder, lol. In 8th grade I took high school algebra and barely passed with like a 73. I did well in high school, taking all regular classes (but they were still a year ahead of what everyone else my age was taking) until I came to precalclus when i decided to take pre-AP and I had an unknown sleep and eye problem at the time and would always be late to class and had a hard time seeing the notes (plus our teacher moved through notes really fast). I passed the first semester with a C or D but the second semester I had around a 50 halfway through before I switched to the Regular class where I pulled my grade up and passed the class. I decided to take it again the following year as a regular class and got a 85 or something like that in the regular class. Got a 610 in math on my SAT, so I would like to think I'm fairly good at math, however I got below a B in both college algebra and finite math. I don't think I really applied myself to those classes though, and would often skip.</li>
</ol>

<p>Now I'm interested in Comp Sci and I know it requires a lot of math, 20 hours worth, but I don't have to take Cal III. Still, i've heard calculus is hard as hell and I don't know if I fully apply myself whether I'll do well or not, I can't really afford to do bad in any more classes.</p>

<ol>
<li>My second concern is programming. The last time I programmed was a high school computer science class my sophomore year of high school, aka 2005-2006. It's been a LONG time and I don't know if they expect you to know how to code or if they actually teach you. Also the intro to comp sci class at UH is C/C++ and I worked in Java back in high school. Should I take a class in C programming (not required) and get the feel of programming again or will intro to computer science I teach how to code?</li>
</ol>

<p>Another question is that the comp-sci program at our school requires either a minor, a business option (2 basic accounting and 2 upper-level MIS classes), software option (2 classes in software design), or systems option (2 physics classes, Cal III, and 1 upper-level math class). Or would a minor in MIS be a good compliment to a CS degree?</p>

<ol>
<li><p>A good CS student needs the ability to think mathematically, although calculus won’t necessarily be used heavily.</p></li>
<li><p>CS students should expect to do a lot of programming. Also, a good CS student should be able to pick up new programming languages quickly without needing a course specifically to learn the language.</p></li>
<li><p>Based on what you have said about the various options, the software option is likely best for general applicability to software jobs and careers, the business option can help if you are doing software for business or IT applications, and the systems option can help if you are doing software for scientific or engineering applications. If you have schedule space, you could take courses for more than one of these options as they interest you.</p></li>
</ol>

<p>In reality, if you got below a B in college algebra and finite math, you are probably never going to make it through Calc I and II.</p>

<p>Did you get below a B because you didn’t understand the material, or because you didn’t do the work necessary to achieve a high grade? If you just didn’t do the work (aka, you were lazy), then there is probably hope for you as long as you dedicate yourself to doing the work.</p>

<p>If you struggled with the concepts of algebra, it will be very difficult for you to succeed in higher levels of college math. Algebra is the last thing upper division college level math students worry about, it just becomes second nature. You need to know algebra inside and out so you can see the connections and understand the mathematical concepts. It would be a tremendous challenge if you are bad at algebra.</p>

<ol>
<li><p>Math is important regardless. College algebra shouldn’t be a problem to most students if they put effort into the subject.
I think you need to think about what you can do to improve your study habit, or learning skills. Maybe do more practice problems, and use your professor’s office hour? </p></li>
<li><p>Having a low grade in math at this point wouldn’t prevent you from taking an engineering / science major. Trust me I am a very good engineering student but I didn’t start investing my time into math until my sophomore years. What you need is commitment.</p></li>
<li><p>Java, C, C++ are very similar, although Java has some fundamental differences from the C-style languages. Again, if you put times into a subject, you should not have any problem passing the class with a good grade. I actually think learning C++ as the first computer programming language at the introductory level is better than Python or Java, for the CpE and CS majors.</p></li>
<li><p>I would not worry about the minor track right now. It is weird that calculus 3 is not required at your school. I know Differential equation is not a requirement now, while linear algebra is still a must for CS major. Is calculus 3 the multivariate, vector, and series? I’d take more math courses. That’s me.
Do you mind to give a link to your school’s CS department? We’d look at the curriculum closely.</p></li>
</ol>

<p>Note you are already a sophomore and you want to begin your CS major curriculum. You may or may not be able to graduate in four years. It is still manageable.</p>

<p>Jwxie,</p>

<p>I am afraid that 'ol “multivariable calculus” will soon goto the wayside with CS programs. Seems like more and more CS programs just require Calculus I, Calculus II, Linear Algebra, Discrete Structures and Statistics. I don’t know if I agree with that. I do know this, there are probably a bunch older software engineers a little mad about this, lol.</p>

<p>The Computer Science Department itself is at [UH</a> Department of Computer Science](<a href=“http://www.cs.uh.edu%5DUH”>http://www.cs.uh.edu)</p>

<p>The actual example degree plan and required courses are at [UH</a> Undergraduate Catalog: Computer Science Major](<a href=“http://www.uh.edu/academics/catalog/colleges/nsm/majors/computer-science/index.php]UH”>UH Undergraduate Catalog: Computer Science Major)</p>

<p>Math consists of Cal I & 2, Linear Algebra, Discrete Math, Probability, and Statistics for the Sciences</p>

<p>I also created a rough degree plan that would require some minor (simply for filler space in my first couple semesters in the program, since you can’t really do anything until you have the first to Comp Sci classes and Cal I and Cal II out of the way), but not specified. I have that it would take me 3 1/2 years to complete the degree</p>

<p>About the low math grades, I didn’t really apply myself to the math at all, some days I didn’t do the assigned homework, other days I missed the daily quizzes or class all together. Also, I wasn’t wearing my glasses 24/7 yet and some days I would forget to wear them to class and couldn’t see any of the formulas, so that didn’t help very much. College Algebra wasn’t too bad in all honesty, i just took all my freebies for granted (we got 3-4 of our lowest quizzes and homeworks dropped at the end of the year). I used up my freebies by not doing them instead of effectively using them.</p>

<p>

</p>

<p>I was wondering why you think this way? I’ve found discrete math/algbebra a lot more relevant to my computer science classes than calculus/analysis.</p>

<p>

</p>

<p>Well, it kinda eliminates a grad from the computational science/computational engineering areas that are getting bigger as far as research and employment. Yes, non-computational jobs outnumber computational ones but I would like to have a chance at as many CS areas as possible.</p>