Cornell vs. Rice for CS?

It is true that there are not too many jobs primarily focused on compiler or interpreter design. However, this does not preclude the existence of minor projects of that nature that people primarily focused on other subareas may encounter. This is analogous to the fact that most people working in computing are not working in operating systems, or networking, or [some other subarea], but may encounter the need for understanding those subareas for the work that they are doing in their focus subarea.

1 Like

The reality is most people go to college because they want a piece of paper that says they’re qualified to join the workforce.

Sure. And there is nothing wrong with that. But if we’re making a comparison between two highly selective university departments, I would hope that both adhere to the fundamentals of computer science as they’ve developed in the past century (starting with the fascinating question addressed by Church and Turing: what is computable?). We should not be throwing away the best results as “impractical.” One thing I have discovered is how much gets reinvented and renamed over the years. I think that may be connected to the trend of chasing topicality.

Honestly, though I know what you’re saying, I am a little disgusted by the idea that you just want the right name on your resume. I have been fascinated by computers since I first fooled around with one at age 12, and by CS theory since I started to learn the rigorous side in college over 30 years ago. As I say, it just makes me sad to see it viewed purely as a commodity. In industry as well as academia, the best results come from those with a passion for their field.

2 Likes

People who treat the degree as a “paper” will come to regret is at some point.
In a fully-remote working society (which we are quickly going to) many simpler CS jobs (the ones that @coolguy40 talks about often) will migrate to lower cost locales … the process been happening quickly (but the tech boom was even quicker). However, it’s inevitable. At some point (5-10 yrs) it will happen.

However those at the top of the food chain, the most creative, with the most education, with the most innovative positions will benefit from it … (as always). So yeah, the point of these schools is to come out a “computer scientist”, not a “programmer”.

1 Like

To clarify a little, I agree that CS is a big field with a somewhat incoherent definition, so it is really impossible to learn everything. There is still a shared core of material. I would argue that if you are teaching something that does not include automata, algorithms, operating systems, databases, programming languages, and distributed systems, you are not teaching computer science.

It could be some other field with overlap. E.g., you could teach people how to apply machine learning to large data sets, and they would not have to know all of that. It might be entirely reasonable to have a certificate program as well. Companies might want to hire someone who can do that. But should they get a bachelors degree in computer science just knowing that?

Suppose you graduate from a university with a degree in chemistry. You’re going to learn at least some organic and inorganic chemistry. Later you might specialize more. If you’re hired and get an industry job involving chemistry, it will probably be very specialized. It’s unlikely that you will apply every principle you learned, even the most fundamental. What makes them fundamental is not that you use them all the time, but that they’re are the root of the development of a field of study.

I admit I come at this with a little bit of a CS inferiority complex. It is so often viewed as all about coding that I have a chip on my shoulder that it is really much more. It can be as cohesive a field as any traditional discipline, and it already has a history spanning at least a century, beginning before the first implementation of an electronic computer.

The reason to study basic theory is often beyond its immediate application. Without the foundations, one is limited in what s/he can further pursue (even in advanced algorithms, cryptography, etc.)

2 Likes

I was reading books 30 years ago about how all the American software jobs would go overseas. e.g., “The Decline and Fall of the American Programmer.” Some jobs went overseas, but the number of jobs for US programmers still grew by a lot.

Most students who go for CS degrees do it because they hear it leads to good careers. They don’t necessarily do it because they have a passion for CS. Yeah, sure it would be ideal if they have a passion for CS, but there’s the ideal, and then there’s reality. Most employers want to hire software developers with practical skills who can help generate revenues, not people who engage in CS research or advance CS theory.

the jobs are going, but the tech is growing even faster … still even in London good devs are 1/2 the price … in Minsk, Kyiv, Novosibirsk they 1/10 the price.

1 Like

I was reading books 30 years ago about how all the American software jobs would go overseas.

