Hacker News new | comments | show | ask | jobs | submit login

>Are there still places out there that offer a diverse undergraduate Computer Science program that goes beyond teaching Java and C++ and focuses on the application of these technologies to create things?

That's not computer science, that's software engineering. If that's what you're interested in, you could look at RIT. That said, I'm guessing you're in high school, which means you may well not really know what you want. Personally, I wouldn't recommend doing a software engineering degree. If you get a solid CS education, the software stuff is relatively easy to pick up.

If you can get in, I highly recommend Stanford. Your chances of doing research as an undergrad aren't great, but you'll learn a lot, meet smart people, and classes like CS210 will give you a little of the practical software experience you mentioned. Plus, it's an awesome undergrad experience, one that I'm sad I missed out on.

If you want to do research as an undergrad, I know from experience that this is possible at Georgetown. The department there is tiny, but has several good professors, and many of my friends there did research as undergrads. There are definition downsides to doing CS there (department has less resources, you're unlikely to meet any potential cofounders, etc.) but overall I think I got a good education there (enough to prepare me well for a MS at Stanford, anyway).

Disclaimer: I am a PhD student at Stanford. Why do you say the opportunities to do research as an undergrad at Stanford aren't great? The CS department has the CURIS program (http://curis.stanford.edu/) which pays for Stanford students to do research with faculty during the summer. A few dozen students do this program every summer. We had a few students work with us last summer and it was a great experience.

Ah, I hadn't heard of that. I was thinking more about RAships during the year, though, which I had the impression are of limited availability even to master's students (I've gone the CA route instead, so no firsthand experience). In any case, I didn't mean to be misleading - thanks for correcting me.

MIT has a school wide UROP program (http://web.mit.edu/urop/) that generally grants credits during the school year and wages in January and summer, with the attractive bonus that a professor doesn't have to pay the stiff overhead usually required on the latter.

I would expect that as ramchip notes informal arrangements can be done most anywhere, although getting paid in any way other than experience may not be.

One maybe not so minor note: according to one school that is ABET accredited, only 210 in the US have ABET accredited CS programs. E.g. my home town 4 year public college doesn't have one, I'd have to go to a larger regional one 70 miles away.

> That's not computer science, that's software engineering.

If he wants something very "applied", there's also computer engineering. I've been doing research since my first year as an undergrad (mainly through Canadian research grants, which offer paid summer internships). We do mainly C++, Java, VHDL, Verilog, assembly, but there's fairly little actual language education - they teach the semantics, we learn the syntax by reading and trying stuff.

On the more CS side of things, we did state machines, graph theory, recursion, formal proofs, and a good dose of math: solving differential equations analitically and numerically, calculus applied to force fields, Laplace, Fourier, complex analysis etc. Of course there's also electronic circuits, networking, computer architecture, (object-oriented) architecture... It's possible to study more web-related things such as databases, but I'm in embedded systems so we don't really touch this.

It's as applied as you can get: I have co-authored several papers and I'm only in my third year. But if you want to do research, you'll have to work for it a little. Go speak to teachers, do projects on your own, etc. AFAIK it's possible pretty much anywhere, but you won't necessarily get paid for it or get to choose your topic.

You are right, I did not make myself clear. I was trying to keep my description as general as possible as to not make it entirely self centered.

By "diverse" I mean going beyond software engineering and touching on graphics, AI, simulation, AR/VR, hardware architecture, and so on. My main worry is ending up in cookie cutter classes for four years. Then again, my idea of what college is truly like may be skewed due to the romantic idea of higher education that is sold to us in high school.

Thanks for the suggestions!

As elblanco said, any program worth its salt will have most of those as requirements or electives, even tiny ones like Georgetown. You should be able to check the school's CS department's website and see what their curriculum looks like (example: http://cs.stanford.edu/degrees/undergrad/ProgramSheets.shtml). My email is my profile - if you want me to take a look at any specific school I'd be happy to.

More generally, I think the anti-education sentiment you mentioned is unfounded. I'm colored by my experiences, of course, but I don't think I'd be half the engineer I am today without the education I've had, and I'm not a stupid guy.

If your school doesn't offer graphics, AI and hardware architecture as either required coursework, or electives in the Junior and Senior years, it's probably not a good program.

I have lots of friends who went to Stanford and did CS/CE/EE and absolutely loved it. I visited occasionally and was extremely impressed with their ability to merge Business (real world) with academia. Most schools don't do this well.

Also my favorite Quake server (kitty1.stanford.edu) was run from a Quake CS Lab :)

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact