Research is a difficult trade, and requires mastery of many skills. The references on this page try to improve one's scholarly skills and understanding of science in general. I've been recommending many of these books and papers to students and collaborators I'm working with, so I decided to put them all in one place and just refer people to this page. I've got great feedback on the quality and usefulness of the material listed here. If you know of other high-quality references suitable for this page, please send me an email.
Besides the key idea one wants to convey, the clarity and style of exposition are arguably the most important aspects of academic writing. I've started collecting papers and books on scholarly writing. If you can suggest a good reference, please send me an email. What follows is the list of references that I found useful so far:
- Strunk and White: The Elements of Style is considered to be the Bible of clean good writing. My adviser burnt those rules into my mind
- P. R. Halmos: How to Write Mathematics [PDF]
- H. Schulzrinne: Writing Technical Articles [HTML]
- G. M. Whitesides: Whitesides' Group: Writing a Paper [PDF]
- S. Keshav: How to Read a Paper [PDF]
- G. Gopen, J. Swan: The Science of Scientific Writing [HTML]
- R. Levin, D. D. Redell: How (and How Not) to Write a Good Systems Paper [HTML]
- Simon Peyton Jones: How to write a good research paper, give a good research talk, and write a good grant proposal [HTML]
- Donald E. Knuth, Tracy Larrabee and Paul M. Roberts: Mathematical Writing [PDF]
- Mary-Claire van Leunen and Richard Lipton: How to Have Your Abstract Rejected [HTML]
- William Pugh: Advice to Authors of Extended Abstracts [HTML]
- Mark Wegman: What it's like to be a POPL referee; or how to write an extended abstract so that it is more likely to be accepted [HTML]
- Joel E. Cohen: To A Young Scientist [HTML]
Graphical Presentation of Quantitative Information
In computer science, it is relatively easy to produce wast amounts of data from experiments, but it is difficult to extract the essence and present it in a coherent, thought provoking, and content-integrated way. Edward R. Tufte gives a lot of good advice (although not all of it is applicable to computer science) in these books:
Tufte has several other books as well, but I haven't read them, as the reviews on Amazon say other books don't contain that much additional content past the two books mentioned above.
The Art of Presenting
Here are some great resources for improving presentation skills:
- W. R. Steele: Presentation Skills 201 gives a lot of great advice on how to create and deliver great presentations. What I particularly liked about this book is that each section is a short (5-10 min) read, and the title of the section is a great summary, so reading just the table of contents later is sufficient for refreshing memory.
- G. Reynolds: Presentation Zen mostly focuses on style, brevity, and delivering the essential message. In terms of breadth and depth, Steele's book wins hands down. Zen contains a lot of useful web links though.
- TED talks is a truly exceptional collection of talks on various topics
Philosophy of Science
- T. S. Kuhn: The Structure of Scientific Revolutions. I heartily recommend this book. It does a great job at explaining how science evolves, why both normal (i.e., evolutionary) and revolutionary science are important, and the prerequisites for scientific revolutions.
How to Do Research