For a long time I have been wanting to automate the way that I display my publications on my web site. There are facilites such as bib2html. They are very good at what they do but they never did exactly what I wanted. In fact, at the ALIO-INFORMS conference in June I recall having long conversations (yes plural) with a good friend of mine about the best way to take a bibTeX file and create a list of publications that is suitable to display on the web. What came across was that we both had slightly different requirements and none of the “off the shelf” solutions completely fitted the bill.
Then I came across the web site by Andreas Classen. This was the closest I had come across that did everything I needed, largely due to the fact that the scripts could be parameterised.
If there is a downside it is that you need to be able to run PHP on the server which serves your web pages. I susppose you also need to understand PHP, but you can get the scripts running without an in-depth understanding. I know, as I didn’t understand PHP, but I got them running!
Once I had got the scripts up and running, I took the opportunity to learn PHP, as it was a language that I had never used before. If you have used almost any other language (C++, Java etc.) you won’t have any problems learning PHP. Of course, it’s slightly different as you are now dealing with a server side language, rather than a general pupose language. Still a quick google of any issues that you are unsure of usually brings up a solution.
Once I had got to grips with PHP (but I am still far from expert) I decided to start changing things for myself.
If you take a look at http://www.graham-kendall.com/publications/, you see the end result. It is still very much Work In Progress (in that many of my publications are still not correct as I need to overhaul my bibTeX file) but the things to take a look at, in the context of the main message of this blog, are:
- As well as displaying all publications, you can view just journals, just conference proceedings, just book chapters etc.
- If you look around my site, you can see that it is possible to view different types of papers (e.g. hyper-heuristics, sports scheduling, cutting and packing etc.). This is done by simply searching through the title, abstract and keywords and, if a match is found, then that publication is displayed.
- Each publication leads to a separate page where you can download the file (assuming a PDF is available), look at the abstract, go directly to where the publication is help (via the doi) etc.
I still want to do some work on the scripts, but at least I now have the ability to do almost anything I want. The main effort at the moment though is to get the underlying bibTeX correct, so that all my publications display correctly.
But, once it is all up and running, then the only maintenance required is to keep the bibTeX file up to date.
So, thank you Andreas. You provided the inspiration to enable me to do something that I have wanted to do for ages.