The title is fairly generic in nature, so I'm trying to elaborate in the body. I'm interested in answers pertaining to Theoretical Computer Science (TCS), but I'm certain the question would be equally relevant in fields which have been around for more than a couple of decades, and hence I hope to get responses from researchers in other disciplines as well!

What I'm trying to understand is how researchers (who have been working for quite sometime) in any specialized field (like TCS) keep track of results that have already been published - not just seminal results, but also results which have a lesser (but not insignificant) impact on the field but were published years or decades before. At the same time, one has to keep track of results being published in (at least) the notable conferences in the current year as well, in order to absorb the new ideas presented there and incorporate/extend them in one's own work.

I find it kind of incredible to believe that all of the above is possible without any kind of disciplined approach to reading and subsequent assimilation of the ideas on a regular basis - which is why I'm asking members of academia about their experiences/practices on this. In particular:

  1. How frequently (if at all) do you revisit "classic" results?
  2. Do you keep written/electronic notes on a regular basis to keep track of continuing progress in a field (say, for instance, inapproximability results for geometric problems) - or do you prefer to keep it all in your mind?
  3. To keep track of current state of art, do you only attend/read Tier-I conferences, or do you get useful ideas from results published in Tier-II/III conferences as well?
  4. What kind of time/resources would you typically set aside for reading, as opposed to working on a problem?

In short, I'm trying to find what kind of things would you expect a top researcher to "know" off the top of his head, and at what level of depth - and how would you go trying to maintain that level of perception over the years?

(I understand that the question IS subjective, but I'm hoping that it satisfies the guidelines for a "good subjective" question!)

7 Answers 7


Here are a few additions to Suresh's list (converted from a comment at TCSgrad's suggestion):

  • Don't even try to remember details. Just remember that somebody published something related, and use Google (or Mendeley or Papers) to find the paper again when you need it.

  • Chase references. Interesting papers tend to cite other interesting papers. When you read any paper, also look at the papers in its bibliography.

  • Chase citations. Interesting papers tend to be cited by other interesting papers. When you read the paper, find other papers that cite it (via Google Scholar, for example) and look at them, too.

  • Follow whims. If you see a paper with an interesting word in the title, or an interesting figure on the first page, at least read the abstract.

  • Don't try to read everything. That's impossible. Just try to read a little more.

  • Stop reading. Eventually you have to do your own research. Don't worry about reinventing the wheel; sometimes the best (and even fastest) way to understand what someone else did is to ignore them, figure it out yourself, and then read their paper.


I'm very bad at keeping track of things, so maybe all I can share is what NOT to do :), but I find it easiest to keep track of ongoing work in the community (and I'm in TCS too) in three ways:

  • By working on problems and being willing to indulge in flights of fancy (which allows me to read beyond the narrow scope of the problem I'm dealing with)
  • By perusing the list of accepted papers at a conference when it's announced.
  • (more recently) subscribing to relevant arXiv feeds and saving papers to read on my IPad - this works only partially, but I always have things ready to read when I feel like it.

This system is not perfect - I still miss lots of interesting papers - but I've slowly come to accept that it will be impossible to keep track of all interesting results in the field (let alone the flashy ones). For breadth beyond the above I rely a lot on surveys and slides that I can quickly browse.

  • Nice list! The idea of using surveys to keep track of results is pretty neat - but do you need to re-read older papers at all? I find it hard to remember all the technical details of papers that I've read a while back, so I was wondering if it was just me who had that problem!
    – TCSGrad
    Dec 3, 2012 at 19:25
  • 1
    Yes, I often have to re-read older papers: a good paper often has many ideas and if at the time I only need one key fact, I might not realize that there are other things worth squirreling away. Although I'm not the best person to ask: I've frequently forgotten blog posts that I wrote myself and am pleasantly surprised to discover them on Google.
    – Suresh
    Dec 3, 2012 at 19:31
  • 8
    A couple of additions to this list: Don't even try to remember details. Just remember that somebody published something related, and use Google (or Mendeley or Papers) to find the paper again when you need it. Chase references. Interesting papers tend to cite other interesting papers. Chase citations. Interesting papers tend to be cited by other interesting papers. Follow whims. If you see a paper with an interesting word in the title, at least read the abstract. Don't try to read everything. That's impossible. Just try to read a little more.
    – JeffE
    Dec 3, 2012 at 22:41
  • 2
    @JeffE - Its an awesome comment, should be one of the answers (which tend to get better visibility than comments!)
    – TCSGrad
    Dec 4, 2012 at 1:34
  • 1
    @JeffE +1 for do not remember details (I thought I should in the early times). Totally agree with the OP suggestion.. Chasing references/citations is a key skill in being up to date :)
    – seteropere
    Dec 4, 2012 at 4:33

