Happy Slides How to stop using Powerpoint and be Happy

I am Developer, and I hate Powerpoint like apps. How to do a slides better !?
s

# Why 100 % cases I need to do slides for knowledge sharing or decision making or any of 50 shades like meetings. Usually, after meetings, you need to create extra documentations like wiki or git hub pages or confluence for my primary goal was not to do work twice. # Pain points 80 % of my slides is code or diagrams and schemas but cat pictures still a crucial part of success. ## Visual editors I am a disabled person, and for me, interaction with a super cool visual editor for diagrams or crazy slides is a real pain ## Versioning collaboration and changes I want to work with slides or narrative docs together with other colleagues and keep a change log and versions. Google slides have excellent collaborative editing still version control is a big trick. ## Publish We want to have a slide as a web page. MD file, pdf, etc. etc. # Slides as text, diagrams as a text. like source code. Even this page is just a text markup rendered by the browser, and even more, it is just MD file rendered by hexo to the static page. The idea is super simple - keep your slides as a text. A long time ago a was big fun and adept of org-mode for emacs. I still believe that org files are one of the best ways to work with complex documents. I noticed that my team and colleagues were not so excited about emacs. I have taken the best from org and found tooling that helps everybody to collaborate. ## Revealjs [https://revealjs.com/#/] - is HTML framework for slides. So your slides are a single HTML page. You get all you need — a lot of effect themes and navigation. The easiest way is to go and play a bit with a demo. Plugins allow adding a code highlight and a lot of advanced features. ## But we want markdown [vscode-reveal](https://marketplace.visualstudio.com/items?itemName=evilz.vscode-reveal). It is a visual studio code plugin. That makes awesome side by side visualization and publishing MD to HTML or pdf. ![](https://github.com/evilz/vscode-reveal/raw/master/images/demo2.0-bis.gif) ## The diagrams as a text. So it unreal to edit a png or jpg when you need to change a tope. It is a pain to draw and align all stuff by your self. I want a text! ### Plant [Plant UML](http://plantuml.com/) majority of standard UML and not only UML cases. It even allows a UI mocks and wireframes to be described as a plain text Rendered as ![p](http://s.plantuml.com/imgw/salt-ktciuc8s.png) Or
1
2
3
4
5
6
7
8
9
10
@startuml
(*) --> "check input"
If "input is verbose" then
--> [Yes] "turn on verbosity"
--> "run command"
else
--> "run command"
Endif
-->(*)
@enduml

One more big benefit that a lot of IDE has good integration with a plant and even could generate plant from your code!

java generator

As far as we edit our slide in vs code. plant vscode. Cool news that even gitlab have embedded plantUML support.

GraphViz

One more generic tool for complex graph visualization. Used as a back format for many dependencies visualization tools.
It allows you to build crazy structures.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
digraph g1 {
layout="circo";
node [shape = doublecircle]; N4 N6;
node [shape = circle];
N0 -> N1 [ label = "{1,0}"];
N1 -> N2 [ label = "{1,0}"];
N2 -> N3 [ label = "{1,0}"];
N3 -> N4 [ label = "{1,0}"];
N4 -> N5 [ label = "{1,0}"];
N5 -> N6 [ label = "{1,0}"];
N6 -> N0 [ label = "{1,0}"];

N0 -> N4 [ label = "{1,0}"];
N1 -> N5 [ label = "{1,0}"];
N2 -> N6 [ label = "{1,0}"];
N3 -> N0 [ label = "{1,0}"];
N4 -> N1 [ label = "{1,0}"];
N5 -> N2 [ label = "{1,0}"];
N6 -> N3 [ label = "{1,0}"];
}

Visual studio code plugin.

Ditaa

More free art ditaa . Turn ascii to images.

As an opposite bonus asciiflow - allow to draw with ascii and save an image. It works cool together with a ditaa.

Some markdown preprocessors allow you to keep all as a one big text file and replace a diagramming code with an image. In another case, you should find a way to keep versions of diagram text and generate assets that will be a part of the slides.

Solution

So my solution is simple. Git + VScode with (reveal , plantUML, graphviz) = All in a text all under control.
For publishing, you could use Dropbox or GitHub pages.

You could get even more.

With a diagram as a text, you could generate visualization by scripts from data and remember that code is data too. It is a subject for next time.

See you … Love the text and people ))