<p>Hi, I’m a newly admitted student to Brown’s class of 2017, and decided to go to Brown. I’m very interested in taking intro-level computer science courses, but since I don’t have any prior experiences in com.sci or hadn’t taken any computer classes in my high school, I can’t decide which intro classes to take. </p>
<p>I figured out there are two options for me; one is CSCI 150, which is intro to object-oriented programming and computer science, and the only thing I know about this course is that Andy Van Dam, the legendary computer science professor at Brown, teaches this subject. Another option is CSCI 170; it says this is an integrated intro course to computer science, but I don’t know about anything else… </p>
<p>So could anyone who had taken either course or knows well about the intro-csci subjects at brown explain how these two intro courses are different? (atmosphere, size, workload, and professor) How are the materials covered in the courses different? Which is the better for freshman who has no prior experience in com.sci at all?</p>
<p>My son took CSCI 150 last fall and loved it. He had never before taken a formal programming class, but had had two years of real-world experience helping to build dynamic database-driven websites.</p>
<p>He feels the class well-prepared him, even for majoring in CS; he took two more CS classes in the spring and has not had any trouble earning high A’s in each of these classes, although the courses do require a fair amount of time and effort and perhaps a certain highly-structured mindset.</p>
<p>He told me he knows some fellow students who took CSCI 170/180 instead because it looked like it would the harder sequence and thus be better prep for a CS major. There seems to be a consensus among his fellow tech-heads that either sequence will prepare you just as well and that CSCI 150/160 is more fun.</p>
<p>I happened to stop by for old time’s sake and decided to give my opinion (disclaimer: I took CS19 and my interests are/were more theoretical than most).</p>
<p>Either sequence will prepare you sufficiently for the intermediate coursework if you decide to continue. CS15-16 provides an excellent background in graphics and algorithms, well beyond what 17-18 covers. In exchange, you’ll have less exposure to other types of programming and so be less prepared for courses like Programming Languages. 15-16 teaches Java better because you have more exposure to it, but it’s taught exclusively from an Object-Oriented paradigm, which may make the transition to 33 (which begins with C) more difficult.</p>
<p>I was heavily involved in the creation of CS33 last summer, and there were different concerns we had about students coming out of each sequence. We did our best to address each concern, such as ensuring that the handouts addressed strengths and deficiencies from each sequence. I would like to think that we succeeded.</p>
<p>I’d say the choice should be based on which you enjoy more based on shopping, unless you have a particular desire to focus on one of the areas I mentioned above. Both are excellent sequences, are suitable for students with no experience, and have excellent TA staffs to help students - I TAed a number of them myself and can attest that they have an excellent grasp of the material.</p>
<p>If it matters (it wouldn’t much for me), 15-16 is very independent minded; it’s a violation of the collaboration policy to work with other students (unless something’s changed greatly). 17-18 consists primarily of pair projects and there’s less reliance on the TAs.</p>
<p>Loremlpsum & Uroogla, Thank you for your detailed answers!! your explanations and anecdotes help me a lot choose which course sequence to take… I think, as you say, I should decide it after taking both in the shopping period. And also aleph0, thank you for the above link - I haven’t yet read it before, so I will read it. You are all fantastic helpers! Thanks:)</p>