Hints on doing research

Revision as of 18:11, 30 May 2024 by Keshav (talk | contribs) (→‎Meta)

Hints on doing research

These hints summarize my decades of thinking on this topic. I also gave a talk based on these hints called "Doing GREAT Research" at the Student Workshop in CoNext 2007.


Beginning

  • Work to develop a research vision. Ask yourself "If my research succeeds, how will this make the world a better place?"
  • Research should be 'worth doing, doable, and not done'. Have a good answer for why, if it's doable, it's not done - perhaps it's not worth doing? Don't fill a "much-needed gap."
  • Always start with a literature survey. There is nothing worse than knowing you've wasted your time unknowingly duplicating someone else's work. Before trying to break down a wall to get to the other side, do a literature survey to check if there is a door.
  • Do not be afraid to challenge conventional wisdom -- look for a mismatch between hype and reality. Good research comes from re-examining conventional assumptions and separating wishful thinking from what's actually true. But be certain of your facts.
  • Choose your collaborators carefully and let go when you must.
  • Seek theoretical bases for your work. A prototype is one-off, but a theory is for ever.

Doing

  • Simplify the problem to make it tractable, then add complexity one step at a time. Don't be tempted to 'boil the ocean'. Define the simplest non-trival problem and solve it first.
  • Be very careful in making assumptions. Validate them continuously. If you find your assumptions about your work are wrong, discard your work immediately and move on. If you are not convinced about the validity of your work, no one else will be either.
  • More than a million papers are published each year but only a few are cited. Try to write papers that will be cited for decades to come, not forgotten.
  • Doing deep research is like peeling an onion: it will make you cry, but the dish tastes better.
  • When confronted with an abstract problem, come up with a concrete example. When confronted with a concerete problem, generalize and make it abstract.
  • Write a weekly research report for your supervisor. It will remind you of what you did, years later. And it will help you write a paper on your work.
  • Just like a painter only makes detailed brushstrokes, but steps back from a painting from time to time to see the big picture (literally), use your weekly report to step back from your work and assess the maturity, direction, and limitations of your work.
  • Be open with your research and share ideas freely. Respect and incorporate any feedback. Constantly explaining your work will refine your vision. Some of your ideas may be stolen, but your overall impact will be greater.
  • Write your work down. Always carry a notebook. Take detailed notes at meetings and lectures. Your mind is more unreliable than you think.
  • If you do not understand something in a paper, correspond with the author. They will love you for it.
  • Do good work that can be published, but don't let publications drive your work. A few publications with great impact are much better than many publications with no impact.
  • Use mathematical notation judiciously. If something can be explained in words, then do so.
  • Use simulations when necessary, but remember that "The goal of simulations is intuition, not numbers" R.W. Hamming.
  • Research in an area goes through three stages- naive simplicity, complexity, and a second simplicity. Do not confuse the first with the third.


Writing and publishing

  • Fuzzy writing indicates fuzzy thinking. Avoid both.
  • Don't put your name to a paper unless you have made a significant contribution to it.
  • Always give credit where credit is due. Be generous.
  • Rejection of a paper is your chance to strengthen it. The best papers are rejected at least once. On the other hand, you should probably give up after three rejections.


Meta

  • The credibility of your research is your immeasurable asset.
  • Maintain a research website and update it frequently.
  • Read widely.
  • Look up and follow guides on how to read and write a paper.
  • Attend talks in all areas of research - you never know if it may turn out to be relevant.
  • Once you have crystallized a problem, focus on it to the exclusion of everything else. A solution will present itself naturally.
  • Join a professional society such as the ACM. It provides a research community for life.
  • Ask questions at talks. It keeps you from sleeping.
  • Be passionate about your work. If your research topic does not interest you, it is not going to interest anyone else either.
  • There is no greater thrill than discovering something new. Enjoy your work!