As an academic, it's a good idea to maintain a professional website with a list of your publications. Ideally, this list should include links to where visitors can download the papers (PDFs) and any related code. In my case, I also maintain a website for my research group that has another publication list. Of course, you need to maintain local reference files with the citation info for your publications (for inclusion in later publications), as well as your CV.
Maintaining all these separate lists can become very tedious, which is probably why most academics' sites are usually out-of-date. Here's how I automate much of it:
- I use Bibtex. This allows automatic generation of bibliographies for papers and for my CV. And it's the basis for generating HTML bibliographies, as outlined below.
- I use Mendeley. Mendeley allows me to create separate bibliographic lists (e.g., for my own publications and for those of my research group) and export them as bibtex files, using the desktop app. It's also possible to get a bibtex file of your Mendeley publications directly on-line through BibBase. You can even display a list of your publications on-line automatically using Mendeley, but it's not very customizable; for instance, they appear in alphabetical, rather than chronological order.
- I would use BibBase to automatically display an updated bibliography if my institutional server ran PHP or CGI scripts, but no luck there.
- My less-automatic solution is simple Python scripts that generate CSS-friendly HTML. The scripts use the Python module bibliograph to parse bibtex entries. I could instead use bibtex2html. I like my solution better because the customization is all done using CSS rather than Python, so I can change the look without re-generating the HTML. Of course, bibtex2html is a more polished and flexible tool than my 30-line script.
- Here's a CSS snippet that's used for this publication list:
#pub {padding: 5px; border-width: 2px; border-style: none; background-color: #eee4b5; font-size: 1.2em; margin-top: 20px; margin-bottom: 20px;} #pub a{font-weight: bold; color: #09434e;} #pub name{font-weight: bold; color: #09434e;} #pub journal{font-style: italic;}
The workflow for adding a new paper to an html bibliography is:
- Add the paper in Mendeley.
- Export bibtex from Mendeley.
- Run Python scripts.
- Paste resulting HTML into the appropriate file.
Again, it would be simpler if I could use Bibbase (cutting out steps 2-4). It's still fairly painless, and it's easy to generate new bibilographic lists or customize the look of existing ones.