240 likes | 370 Views
Top 10 Things I did Right/Wrong in Graduate School. Greg Morrisett. Goal, Caveats & Background. You should think and plan now how to get the most out of grad school. Where do you want to be when you finish? Take specifics with a large grain of salt Personal history:
E N D
Top 10 Things I did Right/Wrongin Graduate School Greg Morrisett
Goal, Caveats & Background You should think and plan now how to get the most out of grad school. • Where do you want to be when you finish? • Take specifics with a large grain of salt • Personal history: • Small, liberal arts undergrad school [’89] • Carnegie Mellon for grad work (PL) [’95] • Cornell faculty [‘96-’03] • Harvard faculty [‘04-now]
Things I did wrong: #10 Spent the first year isolated from my fellow students. • Lived alone • Worked alone • Went out of town a lot • They had fun, I was miserable. Make the effort to get to know them.
Wrong #9 Assumed I wasn’t good enough. • U. of Richmond is no CS powerhouse • Fellow students from IIT, Princeton, Berkeley, MIT, Stanford, etc. Yikes! • Felt like a fraud. • (Still feel like a fraud.) • (So does everyone else.) • By the end of quals, field was more level. Everyone admitted can do well!
Wrong #8 Was scared to ask advisor for stuff like books, travel money, equipment, etc. • You’re expensive (~$50K) • If I can prevent RSI, I’ll spend a lot of money. • Equipment is not. • Money is renewable, time is not. • You need the proper equipment to get the job done. It never hurts to ask.
Wrong #7 Lots of classes, little homework. • (CMU had no course requirements) • Better to do few classes well. • You’ve got to get your hands dirty to really learn something. (Re-prove that theorem, hack that algorithm, measure that performance, etc.) Learning by osmosis doesn’t work.
Wrong #6 Was hyper-critical of visitors and talks. • It’s easy & fun to be critical. • Until you’re the one under the glass. • It’s easy to be cynical. • Cynics aren’t good researchers. Try to keep an open and receptive mind. • Before forming an opinion, ask how you would (realistically) have done and presented the research.
Wrong #5 Never took courses outside of CS • I’ll be doing CS for the rest of my life • I can learn CS topics on my own • I need help with stuff I don’t do well • I either won’t or can’t make the time now • I wish I had taken: • Writing, French, Chinese [communication] • Chem, Bio, Psychology, Finance [applications] • Even if it had taken another year… The 12(10) requirement is a lower bound!
Wrong #4 Never took a teaching seminar • It’s half my job for God’s sake! • But there’s no requirement you actually learn how to teach (much less teach well.) • There are real skills to be learned here • Time management (stack of 15-min appts.) • Assignments, homeworks, exams, etc. • Psychology First year I at Cornell, I spent 90% of my time on teaching.
Wrong #3 Never figured out how funding works. • It’s half my job for God’s sake! • You shouldn’t care how funding works now. Before you graduate, you might want to learn more about how it works. • Writing a proposal is very different from writing a research paper. Ask your advisor if you can read or even participate in proposals.
Wrong #2 Didn’t keep a research journal. • I saw lots of cool talks. • I went to lots of cool conferences. • I read lots of cool papers, pages, etc. • I hacked on lots of cool things. • I had great ideas. • I don’t remember many of them. Consider keeping a journal.
Wrong #1 Didn’t buy Microsoft stock when I entered graduate school. :-)
Things I Did Right: #10 Worked closely with other graduate students. • Learned more from them than profs. • (they have more time – only 1 job) • Proof-read their work & vice versa • (good for them, good for you) • Only way to do big things (e.g., compiler)
Right #9 Summer Internships. • I went to Bell Labs & DEC CRL • $$$ • Contacts • Breadth • Research ideas • See how a lab works Do this in your first couple of years, if possible.
Right #8 Went to conferences & workshops. • Most of the real action occurs here. • You meet everyone here, and they meet you – it’s a smaller community than you think. • You keep up with the area. • You get a copy of the proceedings. • It’s easier to read a paper after a talk. • Organizations have $ for students to travel • Ask your advisor for $ -- never hurts.
Right #7 Got to know lots of faculty. • Worked with different people in different areas (PL, compilers, OS, etc.) • Invited these people to practice talks. • Hiring is an old boys network – people ask me “Who’s good that’s coming out of Harvard”? If I don’t know you, I can’t recommend you. • Now they’re my colleagues – an invaluable resource.
Right #6 Volunteered. • Moderated comp.lang.ml • Annoying, but the name recognition helped • Worked on open source projects • Great experience, satisfying • Reviewed papers • Learned a lot about writing, had people to call upon • Cleaned the lounge • We had a volunteer requirement at CMU • You have to do something to get noticed – why not do something worthwhile?
Right #5 Lots of practice talks, lots of red ink. • Had a great advisor: read everything • Marked it up – made me really, really mad • Eventually developed a thick skin • Learned how to write better • Talks at CMU were brutal • Every last point was debated • You quickly learned how to defend yourself and control the environment • Stage presence: Seeing yourself on video helps a lot • Learn to anticipate and think like your audience
Right #4 Bought & read “Bugs in Writing” (Lynn Dupre) • Tailored to CS technical writing • I learned so much – writing became faster, less red ink, etc. • “Elements of Style” also great • Technical writing class might help too. CS people are rarely good at communicating. But it’s just as important as any technical skills you’re going to pick up here.
Right #3 Hacked on lots of stuff. • What will you do for your thesis? • Do you really think it’ll come to you from just reading about ideas or sitting in classes? • My thesis came after about 7-8 serious projects (multi-processor, hardware stuff, GC, semantics, etc.)
Right #2 Didn’t leave before I finished. • I’ve known dozens of folks who accepted a job, expecting to finish the last few chapters of their thesis on the job. • Bad idea – I’ve only known 1 or 2 people that actually did this. • It’s much easier to finish up beforehand. This gives you time to settle in to a new environment. • And ideally, take a break.
Right #1 I had fun! • Threw and went to many parties • Weekly dinner co-op (no geek talk) • Skiing, amusement park trips • Softball • TGIF’s (= AI seminar at Cornell) • Got out of town when I felt down
This Seminar • Time Management • Choosing a Career Path • Job Search • Presentations • Working in the Lab • Writing & Reviewing Papers • Grants and Writing Proposals • Science Discussion • Mentoring & Management • [your topic here…]