Some have. Honestly, I am often amazed that my skills are still in demand. In a way it’s a failure of the industry that software developers have not been automated out of a job. I’m also not convinced that this will hold out for decades to come.

I remember my company 20 years ago (not the same as now) having problems with offshoring due to time zone issues (which remain) and other kinds of communication, which is less of an issue now I think. It is becoming more feasible.

That’s off topic, but coming back to getting that CS degree as a job qualification, I am not sure it’s a guaranteed path to wealth (or even a job). We may be selling the next generation a lot of snake oil even if it seems to be make sense now.

1 Like

There are also plenty of things you do as a software developer that are neither about programming nor really computer science. E.g., the hardest part is often nailing down requirements. You need to be able to work with product management and with QA. I am not even sure where you’re supposed to learn these other than experience.

There’s no such thing “top” of the food chain. CS and tech is just a hodgepodge different specialties in different companies in different industries that do different things. A “computer scientist” is one type of specialty that goes with one type of person. A database administrator is a far different role, but a well-paid job nonetheless, most likely the pay would be much higher. That job would be much more business oriented and would probably be a better fit for an IT degree. It’s about what you can do.

In the early '90s I had bought into the idea that all the software jobs would eventually move overseas or become automated, but as time went on I stopped worrying about it. I came to realize there are so many software development jobs that demand being close to management, customers, and co-workers, and require enough creating thinking, that my concerns went away. (Plus, I’m retired, so I don’t worry about losing jobs, anymore.)

I’m not sure about staying “top of the food chain” but staying employable is all about continuing to learn new skills. Actually, this was something my department head explained to us new CS students way back in the early 80s in a little introductory speech. At the time, I dismissed it as just the sort of inspirational thing you’d expect him to say–lifelong learning, yadda yadda. But I have to say that in terms of employability, it was the best advice he could possibly give.

I am more worried for my DS’22 and what kind of education he should pursue to stay competitive in the coming world.

2 Likes

That’s a good point and it’s not something CS theory teaches you. It’s more software development, which so many are disparaging as “less than” CS. Yet it’s what most CS grads do in the real world.

This is a really good question. In terms of my son, I can only say I wish I knew, though it is not going to be computer science despite his early exposure. It just doesn’t seem to be what interests him. I have noticed that being successful at work does not correlate at all to mastering highly specialized skills. I mean, it depends on the job, but staying flexible looks like a better strategy than betting the farm on a particular field.

I wonder how many people studied aerospace or nuclear engineering for example and found there were not as many lucrative jobs as they were counting on.

It’s not like your education stops when you graduate college. I was a contract programmer for most of my career, meaning I only stayed at a job from maybe three months to three years max. When you do that, you constantly have to update your skills to stay employable. That was one of the downsides to the profession. I spent so much time reading technical books or taking classes that I had very little time to read for pleasure or simply to relax.

1 Like

BTW, I actually agree that there is not that much correlation between knowing academic CS and success in a computer-related job. But I do have a strong opinion about what “computer science” entails. One of my big peeves is when I see “computer scientist” on the resume of someone who has a PhD in physics. Bzzzt… sorry I have a PhD in computer science and peer-reviewed research. I also have a minor in physics with my bachelors degree and studied a little quantum for that. I would never put “physicist” on my resume and I would prefer that physicists return the favor.

I wouldn’t say “obviously” Cornell has a stronger reputation in CS/tech. Both of them are great schools. As you said, you can do great things from Rice. I work at a large tech company and our graduates come from EVERYWHERE

Neither is necessarily better for grad school. You can go to a great grad school from either.

If you prefer Rice, I think that’s where you should go!

2 Likes

Dont know when that survey was completed, but Rice’s undergrad population was smaller til the 5 year stepwise increase. also, Santa Clara made it because its IN SILICON VALLEY and there are relationships there to help.

Has anyone noticed that the OP, @GhostPhoenix10 has ghosted this thread?

1 Like