this post was submitted on 03 Feb 2024
109 points (95.8% liked)

Open Source

31364 readers
148 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

In the post-COVID world where so much is done remotely I'm utterly amazed with the absence of a decent app for making slides. I recently went through a long and honestly very disappointing journey for finding the one and only app that fits my needs. And... yeah... there is none. Here are the requirements I have, and I can elaborate more on why exactly I need each of these. So, my perfect presentation making must:

  • have interactive UI, where you can drag elements around with your mouse/trackpad;
  • support dragging and dropping images AND videos and repositioning them;
  • support latex (or at least something similar);
  • work on all major OS-s: windows/macos/linux.

That's it. That's all I need. Nothing more, nothing less. I'm even willing to pay money to have the app (not as a subscription though)!

I admit that my needs might not be the most common ones, but I also don't think they're totally unreasonable.

Here are the apps/frameworks I tried, and where they succeeded and failed (all graded on the scale of 5), starting from the most popular ones.


(a) Microsoft PowerPoint (4.0/5):

+ (4/5) has nice interactive UI and allows for good configurability;

+ (5/5) supports all the major video encodings as well as images and GIFs;

? (4/5) does not support latex, but kinda has its own equation engine which is good-enough;

− (3/5) has no linux counterpart;

− comes bundled with the Office Suite, the majority of apps from which I've never used.


(b) Keynote (3.9/5):

+ (4.5/5) has by far the best UI and the collection of tools (perhaps the only thing it lacks is the ability to crop videos);

+ (5/5) same as PowerPoint, supports most of the formats that I typically use;

+ (5/5) has full support for latex equations;

− (1/5) no windows and no linux implementation;

− Mac-only, and the cloud version doesn't support most of the functionality -- so really, fuck you Apple.


(c) Google Slides (2.5/5):

+ (3/5) has a decent UI, but oftentimes feels very clumsy with the overly padded bounding boxes;

? (2/5) supports images and gifs, but fails miserably with videos, which it's only able to embed over youtube (or google drive);

− (0/5) no latex support, although I'm aware that some paid plugins allow for it;

+ (4/5) it's web-based, so works essentially on any platform;

− obviously, because it's web-based, you can't do anything offline.


(d) LaTeX Beamer (3.3/5):

− (0/5) no UI at all, and getting things line just right is quite a headache;

? (3/5) getting videos is kind of a nightmare really, as it compiles into a pdf, and not all pdf engines support videos;

+ (5/5) no comment;

+ (5/5) no comment, although you have to install an 8 GB-worth latex suite on your system, or do it on a website like overleaf.


(e) LibreOffice Impress (3.3/5):

+ (3/5) the UI is very reminescent of the Google Slides, so is kinda clumsy, although you can get used to it I guess;

+ (4/5) kinda of supports all the major image/video formats, but I've had trouble with some of the encodings;

− (1/5) no latex (although third-party plugins can enable it, but they never really worked well for me);

+ (5/5) supported no all major OS-s.


(f) Marp/Slippr/Cafe-Pitch/Reveal.js (3.5/5):

− (0/5) no UI;

+ (5/5) because they all use js-based engine (like electron), you can make any format work with them;

+ (4/5) same here, although some don't have latex out of the box, it's relatively straightforward to enable a MathJax or Katex support;

+ (5/5) takes some npm magin, but you can run it on frigging toaster.


(g) Slides.com (3.5/5):

+ (4/5) it basically uses the proprietary version of the reveal.js as a backend, and adds UI (a bit clumsy to my taste, but works ok);

− (2/5) same as above, but adding videos is paywalled;

+ (5/5) there is a full latex support out of the box;

+ (3/5) web-based, but you'll need an account, and lots of perks are paywalled.


(h) Figma (3.3/5):

+ (5/5) surprisingly good UI (it was made for vector design, so not surprising);

− (2/5) videos paywalled;

+ (3/5) some plugins add latex support, but still quite clumsy;

+ (3/5) has an app and offers a cloud-based web app, but you need to have an account etc.


