Live data from Hacker News

Ask HN: So What Universities Are Good?

news.ycombinator.com

11–20 of 71 posts

Re: Ask HN: So What Universities Are Good?

#11
post #4

>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 w…

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!

Re: Ask HN: So What Universities Are Good?

#12
If cost is an issue, go to your local state uni (not private). The education will at least be credible and diverse, and you'll earn back your tuition in just a couple years out. Depending on where you live, some state schools are among the best in the country. It's terribly hard to justify going out-of-state or to a private school on a purely monetary basis unless it's someplace really very special or you get a free ride. It can take something like 12-20 years to earn the tuition back compared to a state school grad and the salaries usually end up meeting parity within 3-5 years anyway.

As others here have said, what you describe is Software Engineering not CS. But if you learn CS, Software Engineering comes pretty easily (which the inverse is not necessarily true). Most credible CS programs will give you some exposure to SE as part of the curriculum. If you find a program with very little math, it's the wrong school. If you find a school with classes like "Regular Expressions" avoid it. However, if you find a program with a lot of math, and courses with names like "Formal Evaluation of Algorithm Design" and "Regular Languages, Context Free Grammars and Compilers" it's probably fine. Expect to take lots of course you don't find immediate application for, like English Lit, Social Sciences or Communications. Take those classes and ace them. They'll be cakewalk compared to the weedout classes you'll have to take (most likely something like "Data Structures and Analysis or Algorithms" or "Concurrent Processes and Distributed Applications" or whatever your school has chosen). Expect to spend 40-60 hours a week on those classes and be one of the 10% remaining in the class at the end of the semester.

Most good programs will take you through the entire computation stack, from designing digital circuits to ASM and machine code, to C and/or C++ in terms of modeling computation, operation systems and concurrency, networking communication theory, algorithms, graph theory, Chomsky's hierarchy of languages, probably some alternative computing principles and languages. If you haven't spent time in at least a half-dozen different languages, from Prolog to Lisp to C++ to ASM, it's probably not a good program. Expect to write at least one toy Operating System, and design at least one function 8-bit clocked calculator (if you are lucky it'll be a stored memory computer or a co-processor of some type). You'll need to take about as much math as a math minor. If you can, take the extra 2 or 3 classes and just get the minor. It'll put you out a whole semester since you'll be doing heavier loads than most majors.

At least at my school, there was an informal hierarchy of undergrad majors that indicated relative hardness (and therefore respect): Math > Physics > EE/Engineering > Computer Engineering > Computer Science > Software Engineering > Information Systems > Biology > all soft sciences like poly sci and intl relations > Art > Criminal Justice.

This hierarchy generally represents what a person from one major can do in another. For example, a Math major can learn to be a Computer Scientist without too much fuss, but not necessarily the other way around. A French lit major wouldn't likely survive an EE curriculum intact. Everybody knows this hierarchy and it can sometimes be the bases for clique formation and preconceived judgement between members of different majors. It's weird, but it happens.

Computer Engineering is a good applied program if you want to stay out of computational theory for the most part and just build stuff. It'll probably have lots of circuit design work and you'll spend lots of time with embedded systems.

Research will more than likely happen as part of your MS program (or if you go into it, your PhD), not your undergrad. But you better be ready to hyper-specialize pretty quick if that's what you want to do.

Don't pick a school based on name brand recognition, pick a school with a solid program -- some well known schools also have solid C.S. programs, most do not. Do a B.S. program. If your school offers such a thing as a B.A. in C.S. run far away and don't look back.

It will be challenging, and even if you don't end up doing pure C.S. work, you'll be in good shape to do most of anything else, even non-technical work. The best courses I ever took in my C.S. program were the required history courses. My two semesters of Chinese history have probably made me a $80k in salary doing research work for technical assessment papers early in my career.

If you get a chance to do a study abroad program for a summer, do it. Even if you have no hope of ever making that money back. Those programs will also really stick with you. Consider teaching English after graduation for a year also in a foreign country. That stuff will make you ready for any crap the job market will throw at you.

Re: Ask HN: So What Universities Are Good?

#13
post #3

You might be interested in this thread: http://news.ycombinator.com/item?id=901782 . My response in that thread: http://news.ycombinator.com/item?id=901808 . A couple additional notes. If you're interested in creating things, a small CS program probably wont suit you. Those tend to be far more theoretical; what you want is a CS department with strong systems. You might also consider getting a degree in something else…

I highly recommend UIUC. I grew up there, worked there, and took a CS course there for fun. However, I wouldn't reject small schools outright. A strong liberal arts college will open your eyes to lots of opportunities and you'll definitely have a more personal relationship with the faculty. Even at schools like UIUC, you'll feel like a small fish in a big pond, and trying to make sense of it all may be overwhelming.

Re: Ask HN: So What Universities Are Good?

#14
post #4

>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 w…

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…

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.

Re: Ask HN: So What Universities Are Good?

#15
One point that is seems to come up over and over is that there really is no classroom substitute to actually building something and making it work. Any research you do in college is going to be very different from a software job you get in industry. (There are exceptions of course - industry research labs like microsoft research or maybe even Google can get pretty close)

However, college is still going to be a very valuable time in your life. It often is the catalyst to forming a social network that continues through your life, and also lets you see how the work you'll do fits into the larger picture of human knowledge.

Big picture aside, one of the best things you can do in college is get summer internships (hopefully every summer). That's going to give you some experience with building real system, provide a low commitment way to figure out what type of work you want to do after you graduate, and introduce you to people in the industry that can be invaluable in getting or finding jobs.

