The Living Thing / Notebooks : Presentations

Presentations: The quantum of information for all parts of society for which the quantum of information is not a tweet or a facebook status update. Powerpoint presentations are already purported to have various oft-cited defects but these I will not discuss here. In my trade they are a necessary evil.

I’m all about harm minimisation of the evil, starting here with technical harm.

Standard technology

The default options:

  1. Microsoft Powerpoint. Slow, ugly, crashy.
  2. Apple Keynote. Pretty although cheezy.

Both these are a colossal waste of time, adding little to my research while sucking much time into a black hole of trying to give a shit about transitions and fiddly filetype compatibility issues. Both have a terrible mathematical equation typsetting workflow, although Keynote goes beyond terrible to abysmal in this area.

An alternative might re-use the documentation, code, math markup and/or graphs from my actual research articles and code.

Turns out that is not so hard;

Non-shitty presentation technology

  1. Generate a PDF then display the PDF in presentation mode. Actually totally easy, if not that powerful.
  2. HTML slides are incredibly powerful because of all the work that has gone into browser support these days.
  1. The classic is Eric Meyer’s S5, although it’s showing its age.
  2. trendier and more elegant: deck.js …
  3. or reveal.js
  1. DZslides is not my favourite but worth mentioning because it’s used as a knitr example, although in fact you could also use S5 or reveal.js.
R supports DZslides using knitr and pandoc -

Reveal.js and deck.js are the best, for my money. Reveal.js sems better tested and robuster, deck.js is more elegant. I ended up using reveal.js because the online editor makes it easier to collaborate with my non-HTML-nerd colleagues.

  1. Beamer”, the LaTeX slide thingy also works, but I am not a huge fan of LaTeX except for its mathematical markup support, and that is (sufficiently) available in HTML too thanks to Mathjax, so I won’t discuss it much here.
  1. knitr does support beamer slides too
  2. So do various python options, but they are all too clunky or ugly for me to think about any further here. Let’s move on.

Pedagogic considerations

So how do you actually give a good presentation?