I also tried other things, like Wolfram Mathematica (yes it can do presentations, although equations look kinda weird), Adobe Illustrator/Inkscape (i mean, why not at this point?), Prezi.com (more fancy, less functional). There are tons of web-based solution (e.g., visme), most of which have a subscription program, which I am not willing to try (I'm ready to pay once, but subscription programs go against my mental stability).

It seems that any solution I try falls short of what I would consider a pretty reasonable list of requirements. At this point I'm mostly using MS PowerPoint, but its lack of linux support really drives me mad. I'm interested to hear your thoughts and your experiences with presentation-making software? What are some of things I should try?

all 43 comments
sorted by: hot top controversial new old
[–] popcar2 25 points 9 months ago* (last edited 9 months ago) (2 children)

Good read, and I think you might want to look at OnlyOffice. It's open source and while it is kindof a shameless Microsoft Office clone, it does seem to support LaTeX when adding equations. Not sure how well it works as I don't use it though. The slides app is pretty decent, the only bone I have to pick with it is that there aren't many animation types and most of them are very basic. Otherwise, might be what you're looking for.

Screenshot of OnlyOffice's LaTeX option

Edit: I just tried it and it seems to work pretty well. Select LaTeX, type your equation, then select professional in the dropdown menu and it'll show the equation.

A LaTeX equation shown in onlyoffice

[–] [email protected] 7 points 9 months ago (1 children)

i tried openoffice, and it's actually quite decent! the video support is kinda clumsy, because it has no preview at all (the video is basically black unless you make a slideshow, and it also has black boundaries make it square, and you have to manually crop it every time). i also don't quite like their pushiness about making an account with them and running things on the cloud. but otherwise looks pretty good. i mean the main advantage over powerpoint i guess is the ability to run on linux (and the fact they're free, which is a huge kudo!)

[–] [email protected] 14 points 9 months ago (1 children)

Not sure if that was a typo but OP mentioned OnlyOffice, not OpenOffice. I don't think OnlyOffice has ever tried to get me to make an account or do things on the cloud. I keep both Only and Libre installed. I like the UI of Only better, but Libre is more functional, at least as far as spreadsheets go which is my main use.

[–] [email protected] 3 points 9 months ago

Sorry yes, i meant onlyoffice. Like i said, it’s indeed quite similar to power point, except for the weirdly looking video embedding. (And of course the fact that it’s free, although i’ve never paid for the powerpoint either :) )

[–] [email protected] 3 points 9 months ago (1 children)

I combine OnlyOffice with its DrawIO plugin. Drawio is also cool standalone app for diagrams I can recycle) that also has tex typesetting for formulas.

Onlyoffice Is a bit annoying sometimes with sizes when going back and forward to powerpoint (common computer for presenting) but is more compatible than libreoffice in my experience. Biggest drawback is the lack of master slide mode, but I typically use the standard one.

[–] [email protected] 1 points 9 months ago

i use draw.io a lot, especially when making schematics for papers!

[–] MajorHavoc 8 points 9 months ago (1 children)

Consider https://remarkjs.com/#2.

Probably doesn't fit your needs, beacuse there's no UI.

But there's no UI, because it's a file format. For me, that's a huge plus. I edit it in my favorite text editor. For visual changes, I dip a tiny bit into CSS and HTML.

It's fast to create, and gives a fantastic cross platform presentation experience.

And it's trivial to serve the slide decks from a website. And the content is automatically available to search engines.

And...my side decks are immortal. They will outlive the language they were written in. Beacuse under the hood, they're just Markdown.

[–] [email protected] 3 points 9 months ago (1 children)

Yes, i tried remark. I often use markdown-based solutions when i give a more code-centric presentation. But for other purposes, when I want to make annotations on the slide, put arrows in the right places, combine shapes to make a fast schematic etc, this just doesn’t cut. Sure, technically, it’s possible to do it with mermaid, etc, but it takes exponentially more time.

[–] MajorHavoc 1 points 9 months ago

Yeah. I've not been able to accept the tradeoffs of a complex file format and dedicated slide editor. So I use a dedicated image editor when I want to get a bit fancier in my graphics.

That said, I'm also privileged to rarely give a presentation that isn't code-centric.

[–] [email protected] 5 points 9 months ago* (last edited 9 months ago) (1 children)

Why does Google Slides only get 4/5 for compatibility?

It literally works on everything. I'm surprised LaTeX scored higher on compatibility, because the install process is heavy (8 GB or more, as you said) and you still have to configure afterwards (e.g. change to XeLaTeX for Unicode support.) IMO, Slides is a 5/5 and LaTeX is a 4/5, for compatibility.

EDIT: Also Google Slides works offline, and you can install it as a PWA by clicking a button in Chrome.

[–] [email protected] 3 points 9 months ago

well... it kind of works offline. all the media (at least he videos) are still kept on the cloud. with latex -- there are literally free online latex services like overleaf which can also sync with a github for offline use. so i'd say latex, despite its heavy install process, is kinda industry standard at this point. besides, you actually don't need the whole 8GB of latex to get started on beamer. you can probably get away with as-required installation, which essentially installs only the packages that you explicitly specify in your document. yes, configuring it might indeed be a bit of a headache at first, but with tools like latexmk etc, it's actually not too bad. and i'd be willing to spend the time to actually tailor the workflow if it had a decent-enough UI and support for videos.

[–] [email protected] 5 points 9 months ago* (last edited 9 months ago)

Do you know about Ipe? https://ipe.otfried.org/

One of my professors makes amazing slides with it. Text uses LaTeX but it can do positioning and drawing you could never dream of with LaTeX unless you’re willing to spend 5 hours writing TikZ per slide (if that’s enough), and it’s a graphical editor. No videos though afaik, since it also creates PDF.

[–] [email protected] 4 points 9 months ago

Might be worth looking at Sozi

http://sozi.guide/en/index.html

It saves the presentation as a giant SVG in an HTML file that you can animate. Should be able to convert latex to SVG and add it in. Not sure about video.

[–] [email protected] 4 points 9 months ago (1 children)
[–] [email protected] 1 points 9 months ago (1 children)

Will definitely give it a try, although from the looks of it the project seems abandoned. The last commit was 5 years ago.

[–] [email protected] 2 points 9 months ago (1 children)

Have not looked at it (and Github won't properly for me right now) but the Github readme had a web link to a newer project of the same author.

[–] [email protected] 1 points 9 months ago

yep, but it's a private repo.

[–] [email protected] 4 points 9 months ago (1 children)

Doesn't Juypter have a presentation mode?

[–] [email protected] 1 points 9 months ago (1 children)

Never actually tried it for presentations. I bet they might have some sort of markdown-parser engine, but again, it will suffer from all the drawbacks of other markdown engines.

[–] [email protected] 1 points 9 months ago

Can't quite remember if it has drag and drop, but the latex support is pretty top notch - especially if you need to do in-line equations.

[–] [email protected] 4 points 9 months ago* (last edited 9 months ago) (1 children)

This reminded me of when Prezi was a thing.

[–] [email protected] 2 points 9 months ago

I still use Prezi, although I'd really like an open source alternaitve.

[–] [email protected] 4 points 9 months ago (1 children)
[–] [email protected] 2 points 9 months ago (1 children)

Native math support i think is the main hurdle when it comes to libreoffice for me. Some of the plug-ins that add this functionality were also causing the app to crash.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago)

Apparently, LibreOffice calls them "OLE Objects", which you insert under Insert→OLE Object→Formula Object. It uses its own syntax for it, and the preview's completely botched compared to what it actually looks like when you exit editing mode. (to rephrase that, the equation is normal after insertion, but when you edit it the preview is very wrong) It doesn't have shortcuts for many things like greek letters and the degree symbol, so you may need to learn compose sequences for these.

[–] [email protected] 3 points 9 months ago* (last edited 9 months ago) (2 children)

I like reveal.js

Sure there isn't an UI in the common sense. Your UI is your text editor. As a benefit you can edit and run it everywhere and commit it to your git repo easily. I personally like using the text editor for everything and not having lots of separate tools for each task, so (4/5) from me on that UI. Maybe you want to consider something like Reveal-MD and just type it in Markdown. Or Asciidoctor and have one single text file that translates into the slides, a webpage, handouts and everything.

I'd use it for sleek and clean slides. Not for computer science 101 with lots of maths proofs and finite-state machines. I'd use LaTeX, TikZ for that, just stay in that ecosystem and use the beamer package.

There are also tools like Sozi

[–] [email protected] 3 points 9 months ago (1 children)

like i mention in one of the comments: UI is a dealbreaker for me. oftentimes i have to make complicated annotations, arrows going from one plot to another, combine shapes to make schematic illustrations. i can do all that in a vector editor, sure, but having it all in one place speeds things up considerably.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago)

Very well. I must have skipped past that. I agree. Using text to code your slideshow and then switching to a graphical diagram editor isn't the perfect match. You probably want both integrated and then either text or UI for both. PlantUML ties into lots of text-based stuff, TikZ into LaTeX and whatever diagram editor an office suite has into the slide show software of said office suite. Once you mix that or use an external vector drawing program, you lose some/lot of the convenience.

[–] [email protected] 3 points 9 months ago

I agree with revealJS, I recommend trying it with org-mode in eMacs with the plugin (plus you also get banner for free)

Alternatively, it also works with Jupyter.

This is what I use for every presentation I need to give.

[–] [email protected] 3 points 9 months ago* (last edited 9 months ago)

Might not have everything, but HedgeDoc (a web-based collaborative markdown editor) has a spreadsheet mode where you can create slideshows / presentations using simple markdown. Its free and self-hostable.

[–] [email protected] 3 points 9 months ago

Got one more for you: https://gossip.ink/
I use it via a docker/podman container I've made for it: https://hub.docker.com/repository/docker/vluz/node-umi-gossip-run/general

[–] [email protected] 3 points 9 months ago (1 children)
[–] [email protected] 1 points 9 months ago (1 children)

This was brought up before and is definitive In my todo list!

[–] [email protected] 1 points 9 months ago

@hayk
Hoooppps, sorry didn't see

[–] [email protected] 3 points 9 months ago (1 children)

Xaringan or typst are great as well