Read review articles in your field. That's where someone else already did the hard work of reading and summarizing the literature. Tenured-track professors have a strong incentive to write invited review articles because it's prestigious and gets them a lot of citations.

Maintain a library database of papers you've read along with the dates you read them. Add your own keywords to them so you can find them later and cite them. Keep this database separate from the new databases you'll make when you start writing a new paper (don't make the mistake of trying to keep it all in the same file -- you'll never find anything when it gets too big). I do this in Endnote, though obviously you could do it in bibtex or some other program.

Put a repeating monthly reminder on your calendar to send you an email when the new issue of each journal comes out. You can do this easily on Google Calendar or MS Outlook. Delete the email after you've looked through the new articles. (Remember to put the important ones you read in your library database!)

Also put semi-annual reminders on your calendar with abstract submission due dates for the relevant conferences for your field. I'd suggest putting two email reminders about a month and also a week before the actual due dates.

Carry a notebook (not a laptop or other device) with you at the conference and write down titles of the important events and what was important about them. Yes, handwritten notes! You won't have time to type up pretty documents. Managing battery life and surfing the internet is a waste of time when you could be networking with the best researchers in your field. You'll have time after the conference to go back through your notes and then add those presentations to your library database.


I am not experienced researcher but I will say what I usually do:

  • Subscribe for Google scholar alert.
    I found this very helpful specially for new topics and to keep you updated. Once google scholar indexed a paper contains your word, it will send you alert. It is simply an awesome feature to know almost every new paper in your subfield.
  • Subscribe in ArXiv
    My goal here is to see the general field papers. (I am subscribing to Artificial Intelligence and Game Theory). You will get the abstracts along with the paper title. If you found this paper is interesting then google it.
  • Follow up with Top-conferences and journals
    (in Computer Science) Sometimes visiting the new DBLP page for the conference/journal might be useful. Same goes to visiting the pioneers DBLP pages.

I do maintain a plain text file contains some (crazy) ideas/strong statements/question related to the papers I read. When it is the time to look for new project/idea, I usually consult this file.

  • 3
    +1 for Scholar alerts. I forgot about that one, but it's greatly improved and often produces articles of interest to me (based on my publications)
    – Suresh
    Dec 3, 2012 at 22:30
  • 1
    Same here but I believe the recommendations show only when your profile is public otherwise you will not have recommended papers.
    – seteropere
    Dec 3, 2012 at 22:38

At some point in your academic career you have to be pragmatic. By this I mean you will read a paper when you need to, and you often read the papers only in parts. Still you will read plenty of papers: research, teaching, refereeing there are many occasions.

On the other hand you have to keep your eyes open. You should have a rough idea what is going on in your field. But you don't have to know the details, since you don't have the time for this. Many ideas how to do this were already posted. Here is what I do (I also work in TCS and Discrete Math).

  • Subscribe to the arxiv's rss feed you are interested in.
  • Read the important blogs, they will also list paper accepted at main conferences.
  • If you are interested in a journal, subscribe to the newsletter.
  • Talk to your peers.

Often I just scan the titles, and the list of authors. If I find something interesting I have a look at the abstract and try to understand the statement of the main result. If you don't already use a rss reader I strongly recommend to use one to keep track of everything in one single place.


Research Lei was an interesting attempt at visualizing groups of people working together, clustering documents with similar subjects of work, using a simple python interface. I am not sure if it still works but making such graphs and reviewing your community gives you a global view of work being done in the field.


You don't need to know everything. Older results only matter as much as they're relevant to what you're researching and writing about now. Also, since research is about discovering NEW things, older results can pretty much just sit there and gather dust until they become relevant for current research.

  • 3
    Well, the interesting question is actually “how to make sure you remember of their existence when you need these older results”…
    – F'x
    Dec 3, 2012 at 21:55
  • Keep a research journal database. I use FileMaker Pro. Dec 3, 2012 at 21:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .