Creating Presentations with LaTeX

This spring/summer, I'm giving quite a few talks at conferences, and I have a number of my own clients that I'm writing new training materials for. That's a lot of content in total and so, inspired by Dave's article about LaTeX and powerdot (and with some help from Dave himself!), I've started to write my own presentations this way too.

Getting started was a struggle, I've never really used anything like it before and if there's one thing LaTeX doesn't do well, it's error messages! The blog post I linked above has a sample presentation in it and I used that as my starting point. The source code goes in a file with a ".tex" suffix, e.g. presentation.tex. I then installed the texlive-latex-extra, latexmk, vim-latexsuite, latex-fonts-recommended and texlive-fonts-extra packages from aptitude, and generated a PDF by running:

latexmk -f -pdfps presentation.tex

This creates a bunch of files including presentation.pdf, which shows the output of my creation. Dave's post has some great tips for coping with LaTeX and since it's actually really widely used in academia, google turned up results including examples for everything I didn't know how to do. As a vim user, the LaTeX-suite plugin has been really handy (well, it is now I know what to do with it!) and the code folding makes it much easier to handle presentations which can easily run to thousands of lines. I'll blog more about the plugin and my slides themselves another time, but for getting started, the tools above were all I needed.

The biggest risk is breaking your markup and having it not compile, which happened a lot right at the start. My tips are to check your file into source control very regularly (it's just text, it's perfect for source control!), and to rebuild your PDF every couple of slides so you'll realise quickly when you've broken something. Since I'm a developer, I'm used to source control and although PHP isn't compiled, it's not a step too far to include this in the process, so I found it easy to move over to working this way. I wrote 100+ slides last week, and I simply wouldn't have been able to work at that rate with mainstream presentation software, since I don't use a mouse.

2 thoughts on “Creating Presentations with LaTeX

Leave a Reply

Please use [code] and [/code] around any source code you wish to share.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>