[–] [email protected] 2 points 9 months ago

never tried Xaringan, but from the look of it it's yet another markdown framework. which is splendid, but no UI is a huge dealbreaker for me. otherwise i'm happy to write my own parsing engine or just make presentations in pure html/css/js.

i used typst for papers. their "interpretation" of latex is pretty annoying. they basically tried to reinvent it, and it looks counter intuitive (maybe one could get used to it). otherwise, i don't see how its different from a regular old beamer with no UI, poor support for videos etc.

[–] [email protected] 3 points 9 months ago* (last edited 9 months ago) (1 children)

Did you try Adobe InDesign, and how did it fail you? I believe it's the absolute industry standard for doing any layout stuff, which creating presentations essentially is.

EDIT: Alright, I see. No linux counterpart.

[–] [email protected] 2 points 9 months ago

i did use InDesign a while ago, although not for presentation purposes. the UI is kinda similar to the illustrator, but more tailored to publishing (booklets/posters/books, etc.). I'd imagine making latex (or videos) work in it would be a headache though.

[–] [email protected] 3 points 9 months ago* (last edited 9 months ago)

I am not sure how well they stack up against the competition, as I haven't really used them, but maybe they can hit the sweet-spot:

KDE has an office suite: Calligra. Windows and macOS support seems to be preliminary, what that means in terms of stability/performance, I don't know.

As you also mention Figma working decently for you, you could take a look at Penpot.

In regards to your latex situation, maybe klatexformula, could be something for you. It generates images from latex. I've been pretty happy with it, in tandem with word processors, before fully jumping to latex. It's pretty lightweight, their site does mention it needs a minimal version of latex though, which I don't recall installing when using it, but both texlive, and miktex seem fairly small.

Edit: as others also mention OnlyOffice might also be an option for you.

[–] [email protected] 1 points 9 months ago

At this point I’m mostly using MS PowerPoint, but its lack of linux support really drives me mad.

Considering the community we're in, it's odd that there's not a bigger dealbreaker (mostly kidding, all my job software is proprietary and I just have to suck it up). With the dawn of Office online, the OS shouldn't really an issue anymore, or does the online version lack features you need?

[PowerPoint] comes bundled with the Office Suite, the majority of apps from which I’ve never used.

That's how they get you. You're already paying $X for them, might as well use them. Now that you're used to them, it's hard to justify switching to a different app with an entirely new workflow that may not even have all the features you want.

I’m interested to hear your thoughts and your experiences with presentation-making software?

Not much, but I have used PowerPoint to make the most basic of presentations. It's fine.

I've used all the other popular LibreOffice alternatives (Writer, Calc, Draw). Based on ny experience with Draw (and the UI of all), I'm gonna go out on a limb and say that in general LO is good at handling data and text, and not so great/easy-to-use with graphics.

As for your requirements, 1+2 are very reasonable, almost given for a presentation software—although the videos may narrow down your pool.

3 is where things get uncommon; wanna know how I know you work in STEM? Actually, given that you're clearly making presentations often, and can work remotely, I'm gonna go out on a limb and guess: professor? Then again, you clearly don't shy away from learning computer nerdery and trying new software (incl. Linux), so you might be an engineer who just happens to give a lot of presentations instead.

Back on topic: 3 should be more specific. My understanding of LaTeX is that it's basically a fully-fledged publishing software on its own... or rather, a standard language that publishing softwares can use, similar to how MS Office uses XML behind the scenes everywhere. Your requirement is basically that the software use a specific format for displaying stuff on screen, but the context suggests you just want LaTeX because it supports autoformatting of math equations. Surely most presentation softwares have some way of achieving that without having a full-on LaTeX rendering engine included. I'm guessing you've already tried good ol' Insert>Object>Formula or using LibreOffice's Math to create what you want before copying it to Impress?

Lastly 4 is a doozy. It seems like such a simple request to the non-devs. The unfortunate truth is that for anything more complex than a "Hello World," the program requires multiple pathways to access system libraries and hardware resources, and even then taking into consideration limitations and idiosyncrasies of different hardware architectures. It's not as simple as adding a flag to your compiler. For Mac and Windows that's not an issue because they're getting paid to port and they get more money for doing so, there's financial incentive. For linux devs... Well...

There are two types of Linux devs: the majority, who contribute for fun and donations, do what they do because it helps them achieve their goals and might as well share, or they just genuinely care about giving back to the community. The other type, who there's less of, are the ones who do it for work. They do it because there's a niche customer base who use their software professionally and for specific industry applications; that's where companies like Red Hat come into play. It's rare that you find offerings for more general types of software, like entire office suites.

In other words, we're lucky to have LibreOffice (and any web apps, which have the luxury of being OS agnostic). You want another miracle???

[–] [email protected] -2 points 9 months ago