Beamer vs reveal.js for math presentations

I've used Beamer to prepare all my slide-based math presentations, and so does virtually everyone else. It works pretty well with minimal effort. It even has sensible defaults to dissuade users from creating walls of text, although I've definitely seen my share of walls of text.

Recently there has been a craze of JavaScript-powered presentation frameworks, and I decided to try reveal.js. To get them to work, you have to drop a bunch of files in a directory, edit the presentation HTML file, and open it with a browser. The browser will then run some Javascript and display the presentation. The easiest way to see a demo is just visit the link I just gave.

In my trial I created a few presentations with Reveal to see whether it could replace Beamer. Some of you are probably asking why I would even want to do that, given that Beamer works so well. Actually, I was just curious. However, I also found that Beamer is difficult to tweak when the need arises. Modifying themes and customizing the layout of slides is not easy. That's not Beamer's fault. Pretty much all of LaTeX follows a simple pattern: if something doesn't work, look on StackExchange. Seriously: TeX is a baroque language. On the other hand, I somehow doubt anything could ever replace it. The annoyances that do occur are minor, it is practically bug-free, and it is so stable that I'm sure the source files I've already created will still compile into identical PDFs long after the heat death of the universe.

So, what's my conclusion with Reveal? To start, it is much easier to change the look and feel of Reveal assuming you are comfortable with CSS and HTML. The presentations with Reveal also look a lot nicer, especially compared to some of Beamer's themes. There are more slide options and more ways to present material. For example, slides move horizontally but there are subslides that go vertical. These subslide can contain additional information that could be presented in case an audience is especially interested in something, but could also be skipped without breaking the general presentation flow.

Would I recommend Reveal for math? Despite its style advantages, I'd say no. For one, if you actually want to use math in your presentation, you have to download MathJax yourself and link it to Reveal. You could use a CDN, but then you'd need the internet.

Also, Reveal is rendered on the fly using a folder of files. Therefore, you need to use your own computer as opposed to a conference computer, or put it on a website. You can render a Reveal presentation to a PDF, but it looses all the interactive features, including incremental revealing of slide contents. Beamer on the other hand renders PDF slides with transitions.

Reveal cannot match LaTeX's truckload of cool drawing packages like TikZ. Finally, I don't really see much sense in keeping a bunch of presentation source files written for a Javascript framework that probably won't last very long compared to LaTeX and Beamer.

So, while Reveal is a cool piece of software, it really can't compare to the basic usability and reliability of LaTeX, and you should really only use it for complex math presentations if you don't mind doing a lot of extra work. And if you need to draw nice commutative diagrams, forget Reveal.

2 Comments

  • Elizabeth Henning says:

    Your comparison is really PDF slides vs web slides. If your default is doing presentations with PDF slides, then web slides are going to seem inconvenient. But this works the other way too. A really big disadvantage of using PDF slides, especially local PDF slides, is the lack of inclusiveness for the audience. If they're not online, the audience can't access the slides during the talk, and PDFs are much less amenable to viewing on any device or to customizing for disability/accessibility issues.

    • Jason Polak says:

      Thanks for the comment! You make some good points. However, my comparison is mainly from the perspective of trying to actually make a presentation. There is no "seem" about the inconvenience of HTML slides from my perspective. They are just too inconvenient. That is true, even though I agree they have advantages. And in my comparison, I was only considering using Reveal locally.

      Moreover, in the style of talk that I like to give, I do not want the audience accessing the presentation on their phones while I talk. In fact, if using offline presentations prevents that, I am happy about that. Most audience members should not be fiddling with their phone. There are plenty of ways to include an audience that does not involve succumbing to the latest, often needless technologies. That is just my presentation style, though others are of course free to choose other styles.

Leave a comment

Fields marked with * are required. LaTeX snippets may be entered by surrounding them with single dollar signs. Use double dollar signs for display equations.