<p>From my perspective as a CS major at a top CS school soon to attend a top CS program for PhD: go to Yale. The ranking of CS departments can have a significant bearing on the undergrad quality of CS, but there are additional factors you need to take into consideration here. For undergrad what matters most is your actual experience. So look at: diversity of classes (Berkeley has the edge), top faculty (Berkeley), research opportunities (Berkeley), internships (Berkeley), etc. </p>
<p>But what is the point in any of that if you’re competing so heavily with thousands of other students? Yale is smaller and while it might not have the resources in CS that Berkeley, it doesn’t spread itself so thin. Consider another important fact here: Berkeley is going through significant trouble with funding with no end in sight, whereas Yale has no problem with it and continues to expand heavily (capital improvement, faculty hiring, internships, Science Hill, etc.). Classes at Berkeley have been cut, majors have been cut, etc. Not to mention it can be very difficult to get into classes you want, even the classes you need to graduate; the professors are more concerned with doing research with graduate students than they are with undergrads; and so on. Now consider perhaps the most important point here, that at Berkeley, you can intend on doing CS, do the CS prereqs, and then get denied entry to the major. This will not happen at Yale. And even if you do get into the major, let’s say you want to go to grad school; good luck getting in when your GPA is horrible and you barely have any research experience or strong recommendations because it was difficult to get involved with professors long-term. (By comparison, grad schools won’t care that you didn’t study under Turing Award winners; that you did research is what matters, even if it’s Yale CS.) Berkeley’s also experiencing an exodus of faculty, and has been for years; this is only going to get worse with its funding problems.</p>
<p>Let’s say you get into the CS major but decide you want to switch to EE or psychology or another; good luck trying to change it, since impacted majors are a real problem, whereas at Yale you can change it as much as you want, no problem. Believe me, your overall undergrad experience is far more important than a departmental ranking, and it’s especially true here: Berkeley has a great departmental ranking, but its undergrad experience in CS is poor compared to that of Yale CS. And let’s not forget that Yale CS may not be one of the best, but it’s decent.</p>
<p>This isn’t even taking into consideration other very important aspects of undergraduate life–advising, study abroad, funding in student activities, etc. Yale wins there hands down. These will be more important than they seem now.</p>
<p>To me it seems those who are championing Berkeley are more likely to be prestige-whores here over CS rankings, because in light of all the above, Berkeley is really not the better option.</p>
<p>Anecdotal evidence: I know of quite a few renowned CS people who did their undergrad in CS at Yale. Consider that Yale CS has also improved significantly since then. Yale CS will not doom you–far from it. It’s just a much surer bet to go to Yale and do well in CS there than to go to Berkeley and do poorly.</p>
<p>Just take a few looks at the Berkeley board; everyone there just complains and hates on their own school. It’s very telling.</p>
<p>(If this were a grad school discussion, I would tell you Berkeley, hands down, no contest.)</p>