I am interested in studying CS at college this fall. I have been accepted to WPI, but I am unsure about their computer science program. From what I see, they are well known for engineering and every current student I have met is doing engineering, so I have not been able to ask any questions. Compared to other schools, how good is WPI for CS for academic and career reasons? Any insight is greatly appreciated!!
As a WPI alumnus, it is quite painful for me to say this, but the WPI CS program is not very strong. Depends on what you are comparing it against though. If you are looking at schools in the northeast, Northeastern, BU and UMass are stronger to much-stronger CS schools.
The strengths of the department:
- The introductory course sequence are well designed and thought through and can guide a novice programmer well to an intermediate level.
- The university as a whole is focused on teaching, and professors are granted tenure based on their teaching and research skills (though this can also be a con, since it sort of leads to the “inmates leading the asylum” scenario)
The weaknesses of the department:
- Much less research than BU, NEU, UMASS (let alone research powerhouses like UMICH, UIUC, Cornell, Georgia Tech, and CMU). You need research experience to get into a top graduate school in CS. The very best students at WPI tend to get into Brown, UMASS or NCSU or similar places for grad school. Whereas I do believe that these same students might have gotten into MIT, Stanford, Cornell or the likes if they went to a more research focused institution.
- Rigor of the courses. Many of the CS courses courses seem watered down. This is a disadvantage, as you learn less over our 4 years and are less prepared for jobs in the industry or graduate school. Google the syllabus for the algorithms, theory of computation, or operating systems courses at various institutions to get an idea of roughly how difficult the CS courses are.
- Quality of grad students and TAs. TAs typically design and grade assignments for funding as graduate students. The perceived quality of the department obviously influences the quality of graduate students that the university can recruit. WPI’s CS program is ranked ~90 at the graduate level, while BU, NEU, and UMASS are ranked between 20-40.
As an example, below is the syllabus of the required algorithms course that every student much take at WPI and UMASS:
WPI: http://web.cs.wpi.edu/~heineman/html/teaching_/cs2223/b15/B15_CS2223_Syllabus.pdf
Northeastern: https://shelat.ccis.neu.edu/16f-4800/
Northeastern (different syllabus): http://www.ccs.neu.edu/home/rraj/Courses/4800/F14/www/Schedule.html
UMASS Amherst: https://people.cs.umass.edu/~barring/cs311/syllabus.html
Of course, WPI offers a more advanced, second 4000-level algorithms course, but I’m uncertain that even that course covers the “PART III” of the UMASS course. And of course, UMASS and Northeatern offer more advanced algorithms courses as well.
For completeness, below is the algorithms syllabus at BU :sigh:
http://www.cs.bu.edu/~gacs/courses/cs330/
And UMASS, NEU and BU are not the very best or most challenging undergraduate CS programs in the nation either. Though the graduate courses at UMASS should be quite challenging, even for “top” undergrads as it is ranked #25 nationally. If you get into and can afford a better CS school (say, one ranked in the top 10 in US news), I’d suggest going there if you think you can handle it.
For a counter opinion, coming from a Northeastern student who looked at WPI as well, I think another positive is the practical lean of the CS at WPI. Additionally, if you aren’t looking to go the research route, I think it would really be about as good as BU in my opinion, whose program isn’t taught nearly as well. They may cover more, but I’d bet WPI and BU CS students end up retaining the same amount of info.
Note: NEU and UMass Amherst I think are fairly better - Northeastern built the original introductory program that WPI uses, and UMass is an incredibly research powerhouse and name in CS. Still, I think @frontpage is underselling a bit.
To the OP. I went through your few recent posts and it seems your other choices are University of Maryland and Northeastern. If you were admitted to the CS program at Maryland, I would suggest that first, probably by a fair bit. It has a “CS culture”, and a very highly regarded program. And then Northeastern. And then WPI. All three schools can give you a good enough education.
I did not mean that WPI CS is “bad” by any means. It’s still probably far better than the CS program at many liberal arts colleges or regional research universities like UMass Lowell. I also did like the tech school atmosphere.
The “practical emphasis” is a good point. If you consider yourself a “learn by doing” person rather than a “theoretical learner”, then WPI might be a fairly good choice. Though in CS personally, there are many opportunities to gain practical experience if you want to, either through internships, co-ops or side projects. If you go to a good CS school, the compilers, database, or operating systems courses should have a fairly intensive implementation component that will help you pick up valuable practical experience.
I personally dropped the CS major because of my frustration with the way core courses were taught (particularly the aforementioned introductory algorithms course, and to a lesser extent, the OS course), but there were a fair number of fairly bright students at WPI CS. And many of them are doing well after graduation, at local companies like EMC and Vistaprint, large companies like Microsoft, Amazon and a much fewer number at smaller upstarts in Silicon Valley.
One other thing to look at in a CS school, depending on your interest, is to what extent your school participates in ACM ICPC and similar contests. If competitive programming interests you, it’s a great way to stay engaged with the course material and to develop a deeper and more applied understanding of algorithms and algorithmic thinking than I think you would from any undergraduate university course.
@frontpage I found the most recent update on WPI Computer Science graduate school placement. You can find it at https://www.wpi.edu/student-experience/career-development/outcomes.
In 2016, 7 students went to three graduate schools: Carnegie Mellon, University College London and WPI.
In 2015, 9 students went to graduate school at MIT, Tufts, University of Virginia and WPI.
In 2014, 10 students went to graduate school at N Carolina State, U of CA - Santa Cruz, University of North Carolina, University of Southern California, and WPI.
In 2013, 7 students went to Brown University, Toyota Technological Institute at Chicago, Tulsa University and WPI.
There is a good deal of double major activity with actuarial mathematics, mathematics, EE, Computer engineering, interactive game development, management information systems, and robotics engineering.
With an average salary of $85,456 for CS graduates in 2016, 82 graduates took jobs at a like number of different companies including AMD, Amazon, Apple, Cisco, Google, IBM, iRobot, Microsoft, MIT Lincoln Lab, and MITRE. Much to my surprise, EMC was not on the list this year. I was also surprised to see 8 PhD graduates in 2016 as we have never been a large graduate school. The "knowledge rate"on this 2016 sample is 93.1.
Please note that the “rankings” I am aware of are based on the votes of CS faculty universities around the country. These people have earned PhD’s and have a strong tendency to vote for the universities where they obtained their PhD and for the universities which are producing the most research. The US NEWS rankings are, in fact, for graduate schools. Would you really turn down Harvey Mudd for a CS major and select any of a large number of large universities?
I never mentioned it is impossible for students to get into graduate schools from WPI. It obviously depends much more than the characteristics of the individual student than the school they chose to attend. And the survey does very little to differentiate between whether these students attended masters or PhD programs. If the admits at Carnegie Mellon and MIT were indeed PhD admits (I am not sure but I don’t think that is the case) then it is truly impressive. Otherwise, the outcomes do not seem that extraordinary for me.
But I do think that WPI provides fewer research opportunities and guides less students in the research direction than more research oriented schools.
For someone who wants a research career, unless it’s purely theoretical, it seems likely that Cornell, University of Washington, Berkeley, or especially MIT are better than Harvey Mudd. Harvey Mudd seems to be a more rigorous program that WPI at least for CS.
Harvey Mudd seems to be the engineering equivalent to an elite liberal arts colleges. WPI also focuses on teaching and might be a good choice for people who learn a lot from good teaching and might not do as well in larger, more impersonal environments.
Oh, and EMC was acquired by Dell.
@frontpage @retiredfarmer how do you feel about the differences between Lehigh, WPI, Brandeis, Santa Clara, UC Irvine, UC Santa Cruz. S accepted to these, still pending Carnegie Mellon (likely reject) and Lafayette. Other acceptances but less relevant. He is CS, but with companion study in mathematics (preferrable theoretical math). Primary interest is in Machine Learning/AI. That said, it was important to S to have opportunities outside of core major and in particular in music. Santa Clara is well respected on the West Coast, especially in Silicon Valley, but not clear outside of that area. Each school on list was chosen for specific reasons. S current thinking is that he will matriculate to grad school after undergrad is complete…but that could change with CS undergrad salaries so high.
Carnegie Mellon is by and far the very best in his list, by a lot. If he can get in. Both for CS and theoretical (or applied) math. It’s a very hard core and theoretical program though.
Then I’d say UC Irvine and Brandeis University are his two next best choices. UC Irvine has a fairly well known and strong program in machine learning. It’s not the very best, but it’s among the stronger tier-2 programs like UMASS. I believe it’s a better CS program than Santa Cruz. Brandeis is not well known for research computer science or machine learning, but it’s math program is very strong (likely more rigorous than Irvine) and it’s overall academic reputation is strong.
WPI and Lehigh are engineering focused programs and are less strong strong in theoretical math/CS. I’m not as sure about Santa Clara, but I think it is also a more applied emphasis. WPI has hired a few people in machine learning including a new professor who does deep learning (which is the hot thing right now), but my impression is that the ML work at WPI emphasizes applications related to computerized tutors than fundamentally advancing machine learning as a science.
Brandeis has a strong music program. WPI also has opportunities for the musically inclined. I’m not as sure about the others.
@frontpage Thanks for the helpful insight. Any others having insight/opinions?
For someone going into academics/research/graduate school, I would strongly second @frontpage’s post. However, if he does go the industry route, the differences between these schools (with the exception of CMU of course) are very minute when it comes to CS. In fact, the practical programs become better options, if anything. Since there are no certain things when it comes to high school students and specific college major concentrations and postgrad plans, even for the motivated CS students, I would put significant weight into fit and cost factors as well as the notes in the post above. Being happy at a school can make the motivational difference to find opportunities at a “lesser” option if it comes down to it. If he could be equally happy at any of them, then default back.
Plenty of good options - I don’t think there’s really a bad choice (unless unaffordable), which is important to remember.
Yes @PengsPhils is correct about that – if you’re not doing research, then the research emphasis of the university matters less. All of these schools have a subset of strong and motivated students, and at CMU, most students will be strong and motivated.
Yet there are still some issues I see with WPI and Brandeis for the industry bound. The breadth of courses offered is somewhat limited. For example, I’m not sure if a compilers course has been recently offered at Brandeis or WPI. I think it’s a fundamental topic in applied computer science. Some of the top schools like Caltech with smaller CS departments also suffer from this issue. Similarly, neither school is really ideal for an emphasis in machine learning. WPI is better in this regard in terms of providing a graduate course CS539 in machine learning. Brandeis does have a stronger math department, so it might be better for learning the foundations of machine learning (which are from math and statistical physics).
Other than CMU, none of the schools really stand out. Brandeis and Lehigh will have slightly stronger students that WPI, Irvine, Santa Clara and Santa Cruz.
Irvine has a strong CS department and it’s the only place where I can’t think of any serious reservations about the CS department. Brandeis does seem like a more serious academic school to me, for whatever reason. But it’s not better than the other schools in every possible way and it’s not better for everyone. If he needs the support from a smaller, less impersonal school, WPI, Lehigh, and Brandeis are a better choice. I don’t know enough about Santa Clara to comment. Geography aside, I think Irvine is better than Santa Cruz in most ways I can think of.
@PengsPhils @frontpage Thank you both for your insightful comments.
S in fact put Brandeis, Lehigh and WPI on the list for exactly the reasons you both identify (preference is not necessarily in that order). He wants and believes it is important to his success to have a smaller, more intimate environment. CMU was as we anticipated a deny which I am actually somewhat relieved with due to fit. S fits very well with high end academic students, however due to personal style and ADHD issues, he optimizes performance when he is part of a more close knit community including good interpersonal relationships with professors. Santa Clara made his list as it is much like Brandeis, but in the Jesuit realm. Well respected CS program if you speak to many CTO’s in Silicon Valley. I think he will not matriculate there however. Santa Cruz was safety, so he will withdraw there. Irvine is harder to walk away from, however as UC’s are so impacted they are currently tough environments especially for kids like our S who won’t enjoy or do well taking many of freshman/sophomore classes with 200 others in auditorium. It is also largely a commuter school which S does not prefer, since he is looking to live/eat and school with like minded students. It pains me a little for him to turn down the Irvine accept, but he will likely withdraw there as well for fit reasons.
No problem! Based on the last post in particular, I think WPI would be a great learning environment that would get the job done when it comes to everything else. Personally that’d be my pick. Good luck!
No problems. I was admitted to UMass and Northeastern which were stronger CS programs but did not matriculate there because I didn’t think a big school would have been a good fit due to similar issues. At the end, WPI was a good choice for me and I don’t regret my decision (at least not relative to the larger schools).
I would in that case narrow it down to WPI and Brandeis. If he identifies more with “learning by doing”, then WPI is one of the best options. If he’s a more theoretically oriented student, Brandeis would be a better choice. But there are still a good number of math/CS types at WPI as well. There’s also the liberal arts vs technical institute difference and each has their pros and cons. Good luck to him wherever he goes.
What do you guys know about the CS department at the University of Maryland? At the moment, I am debating between UMD and WPI. I prefer the general atmosphere of UMD, but I do not know much about how each school stacks up academically and especially in relation to CS.
UMD is known to be very strong in CS research and is known for its cybersecurity program in particular. It sounds like UMD would be the better option since it’s a better fit and at least a peer of WPI for CS. The place UMD will lack is in its teaching focus, where WPI would shine for anyone looking for more engaged learning. At UMD, you’ll be sitting in larger lectures for most courses. If that works for you, UMD all the way between the two.
What do you guys think of CS at Vassar?