Seems Stanford has a few CS majors on their roster. Also seems to be a wide range of opinions on where the Ivy schools rank for undergraduate at least.
@moscott Sorry, just saw this now.
Investigating the quality of teaching, how the schools approach introductory courses (I think if you find any intro course that is titled “Programming in Language X” or the like, I would be a bit concerned.
Student culture often defines a department because so much of CS learning happens outside of the classroom. If the department is academically focused and people don’t do anything beyond what class asks, you may find your skills lacking when you try to get a job. A community where people are constantly working on projects for various purposes, helping each other, and has good student helping student resources is important too. Any good CS college will have Facebook groups or the like where you can ask advice from upperclassmen for example. For schools without a big CS community, this can be a bit of a negative. The communities can take various forms, which again, is why its hard to really get a handle on and takes a lot of digging.
Example: MIT and Northeastern run Boston-based hackathons, school sponsored and on their own, that attract students all over Boston. UMass Amherst has people travel from all over the state. Harvard only just started theirs 2 years ago, and the first one I went to was very lacking in resources and enthusiasm, despite the “name” of Harvard. Very few Harvard students attended, and it seemed more like they were stopping by. Harvard would be a good example of the community difference.
Stanford on the other hand lives and breathes CS and entrepreneurship, for comparison.
All of this is the small details - they will all offer plenty sufficient programs. But these are some of the things I think distinguish good from great programs as a whole.
I would put Princeton as number one and then probably Harvard in second place.
2 things about a student athlete:
- Many, many student athletes- even recruited ones- do not play their whole 4 years. Some burn out, others injury out. It will be hard for your son, at this point, to imagine it, but a serious round or two of 'what if....' is really important.
- More than it's peers, Harvard makes a point of not accommodating athletes. The expectation is that you can handle both without special support (including things like extensions for assignments). Individual teachers may choose to do so, but I know several student athletes (in different sports, but not football specifically) who ended up transferring out b/c trying to manage the time expectations of their coaches and professors was simply too much.
The Ivies have underrated CS programs.
Penn reports CS majors earning an average of $105k. Cornell reports about $104k. Harvard says that nearly 1/2 of their grads get $110k. All of these are serious CS programs with talented students. I looked for Princeton and Brown data, but did not find it.
Harvard and Penn students mostly end up in CS positions after graduation, but also are often recruited into consulting or investment careers. They are the two Ivies where students have the highest salaries on average across majors.
For football and CS I would tend to avoid Columbia because the core has many requirements and rigid scheduling. When you visit Harvard and Penn, ask about ability to manage CS with football. Both CS programs are demanding. If one is willing to provide more support for him to be successful at both, that would be valuable.
Harvard and Penn also have two of the better football programs in the Ivy League.
I would probably not choose M & T at Penn, but you could still take classes in Wharton that are of interest under the One Penn Policy.
The problem with rankings is that they do not tend to reflect what most people want to know which is how good is the placement? How much will I make? How many offers is the average student getting? Do grads get consistently placed at the best companies? The schools that do the best at those things are Harvard and Penn.