Research is also great, but make sure that you're working on something that is valuable to you. It is definitely possible to work on real problems and to get published as an undergraduate, but it's also very easy to end up working on someone else's project, and not getting much out of it.

I got a great education at Harvey Mudd (hmc.edu) and would encourage you to look at them. It's a small school - which also means no graduate program,so I was able to do research directly with professors. I had a job lined up at Google when I graduated, and can't imagine being prepared for where I am if I had skipped college.

Re: Ask HN: So What Universities Are Good?

#16
Don't believe these people. A university education (especially in CS) will introduce you to A LOT of people and opportunities in your field, will expand your technical horizon, and will force you to learn things you wouldn't have otherwise learnt on your own. In my opinion, all the anti-university hate is from people who are too lazy to make the most of their university education on their own and expect their money and degree to magically earn them money after graduation. School will open doors for you, it's up to you to pick which one to walk through.

Personally, I went to a top-10, big-10 school. If you wanted to go into research, you had that opportunity. If you wanted a silicon valley internship, you had that opportunity, if you wanted a startup position, you had that opportunity. The money is optional, if you can stick to federal grants/loans, you can consolidate them all into a single payment, and when you get your job out of college, start paying it off, as far as I can tell, it's the private, non fed loans that should be avoided like the plague.

I loved my school, I loved my college life, I loved my friends, and I wouldn't trade it for anything in the world.

Re: Ask HN: So What Universities Are Good?

#17
post #16

Don't believe these people. A university education (especially in CS) will introduce you to A LOT of people and opportunities in your field, will expand your technical horizon, and will force you to learn things you wouldn't have otherwise learnt on your own. In my opinion, all the anti-university hate is from people who are too lazy to make the most of their university education on their own and expect their money a…

I keep hearing this, but I see no reason to justify paying exorbitant amounts of money for it. Why couldn't you get the same opportunities just by living on/near a university campus and actively meeting people? Universities are not matchmaking services; if they were, they wouldn't hire professors, just staff TAs to teach undergraduate classes from material composed by corporate research labs (where all the actual Ph.Ds would work).

Re: Ask HN: So What Universities Are Good?

#18
post #17
post #16

Don't believe these people. A university education (especially in CS) will introduce you to A LOT of people and opportunities in your field, will expand your technical horizon, and will force you to learn things you wouldn't have otherwise learnt on your own. In my opinion, all the anti-university hate is from people who are too lazy to make the most of their university education on their own and expect their money a…

I keep hearing this, but I see no reason to justify paying exorbitant amounts of money for it. Why couldn't you get the same opportunities just by living on/near a university campus and actively meeting people ? Universities are not matchmaking services; if they were, they wouldn't hire professors, just staff TAs to teach undergraduate classes from material composed by corporate research labs (where all the actual Ph…

College students meet each other in ways that exclude non-students. For example, a significant portion of the top EECS undergraduates at Michigan spend a good amount of their social lives with a particular honor society. This society is, of course, entirely closed to non-students. Another group that doesn't leave campus all that much? Graduate students.

You can't just waltz into University buildings and be all "sup dawg???". People are at least pretending to do work, you won't be able to access the network, you won't have common classes to complain about together, etc. etc. We're somewhat suspicious of non-students, too.

Re: Ask HN: So What Universities Are Good?

#19
post #17
post #16

Don't believe these people. A university education (especially in CS) will introduce you to A LOT of people and opportunities in your field, will expand your technical horizon, and will force you to learn things you wouldn't have otherwise learnt on your own. In my opinion, all the anti-university hate is from people who are too lazy to make the most of their university education on their own and expect their money a…

I keep hearing this, but I see no reason to justify paying exorbitant amounts of money for it. Why couldn't you get the same opportunities just by living on/near a university campus and actively meeting people ? Universities are not matchmaking services; if they were, they wouldn't hire professors, just staff TAs to teach undergraduate classes from material composed by corporate research labs (where all the actual Ph…

They still function as a better matchmaking service than what you'd accomplish by pretending to be a student, I bet. Unless you were really good at pretending to be a student.

Re: Ask HN: So What Universities Are Good?

#20
post #18
post #17

Earlier quoted context omitted.

I keep hearing this, but I see no reason to justify paying exorbitant amounts of money for it. Why couldn't you get the same opportunities just by living on/near a university campus and actively meeting people ? Universities are not matchmaking services; if they were, they wouldn't hire professors, just staff TAs to teach undergraduate classes from material composed by corporate research labs (where all the actual Ph…

College students meet each other in ways that exclude non-students. For example, a significant portion of the top EECS undergraduates at Michigan spend a good amount of their social lives with a particular honor society. This society is, of course, entirely closed to non-students. Another group that doesn't leave campus all that much? Graduate students. You can't just waltz into University buildings and be all "sup d…

> People are at least pretending to do work, you won't be able to access the network, you won't have common classes to complain about together, etc. etc. We're somewhat suspicious of non-students, too.

Those are social-status problems [and thus, I could answer snarkily, amenable to social engineering.]

A University is a clique of people who pay a lot of money to attend a University. If the only technical advantage everyone gets from paying the money is access to the lectures, and in the long run the lectures aren't what matter, then why is anyone paying the money?

"University", in that sense, seems to be a Prisoner's Dilemma set up by lecturers to rob students. No one individual can stop paying, because it excludes them, even though the group as a whole would be better off if they all just rented a few apartment buildings together instead of paying massive amounts of tuition.

Post reply on HN