|
I just graduated (in computer engineering, but more interested in computer science) from an average (typically ranked ~60) department for computer science, but I am glad I went through the university. I agree with much of what several others have said, so rather than rewrite what has already said in the those posts, I'd just like to add a couple things. First, undergrad research. I was able to participate in undergraduate research at my university. They offer an engineering (including CS) undergraduate research initiative for students to work with faculty mentors, and some professors receive NSF REU grants which allow them to fund undergrads for a semester or more to do research with them. These opportunities don't jump out at you, however, and you need to take the initiative to talk to professors and discover the opportunities. Don't think you are too "inexperienced" either - you can start looking in your first or second semester. If you decide to apply for graduate school in a few years, you'll find that having undergraduate research is a huge plus for your application. Also, yes, my school offered C++ and Java as the required programming languages. However it's not going to matter what they offer - you really learn programming once (not a trivial task), and from there, you can pick up whichever languages you need (a comparatively trivial task). Most importantly, you should learn outside the classroom -- make your own projects/applications/websites or contribute to existing projects. I did. This helps in a lot of aspects -- it trains your motivation, improves your skills in programming, can be used as resume fodder, and so on. Do live on campus, at least for the first year, if not more. |