In November of 2006, I applied for the National Research Foundation Graduate Research Fellowship. In March of 2007, I found out I got one. I told myself I would write up a little guide on this, as reading other people's words on the subject helped me a lot when I was doing my application. In particular, the advice by Phillip Guo from MIT and Keith Jacks Gamble from Berkeley. Thanks, Phillip and Keith.
I applied for the NSF in Computer Science, specifically theory. I didn't really know if I had a good chance of winning it, but not applying gave me a 0% chance, and I also figured that this would be good practice for my actual grad school apps.
Who This Guide Is For
I intended to write this as a general guide that almost anyone could find useful (even non-computer scientists) but I realized that this isn't going to work for everyone. It will still be useful if you are in another field, but you kind of already have to have your stuff together. This isn't for people who aren't in the top 20% of students in their field. Research is important. Academics are important. The people writing your recommendations need to be able to say that you are one of the best students they've ever seen. Now I'm not saying a C student can't win an NSF, or that you have to be published in a highly respected conference. But if you are a C student or haven't done any peer-reviewed research, you might need more help crafting your documentation than this guide can provide.
The most important thing to remember when applying are the two criteria: INTELLECTUAL MERIT and BROADER IMPACTS. These are both VERY important. Never forget them as you work on your application. They are described in more detail on the NSF website, read the descriptions carefully and try to craft a story about how you satisfy BOTH. I cannot stress this enough. You need to be a rockstar in academics and research AND show that you are someone who is going to change the world (don't get discouraged by this. You could change the world in a small way, that's ok).
First things first, get your stuff together. Once you've decided to apply, you need to get your recommendations. I'm going to assume you're like me and tend to procrastinate: well get over it, because asking your recommenders for recs is not something you can procrastinate! It doesn't matter if you write your essays the day the NSF is due (well, you probably shouldn't, but I have to admit I was working down to the wire) but you CANNOT procrastinate asking for recs. Just imagine this scenario: your research advisor, sitting there stewing trying to write you a rec with only a day or two left before the deadline. Yeah. How do you think that rec is going to sound? Not so good. Give them lots of time so they have a positive view of your organizational abilities. Remember: they are doing you a favor.
Also, don't just shoot them an email with "can you write me a recommendation? Here's the link, thanks!" I had been out of school for 3 years when I applied, but even if you're still there, you need to remind them of your accomplishments. I gave each letter writer my resume (one page. this is a pet peeve of mine. no one under 25 should have a resume of longer than one page, period), grades in all CS and math classes, a bullet-point list of accomplishments, and descriptions (cut and pasted from the NSF website) of what their letters should cover. I also added very clear definitions of INTELLECTUAL MERIT and BROADER IMPACTS and asked them to please try to address those two criteria. This is all really easy to read (notice there are no long research papers or anything) and will help a lot when they're trying to remember why they like you :) If you have your essays ready, it might also be a good idea to give your rec writers those so that they can reinforce anything that you mention while not going over the same stuff too much.
In terms of who to ask, at the time I applied the NSF requested 3 letters. If you are reading this way ahead of time, you should start trying to forge relationships with 3 people who you could ask to write letters for you -- believe me, 3 is a lot. I had 3 close professors in undergrad, one who supervised my undergraduate thesis (research), one who I took a few classes with and I talked to often, and one in the Math department who I took several classes with. Think about what you'd like them to say about you (in ideal circumstances) and think back to what kind of experiences you should have with them to make them say that. Do research! Go to office hours! Ask questions and show an interest! Participate in class! Don't be the person who sits in the back turning in perfect problem sets, but never showing a deeper interest in what you're learning.
An important note: it is your job to make sure your recommendation writers submit their stuff on time. If you have wacky zany professors who aren't always with it (this is de rigueur in theory), make sure you check up on them. Leaving out a recommendation is not an option.
Ah, the essays. If you're in the process of applying, this is the only part of the application you really have control over right now. This is where you tell your story.
When I applied, there were 3 essays: Previous Research, Personal Statement, and Research Proposal. You don't have to address INTELLECTUAL MERIT and BROADER IMPACTS (like how i keep capitalizing them? they're that important!) in all of them. BROADER IMPACTS really came out in my Personal Statement, though I tried to explain why both my past research and future research proposal were important to the world. And remember, I applied in theory. Sometimes you have to stretch a little.
Feel free to be technical and to cite other research in these essays. You have to choose on the NSF app in which subarea you want to apply (in Computer Science, stuff like theory, systems, AI, etc) so the people reading your essay will be experts. Choose carefully! If what you did/want to do covers multiple areas, think about the one in which you'll look the strongest -- taking everything in your application into account. Also, this is totally non-binding to your future graduate school plans. You can change everything around once you've won that fellowship.
And the most important part of your essay writing: Have people read your essays! Everyone! Your mailman! Your dog! Your next door neighbor! Professors, students, grad students, your boss, your tech lead, everyone! Here's the beauty of it: they expend energy trying to think about how to make you sound better, but you don't even have to take their advice! Get over your self-consciousness and just do it.
I got fantastic advice from a two grad students, one who had previously not won and then won an NSF. My essays became much better because of those two people.
The Proposed Research essay is insanely scary. Personally, I was terrified. I knew I didn't want to study exactly what I had done for my undergraduate thesis, but I didn't feel like I knew enough about the area I was interested in (game theory) to craft a well written proposal. Again, this is where you talk to people! By getting recommendations on papers to read (I scoured that year's PODC proceedings) and having chats on what was hot in these areas of research, I narrowed down my possibilities considerably.
And here is one of the real differences between applying for an NSF and applying to grad school: the NSF wants a REALLY SPECIFIC research proposal. They don't want a summary of some area or a hand wavy proposal. They want to see that you know what you're talking about and that you are just waiting for the check to clear to immediately start tackling this specific, deep, impactful problem. Of course everyone really knows that you might get to grad school and totally change your mind (as I did) but we all have to go through this process anyway. When you apply to graduate school, it's better to be somewhat general so as not to narrow yourself out of an advisor.
Also, I think it's nice to create a path from your previous research to your proposed research, using your experience as support. Mine was a bit of a stretch (distributed algorithms to complexity in game theory, with distributed systems work along the way) but I think it made for a compelling essay.
So What Does It Take, Anyway?
Do you like how I put this at the end? I did so because I don't think there's a formula to winning an NSF -- and any formula you could come up with probably would have disqualified me. I found hundreds of reasons to think that I would never win it (my scores weren't good enough. My research wasn't prestigious enough. I had been working for 3 years. I'm not the most amazing student ever to graduate from my school) but I think I managed to put together a persuasive story for why I should have a chance anyway. And that's what it's really about -- your story. You have to believe in something so much that you know you could change the world doing it -- even if the length of time you believe in it is only the length of time it takes you to create your application! I applied for the NSF in theory and then I ended up applying to work with systems professors in most of my applications. But for the few weeks I was working on my application, I was convinced that I was going to change the landscape of computer science, economics, and mathematics research by doing work in game theory.
But enough of the fuzzy stuff. I know what you want, you want to know my GRE scores, my GPA, in which conferences I was published, etc etc. Well I'm definitely not going to give you that. I think I was well positioned in terms of those things (which you have to be) but I wasn't the absolute best. What I think that I did successfully was to paint a picture showing that I not only had a powerful vision to get something accomplished that would be worth the NSF's money, but I also had evidence of the background, skills, and work ethic to make it happen. And that's what it's ultimately about. The government is not trying to award the most hardcore science students. The government is trying to invest $120,000 somewhere where it will get a return.
So that's it. Feel free to email or comment with questions, and good luck!