I am a packrat, and I have been collecting and scanning PDFs for years. The trick is how to organize them in a way that allows me to find what I need quickly enough to be useful.

The way I do this now is with EagleFiler. I’ve tried a number of other options, but I haven’t found a better one. Here are some good things about EagleFiler:
- The EagleFiler library is nothing more than a folder on your disk, with some associated metadata. This means that if, somewhere down the road, EagleFiler ceases to exist, the files are just as accessible as they were (minus the metadata).
- EagleFiler will refuse to import a file into your library you already have, so you don’t wind up with a lot of duplicates if you just dump a folderful of PDFs on it.
- Importing is very easy, a single keypress will send whatever you’re looking at (in a web browser, in the Finder, etc.) into the library.
- It’s stable, and it’s quick.
- It indexes the files in the library so you can easily search for “Japanese” and find all of the papers that mention Japanese.
- It saves a checksum for all of the files that allows it to do integrity checking, so you can be confident that the files in your library have not gotten corrupted.
- The developer is very responsive and the product is under active development.
- The company that produces it is named C-Command Software.
EagleFiler isn’t perfect, but it is being improved at a relatively rapid pace as well. One thing that could be better is that, although files can be tagged with keywords, the interface is not well suited for having large numbers of tags (so I tag things pretty conservatively). There are things that it doesn’t do now (like allow you to create smart folders from searches, or detect when a file is added within the library folder from outside EagleFiler) that are likely to be on the horizon for future versions.
EagleFiler is not very good for taking notes, and I’m not sure it will get better. You can easily create new RTF files and enter text into them from within EagleFiler, but they aren’t associated with anything, they are just their own standalone files. Each file in an EagleFiler library does have a “notes” field, but there’s just one, and the only way to see them is in the inspector window.
A lot of the programs I use allow linking to PDF files, and I find that the EagleFiler library is as good a place as any to link things in to. So, in my bibliography programs and notetaking programs, I just link to the file in EagleFiler.

Although I haven’t made a lot of use of it yet, another program that allows you to browse and tag is Yep. Yep is pretty, and it has good support for tagging with lots of keywords. It integrates with Spotlight, so it’s easy to just point it to the PDF folder inside my EagleFiler library, allowing me to use Yep to browse. However, a downside of using Yep this way is that it doesn’t pick up the metadata from EagleFiler (it has its own metadata), and so browsing it this way requires relying on the filename. (Also, if I’m browsing files inside an EagleFiler library, I can’t change the filename within Yep, or EagleFiler will no longer be able to find it.) Despite the fact that it’s pretty, I don’t think Yep really serves a necessary function for me. I can browse papers easily enough in EagleFiler itself. Yep’s note capabilities are no better than EagleFiler’s.

One program that I might actually use to browse papers, apart from EagleFiler, is BibDesk. It’s not really any better than EagleFiler for browsing (it’s pretty much the same, it will allow PDFs to be attached, and searched), but it is at its core a bibliography manager (for LaTeX bib files), and so I find myself with the program open often enough anyway. It has its own datafiles, but they serve a different purpose from EagleFiler’s metadata (although it is still the case that I’ve entered the title and author information for each paper twice). You can enter notes here, but they’ll go into your bib file (and, again, there’s just a single repository per paper for notes, and to see them you have to click over to the notes pane of the inspector window).

One thing that neither EagleFiler nor Yep allow for is linking one paper to another, which can be nice to do. This is probably something that EndNote can do, but I don’t really like EndNote very much. I did recently take a look at Zotero, a Firefox plugin for bibliography and web clippings management. There are things I like a lot about Zotero. You can add notes (either linked to a paper, or just by themselves), tag everything with keywords, save searches as smart folders. And it lets you capture papers right off the web where you find them. It also indexes any attached PDF files and allows you to search them, and it’s relatively quick and responsive. And it does allow you to link papers to one another (only symmetrically, so any paper you link to is also linked back). You can also add as many notes as you like, which can themselves be linked to multiple papers or keywords.
The main downside I find to Zotero, which is enough to keep me from trying to use it seriously now, is that the way the library is organized requires more clicking around that I’d like. Each bibliographic entry is treated as a folder, to which notes, web pages, and PDF files can be attached. But to attach a file to an entry, you need to click on the Attachments tab and then click a button and find the file, and to view the attached file, you need to click on the paper, reveal its contents, click on the PDF file, and then click on the view button.
Zotero has a plugin for Microsoft Word that allows you to use it like EndNote, which is cool. In fact, I’ve found the Zotero plugin to be more flexible than either EndNote’s or Bookends’. For LaTeX, I have so far not discovered any way for it to be as seamlessly integrated as BibDesk is. As far as I can tell, you need to export the Zotero library to a bib file every time you make a change that needs to be reflected in your LaTeX documents. I will, however, keep trying occasionally with Zotero, because I really want to like it.
I’ll probably say something else later about bibliography management, but Bookends is a pretty good bibliography manager that has a Microsoft Word plugin (so, again, it can be used like EndNote), and it serves as a decent paper browser, much like BibDesk does. Because I’ve recently converted to LaTeX, I don’t think I will be using Bookends much anymore, however; BibDesk does pretty much all the same stuff.
Papers also looked like it would be promising, but it just hasn’t come up to speed quickly enough for me to be using it yet. It’s also very nearly bibliography management software itself, but it’s still a bit clumsy (like Zotero) for getting citation information into bib format (and apparently a bit buggy as well). I also found it not easy to figure out how to deal with manuscripts that are not published. If Papers evolves to play better with LaTeX and handle the online databases relevant for Linguistics better (it is right now kind of focused on medical research, although the options are expanding), I might consider it. It is a nicely designed application, and the user experience is pleasant. It also does not seem as if it possible to relate papers to one another here, though maybe I’m just missing it somehow. Papers also, I really want to like, and I’ll be keeping an eye on its future development.
For taking notes, Journler is not bad, although I still haven’t quite managed to figure out what the best workflow is. The developer of Journler is working on another project called Lex that might be better suited for this kind of thing, but as far as I know, Lex hasn’t even entered alpha testing. But for the little bit of notetaking that I have done in Journler, I’ve had pretty good luck linking PDF files from my EagleFiler libraries.
Ok, that’s enough commentary on this topic. Updates later as needed.