MSR summer school
Sunday, July 26, 2009 at 2:53PM This week I have visited a few lectures of the Microsoft Research guys during the Microsoft Research summer school on high performance computing at MSU. There were a lot of interesting stuff at the school. The main idea behind the school was that Von Neumann architecture is too old and its limitations become more and more obvious. So, computer science field (its programming part especially) must be “reinvented” soon. As an alternative to the classic imperative programming, MSR guys propose using functional languages like Haskell. So, they have talked about Haskell (and, especially, about parallel programming in Haskell) a lot. And, of course, Simon Peyton-Jones, one of the main developers of the Haskell language and lead designer of the Glasgow Haskell Compiler, was there. He is very inspiring and cheerful man, and his talks are really great! But the talk I liked most was not about functional programming. It was about research papers and talks (it was kind of a meta talk). Slides and other stuff (like videos) related to that talk are available here, but I’m still going to list some of the major (or just interesting to me) theses:
- Writing articles and giving talks is not about anything but sharing ideas.
- Have an idea (it’s not necessary for your idea to be a fantastic one) => write an article.
- One article <=> one clear idea.
- Use a lot of examples! Every definition or statement (especially the one with complicated math) becomes much more clear if it has an associated example.
- Related work section should be placed just before conclusion. Other works can distract your reader from your (good or not) own work (this idea was quite surprising to me).
- Be as clear and concrete, as possible.
- Write in active voice, use agents (like process, algorithm, iteration etc). For example, “this algorithm selects best classifier” is much better than “best classifier is selected”.
- Good talk contents: motivation (20%) and key idea (80%).
- You should select something you want your readers to remember after listening to your talk. Concentrate on that thing. It’s absolutely normal to cover only part of your paper at your talk.
- Adding outline to your slides makes no sense but wastes the time of the talk.
- Again, examples are your main weapon!
- Do not show the total amount of slides to your audience (numbers like “6 of 95” can make people very sad).
- Always finish in time. And it’s better to save some time for questions than to show all the slides to your audience.
- Be enthusiastic! Do not make excuses! Do not afraid to be afraid of your talk (everybody does)!
I hope reading this will help someone with his (or her) paper or talk. And I hope that person will look through the original slides or watch the video by himself. It is worth all the time spent.

