<p>I am a Junior in highschool planning to major in Computer Science at a top-tier university (Carnegie-Mellon/Berkeley/Stanford/etc.). When I go to the websites of these schools and look at some of the problem sets for this field I worry that I won't be prepared.</p>
<p>I take AP Computer Science AB and AP Calculus AB, but what should I do beyond this to make my experience in college less stressful? Is there anything beyond programming practice? I program in Java and C, but I don't believe this will be enough.</p>
<p>You should be fine. You actually don't need any programming skills prior to college as long as the curriculum offered by the school isn't mediocre.</p>
<p>You'll be fine, but you might want to start exploring topics outside of programming. Computation Theory, Discrete Math, Graph Theory, these are all topics of interest to CS majors. If you know Java and have a solid grasp of object oriented programming then perhaps you can get a book on data structures.</p>
<p>Visit Amazon and peruse the lists people have made about CS books, like the one linked below. Any outside reading will help prepare you for the intense programming you'll undergo. I'd also recommend a book on Boolean Logic, but I haven't found a good one that is easily obtained. Any suggestions?</p>
<p>I suggest checking what programming language you learn in your introductory course and try and be familiar with it before you start. From the professors I've talked to at my school, I've learned that the intro course tends to be the most difficult to pass. I, being a student in an intro CSC course with no prior programming experience, can say that they were not joking and this information is tough to understand especially since its different from anything you've learned before. As in any class if you put in the time to learn the information you will be fine and since you're taking AP comp sci and have prior programming experience I doubt you will run into too many problems.</p>
<p>^ Good advice about finding out about the programming languages in use. I have to say, though, that my second CS majors programming class was far, far more difficult than the first one. We had to write the same program in both a higher level language (Pascal) and assembler (many years ago...). Do current students still do assembler at some point? Learning a little assembler might be a good thing, if it will eventually be expected of you.</p>
<p>There is a lot of open source software these days, so getting your hands on sample programs ought to be easy enough, if you want to study examples.</p>
<p>Well, I can think of more than one reason why the 'hell-bent' might have to drop out. If the CS program is in an engineering school, then the successful student must be good not only at math and CS but also at the basic physical sciences (chem, physics). Not everyone can succeed at all three.</p>
<p>lol learnin how to organize your time is the best way to prepare for any engineering major, no matter how good at "programming" you are. Also just look at some of the things being used in industry. C++, the .Net framework and JAVA all come to mind ;).</p>