<p>“Am I really behind due to the little programming experience and no pre-calc? Should I be worried about starting in Pre-Calc my Freshmen year? How important is learning some programming BEFORE taking the class? What’s the best language to start with to help prepare me? And finally, am I overthinking this and just causing worry for nothing? I take this subject very seriously because I see myself enjoying it once I understand the material and the last thing I want happening is to fall behind on these courses. Thank you for any advice in advance.”</p>
<p>I’m perplexed about the idea of having to take physics and/or calculus as a CS major, but I believe it has become a standard for engineering departments to make students take these courses for the sake of their department. Don’t argue with me about that, though. </p>
<p>When I was taking Algebra II in high school, my teacher taught us much of the skills needed to succeed in Precalculus. I never took Precalculus, but I knew the material. Either way, you have to assess your math skills yourself. Do you know about transcendental functions? Do you understand the concept of composition of functions? Can you manipulate a function and get to its graph other than using a calculator and plotting points? Do you know about horizontal and vertical asymptotes? Do you understand the concept of exponential growth and decay? Can you find the zeros of a polynomial by long division or synthetic division? </p>
<p>If you have no clue what I’m talking about, I recommend searching for some practice problems on these topics. If you want, I might have an old Precalc textbook PDF somewhere on my computer that I could send you. Calculus doesn’t necessarily require you to know / remember everything, depending on your instructor (be sure to read reviews online), but not knowing these topics is not helpful for you either for Calculus. </p>
<p>When it comes to the usefulness of Calculus for a CS major, it depends on what you want to be or do in the future. Do you want to be a software engineer? Then not knowing Calculus will make your life a little harder. Other than that, keep in mind that most CS majors have taken many math courses.</p>
<p>I don’t think it’s important to learn to be a master programmer before taking the course that is supposed to teach you how to program. Many of the programming classes are very brief introductions. You won’t learn how to make the second Call of Duty in a C++ course, that’s for sure. You can always watch tutorials and download Eclipse/NetBeans and do some problems. I might be able to send you some of my own programming problems, if you want, although I have never taken or learned any C++ other than Java, PHP, JavaScript and some Perl. I think this is the right time to know what is the most popular programming language on the market. Usually, Java and C++ are competing for the 1st and 2nd place, and PHP and JavaScript for the 4th and 3rd, althoug these two are complements for a successful website. PHP syntax is very similar to Java, and Java is very similar to C# (C-sharp). Learning any of these puts you at an advantage and makes it easier to learn 2 more.</p>
<p>You’re not overthinking it at all, in my opinion. These are great questions to ask a CS major. I know a few people who have taken classes in programming and have never done anything with it, but still aced the course. I think this has to do with passion, and if you get all As in a course, it doesn’t necessarily mean you will become an awesome programmer. Real life and employment for software engineers, for instance, is totally different than taking a course, flipping a book, opening up Eclipse, and become a robot for a few minutes and finish that one lab. This is where all of your knowledge and creativity comes into play. I have to say, besides all the math I’ve taken so far (up to calc 2), and the physics to come, you should definitely take courses that you like as well, (when you take your GEDs). Get to know other subjects, be curious and have a passion for what you want to do, once you’ll figure that out. Keep in mind that it’s totally normal that students switch their majors after taking that one class with that one instructor that inspired them. </p>
<p>This should be your to-do list:</p>
<ol>
<li>Brush up on your math, open a textbook, do sample problems, practice!</li>
<li>Get to know the many concentrations for a CS major. Programming is not the only thing we do. </li>
<li>After brushing up on some math, get to know what calculus is about anyway. </li>
<li>Explore what interests you the most in CS.</li>
</ol>
<p>Lastly, it is true that many CS students have some programming skills. Before becoming a CS major or even applying to colleges, I’ve done a lot of web development. Gradually I’ve started doing some Java and now I’m thinking of a summer project for a desktop application, (possibly a natural language processor. Yes, very complex, but even if I fail, I have become smarter.)</p>