How difficult are CS 2110 and CS 2800 for students with little CS background?

<p>I have taken CS 1111 (Intro to JAVA) in Spring 09 and I did pretty well in the class, especially considering it was my first CS course. I want to further explore the CS field and decided to sign up for CS 2110 and CS 2800. I know that CS 2110 is a continuation of Intro to JAVA, so does the level of difficulty jump tremendously? I understood a lot of the concepts of CS 1111 without too much problem. The application of the concepts in projects were a bit difficult at times but there was always some help available.
I realize that CS 2800 is more of a math/logic course than pure CS. The median grade is a B. So how difficult is that class? If I were to attend the lectures and study the matieral, would that guarantee a pretty good grade (at least B+) or does it require a lot of logical intuition? Thanks.</p>

<p>I took both this semester, if you took intro to java you should probably be fine for both, as long as you take 2110 during the fall with someone who isn’t bailey(since he’s way harder).</p>

<p>Actually in 2110 since I already knew on a surface level most of the concepts I didn’t pay nearly enough attention to the specific details during lecture which hurt me on the tests even though I aced the assignments/projects, which weren’t all that difficult, I could have done all 5 of them without taking the class. Wound up getting a B due to my poor test grades :(</p>

<p>For 2800 during the course I found that the material seemed somewhat difficult and I didn’t think I had a ton of logical intuition, however neither of the exams were that bad(though the professor did say he made his homework harder than exams since for homework you had unlimited time and references) and I got an A- without doing anything out of the ordinary studying wise, and even though on the final I couldn’t finish the induction(I was really close though) and made some dumb mistakes on the probability problem. Also the class is curved to a B+, at least it was this semester since my exam scores weren’t that far above the median and my hw average was a little under it, and I remember looking up that it as the past few semesters.</p>

<p>2800 covers logic, sets, functions, algorithm complexity, induction, number theory, combinatorics, and probability. I’d say if you have experience in half of these, you’ll find the class, really really easy. If you have a notion of what they are, you’d probably be ahead of much of the class. Also, if you’re good at finding proofs and having an intuition for mathematical concepts, 2800 will be your easiest course next semester. </p>

<p>On the other hand, if none of these apply, you’re not out of luck. Yes, studying the material may help, but it’s more important to just do practice problems, and try to develop an intuition for how and when to apply different techniques.</p>

<p>I took transfer credit for 2110, so I can’t comment much on it. However, the professor next semester is Bailey, so I can say you’re in for a fun time :)</p>

<p>Really i heard Bailey is an awesome teacher. Is he that bad?</p>

<p>He’s not a bad teacher(I actually have no idea whether or not he’s good at teaching), he however makes very difficult exams, and is also extremely eccentric/a little crazy(which is where the awesome comes from). From what I’ve heard taking a class with him is a unique experience that is probably pretty enjoyable, but the class is more difficult than it is in the fall, which you were concerned about in your first post. Though the class usually has the same median grade so I guess it doesn’t necessarily matter if its harder since it just gets curved more.</p>

<p>In the fall 2110, is likely to be more about programming. With Bailey, it’s more likely to be focused a little bit more on the mathematical side, like analysis of data structures and stuff. He’s a pretty good teacher, and definitely eccentric. But he generally expects more from students, and leaves his assignments quite a bit more open ended.</p>

<p>I wasn’t actually the first poster, I’m just seriously considering taking 2110, and from what it sounds like its infinitely better with Bailey.</p>

<p>What does “expects more” mean? Longer problem sets?</p>

<p>[CS211</a>, Cornell University](<a href=“http://www.cs.cornell.edu/courses/cs2110/2009sp/]CS211”>CS211, Cornell University)</p>

<p>Here’s the course website from last time Bailey taught it. While other profs may give you skeleton code, and you implement the rest, Bailey has you do it from scratch. While other professors may give you a pdf with detailed requirements, Bailey gives you a short paragraph and you do it.</p>

<p>Just as a measure, one of the programming assignments from Bailey has you implement a B-tree, a notoriously difficult data structure to properly implement, and is done in the operating systems practicum, CS 4411. Note that he only has you handle insertion, which is much much easier than deletion, but still non-trivial.</p>

<p>Seems like the proper way to teach CS to be honest. There’s no way to actually master the craft of programming without practicing. And the biggest hurdle to overcome is to figure out where to start. The rest is nothing more than abstractions of pure mathematics.</p>

<p>

</p>

<p>To be fair, a B-tree is relatively easy to implement by itself, as a simple boolean recursion method is already a functional B-tree (complete with backtracking capabilities to keep track of the nodes). However, a simple boolean recursion doesn’t balance itself. It’s much better to see the practical differences between these two types of structures rather than to just talk about it and hope that the students will finally understand. The concept behind a binary tree is trivial at its worst, the actual implementation of a proper one is not. That’s the difference between math and CS.</p>

<p>Yep, basically what I was thinking.</p>

<p>Seems like it’ll be fun then. Hopefully my courseload won’t kill me though…</p>

<p>hoonose, as it seems like you took this class with Bailey, any word on how long problem sets took you? They all look like thier two questions but i can’t really gauge how much time they take from the questions.</p>

<p>Actually, I didn’t take it with Bailey, I took it at another college during the summer and transferred it. I had a few friends who took it with Bailey, and I know him since I had another class with him.</p>