Live data from Hacker News

Ask HN: A question for those who went to MIT/Stanford/CMU

news.ycombinator.com

21–30 of 57 posts

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#21
CMU grad here, working on a PhD.

First, don't put too much emphasis on school. Great programmers can come from anywhere.

Many other commenters are emphasizing the role of selection effect: top-tier schools select good students, rather than teaching well. I think the effect of good teaching shouldn't be undervalued. Although, again, good teachers and courses can come from anywhere, here are some things CMU does or did in the way of pedagogy:

1. Focus on concepts and skills, not specific technologies. Many of CMU's intro courses are taught in Standard ML, a language used by basically nobody. This levels the playing field, forcing people who think they already know everything to learn things from a different perspective. It puts the focus on how to design and reason about programs, rather than the minutiae of popular languages.

2. Have project-based courses. The star example here is CMU's operating systems course, which is a thing of beauty and terror. At many schools OS courses teach you trivia about hardware. CMU's OS course involves some of that, but is mostly about (a) working with a partner (b) time management (c) designing concurrent programs. The compilers course is of similar quality.

3. Teach math-as-problem-solving. CMU has a course, 15-251, which is notoriously difficult, because it introduces you to a lot of discrete math very quickly. This is partly because discrete math is the core of CS theory; most programs will never need this, but when you do need it, knowing a bit of theory can save you days or months. But the other goal is to simply practice solving difficult conceptual problems.

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#22
Yeah man coming from CMU there is an intense focus on not getting lost in microtrends and "new" ideas which are simply rehashing what's already been done. You want to avoid poisoning your mind by learning say functional programming in Rambda.js instead of going straight to the source. Before CMU I would pour over blog posts by amateur developers arguing that Ruby on Rails is always better than PHP or some other trite overdetermined point like that. After school I will actually look at their background to see if they are someone worth listening to or if there are just another bad developer with an opinion. A lesson that stuck with me from systems class was (paraphrasing here) "you want to be the power programmer who truly understands how the system works and can solve bugs nobody else can, and the only way to do that is to crack a book and read about how operating systems work, how networking works, etc instead of being stuck in user land, unable to deal with situations where the abstractions break"

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#23
Very little of my CS education at MIT took place on a computer or in a language other than English. Watch an OCW lecture to see what I mean. You aren't dealing with anything more than simple C/Java notation or pseudocode if you see code at all. You learn the concepts and data structures in abstraction from their implementation.

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#24
I went to one of these schools. I disagree with fellow HNers who say that the students are great engineering minds or have the right motivations from before hand.

These institutions do a damn good job at making you very very strong on your foundations of CS and problem solving and architecture. They deserve a ton of credit. They focus much lesser on teaching you cool and trendy stuff, and much more on grounded understanding of everything that forms the foundational basis of computing technology, especially in the first 2 years of the 4 year programs.

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#25

It's rather simple: A proper CS education, one that has all that "useless" theory that a number of HNers love to deride, equips its bearer to understand how anything in the software world is implemented. You don't have to study as hard to pick up a new technology or stack because you will know roughly what the underlying implementation has to look like and can simply poke around to identify the components and interfa…

yeah … it's about the high-order bit, thinking at a higher level of abstraction … learning a language vs. learning why the language is that way, how to design a language.

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#27
I went to Stanford, class of 2010. I got a BS and MS in computer science; the MS was with Stanford's "coterm" program where you can earn credits towards your master's degree during your four years as an undergrad.

* what behavior makes folks at these and alike school smart *

My experience was that almost everyone I met at Stanford had done something pretty extraordinary in high school. Examples: teaching an AP science class, being an amazing pianist, doing well at national science fairs, being a published author.

To answer your question: Almost everyone was very smart, but at least at Stanford there was great variety in the kinds of intelligence on display. This was true even among CS majors.

* what's the learning environment *

I'm not totally sure what you're asking about here. Undergrad CS classes were pretty similar to what you'd see at most universities: Professors lecturing, then people taking home exercises or programming assignments. Collaboration was usually encouraged on exercises, and programming assignments were usually done in groups.

My honest experience was that a lot of big courses were not particularly well taught. The first few CS courses are an exception; they're taught not by professors but by lecturers, who are all really good.

The best CS classes I took were graduate "seminar"-type classes, where we'd read a few papers each week and then come to class and discuss them. Shout out to Dawson Engler; his operating systems seminar was inspiring and eye-opening.

I can't speak as much to non-CS classes. I took some math and physics classes; these were pretty traditional, with lectures and written homework. Collaboration was encouraged on homework, and personally I wouldn't have been able to get through those classes without help from my friends.

* How do you see yourself after graduating from these schools? *

Again I'm not totally sure what you're after with this question. One of the best things that happened to me was that I became friends with musicians and biologists and English majors; people who are (academically, anyway) quite different from me. I learned to dance, and swing dancing has become a huge part of my life.

I work at Google now, and that's pretty humbling. Working at Mozilla when I did was as well. But life isn't all work, and in a lot of ways the non-CS stuff I learned in college has been much more impactful to my life and how I see myself.

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#28
post #12

I've spent a lot of time around Stanford and Berkeley CS grads. The main difference I would say is not that they are particularly more intelligent than anyone else, but that they are filled with an incredible amount of motivation. They tend to be extremely driven, focused people who are capable of putting in tons of work to "get shit done". They also tend to have a million different things going on at once (clubs, si…

CMU grad here, currently working on a PhD. All I can say is, this description doesn't apply to me. I'm definitely of the "work smart, not hard" persuasion. Persistence, I guess I have; but not an unbounded work ethic, or the focus to work on ten things at a time. Persistence for me means finding a new way to attack a problem, not pushing as hard as possible, John Henry style.

PhD student here, and I'm exactly the same. I procrastinate a lot (not good!), but I've been able to get things done. My current goal is to figure the optimal way to minimize procrastination...

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#29
post #16
post #10

I think that focusing on undergraduate credentials as a measure of engineering ability is largely unproductive, and phrases like "they don't get hung up on new Javascript framework" are stereotypes, and you will meet many counterexamples. To be clear, these schools turn out plenty of mediocre engineers. Usually, the selection process of which you're seeing the results is that kids who are very good at engineering wil…

I would assert that, given that great engineers end up at these top unis, they are able to widen their gap with others by a) accelerating their skills/knowledge by associating with like-minded individuals, and b) being stretched by their respective colleges. My observation is that top colleges tend to lump more work of greater breadth and depth in their students. It's like joining a great sports academy where you dev…

/second, came here to say this too. The top schools give their students much more, harder problem sets, exams, etc. than others. Some grade on a curve too, meaning that if everyone scores between 90-100, they don't all get A's, rather the bottom third gets C's, the mid 90s get B's, and the top third get A's. Creates an extremely competitive environment that pushes folks with raw talent to really work hard to hone it. Finally, most of the work is focused on learning problem solving methodologies, rather than learning the syntax and grammar of particular languages.

Re: Ask HN: A question for those who went to MIT/Stanford/CMU

#30
post #20

Many top people have been very self-motivated at some point in their lives. When you experience this, you can sit down and work on problems in flow day after day without fatigue -- even when the going is rough. It feels like solving a puzzle, where you get excited figuring out how every piece fits.

And then burnout kicks in and everything goes out the window. Even if you feel unlimited energy, make sure to take a break every now and then. Just my two cents.
Post reply on HN