Files
m1s2-eng-presentation/presentation.md
T

189 lines
5.9 KiB
Markdown
Raw Normal View History

2026-05-11 17:01:10 +02:00
---
2026-06-12 15:04:14 +02:00
title: "Privacy by design: DIY Marp(X) AI presentations without sending data to third parties"
2026-05-11 17:01:10 +02:00
author: R.Viton
2026-06-12 15:04:14 +02:00
description: "Privacy by design: DIY Marp(X) AI presentations without sending data to third parties"
2026-05-11 17:01:10 +02:00
keywords: []
2026-06-12 15:04:14 +02:00
header: "Privacy by design: DIY Marp(X) AI presentations without sending data to third parties"
footer: "2026-06-24"
2026-05-11 17:01:10 +02:00
marp: true
theme: gödel
paginate: true
transition: cover
size: 16:9
lang: de
math: katex
---
2026-06-12 15:04:14 +02:00
<style>
.inline-img {
display: flex;
align-items: center;
gap: .5rem;
}
</style>
2026-05-11 17:01:10 +02:00
<!-- _class: "title-academic" -->
2026-06-24 08:21:38 +02:00
![bg left:35% 250%](./images/title.jpg)
2026-05-11 17:01:10 +02:00
2026-06-12 15:04:14 +02:00
<div class="title">Privacy by design: DIY Marp(X) AI presentations without sending data to third parties</div>
2026-05-20 10:03:58 +02:00
<div class="subtitle">
2026-06-12 15:04:14 +02:00
... and why you should use them too!
2026-05-20 10:03:58 +02:00
</div>
2026-05-11 17:01:10 +02:00
<div class="author">Romane Viton</div>
2026-06-24 08:21:38 +02:00
<div class="date">2026-06-24</div>
2026-06-12 15:04:14 +02:00
<div class="organization">DFI-203, htw saar</div>
2026-05-11 17:01:10 +02:00
---
2026-06-12 15:04:14 +02:00
# A few **questions** first
* Who here would consider themselves a **developer** ?
* Experience with **code editors / IDEs** ?
* **More comfortable** with editor than with other software ?
* Does **text** just feel faster/more efficient at this point?
2026-05-18 17:04:39 +02:00
---
2026-06-12 15:04:14 +02:00
# <div class="inline-img"> ![w:100](./images/md.png) &nbsp; **Markdown**
## (It's everywhere - you've most likely dealt with it at least once)
```md
# Main title
## Heading 2 - You can make:
2026-05-18 17:04:39 +02:00
2026-06-12 15:04:14 +02:00
- *italic text*
- **bold text**
- ~~strikethrough~~
- lists
- [links](http://example.com)
- ![images](image_name_here)
- > Quotes
```
2026-05-18 17:04:39 +02:00
2026-05-20 13:12:30 +02:00
---
2026-06-12 15:04:14 +02:00
# Why not write **presentations** as text ?
## <div class="inline-img"> Introducing:&nbsp;![h:75](./images/marp.png) (Yuki Hattori)
* Markdown presentation ecosystem
* <span class="inline-img"> Comes as a ![h:75](./images/bash.png) command line tool or a ![h:75](./images/vscode.png) VSCode editor extension
* Technically Just A Web Page:tm: $\implies$ can write HTML/CSS if you want to customize
* MarpX (Paolo Cunha) offers high quality ready-to-use themes
* If you know Markdown/HTML/CSS: <box>No need to learn (yet another) tool!
2026-05-18 17:04:39 +02:00
---
2026-06-12 15:04:14 +02:00
# **Collaborating** with others / keeping track of **versions** ?
> ## "Well surely the editor can't do ***that*** ", I hear you say
* All the presentations are **text-based** versions of a file tree
* We need a tool to maintain **versions** of a text-based file tree...
* <span class="inline-img"> Ever heard of ![w:100](./images/git.png) `git`?
* We already have a **tool** to collaborate on versions of text-based projects!
2026-05-18 17:04:39 +02:00
---
2026-06-12 15:04:14 +02:00
# How do we make sure data is **safe** from big companies?
2026-06-18 14:06:12 +02:00
- There *are* online platforms like GitHub for this (but: this defeats the whole purpose)
- It's 2026, and servers are pretty cheap
- You can set up your own infrastructure in an afternoon
- (less than 100 lines of `docker-compose.yml`)
2026-05-18 17:04:39 +02:00
---
2026-06-12 22:01:42 +02:00
# One step further: hosting services on your **own infrastructure**
2026-06-12 15:04:14 +02:00
- I won't tell you how to set it up (plenty of guides online)
2026-06-18 14:06:12 +02:00
- TL;DR: **<box>On pushing changes $\rightarrow$ Auto-Render and Upload**
2026-06-12 15:04:14 +02:00
- Here are some tools I'm using for my personal setup:
2026-05-18 17:04:39 +02:00
<center>
2026-06-12 15:04:14 +02:00
Requirement | Possible tool
-:|:-
2026-06-12 22:01:42 +02:00
Server|Any VPS will do
2026-06-12 15:04:14 +02:00
Simple software deployment|Docker
HTTPS support|Caddy
Git collaboration|Gitea
Presentation hosting|Git-Pages
Automated deployment|Gitea Actions
2026-05-18 17:04:39 +02:00
</center>
2026-05-11 17:01:10 +02:00
2026-05-21 00:26:17 +02:00
---
2026-06-12 22:01:42 +02:00
# ...isn't this really **expensive**, though?
2026-06-12 15:04:14 +02:00
* Not really!
* Domain name: `~10 EUR/year`
* 24/7 VPS (200GB Storage, 6 vCPUs, 12GB RAM): `6.72 EUR/month`
* Also hosting other services on it and not even at capacity
* I use Contabo, but Hetzner/OVH/Hostinger also work
* *it's all yours, no need to worry about your data being accessed by third parties!*
* Privacy does have a price, but so does exposing your personal data
* **<box>Which one are you willing to pay?**
2026-05-26 08:03:56 +02:00
2026-06-12 22:01:42 +02:00
---
# ...wasn't this supposed to **integrate LLMs** as well?
* It can be done as well!
* Head start when hosting models: `Ollama` (from Ollama Inc.)
* Automatically handles the download and execution of open models locally
2026-06-24 08:21:38 +02:00
* **<box>💡 Works when handling content, since everything is text-based !**
* We can integrate this into our IDE of choice and never have to worry about our data being sent to anyone
2026-06-12 22:01:42 +02:00
---
2026-06-18 14:06:12 +02:00
# **Pros** and **cons** from experience
2026-06-12 22:01:42 +02:00
<div class="multicolumn"><div>
## Pros
- Enhanced privacy
- Very flexible if you know webdev
- No need to leave the traditional dev toolset
2026-06-18 14:06:12 +02:00
- Open-Source community tools, no dependency on a specific company
- Actually know what you're setting up
2026-06-12 22:01:42 +02:00
</div><div>
## Cons
- Steep learning curve
- Hard to collaborate with non-technical people
- Need to be comfortable with text-based tools
- Theme can be limiting if not chosen correctly
</div></div>
---
# **Conclusion**
2026-06-24 08:21:38 +02:00
* Presentation software and AI often feels "out of reach" and only hostable if you're a company and have the resources for it
* It doesn't have to be that way!
* Don't contribute to that narrative $\implies$ <box>De-mystify the topic!
* *Your* data belongs to *you*; own it!
2026-06-12 22:01:42 +02:00
2026-05-12 14:08:39 +02:00
---
2026-05-18 17:04:39 +02:00
<!-- _class: "references" -->
2026-06-12 15:04:14 +02:00
# References
2026-06-24 08:47:42 +02:00
- [Marp Team, Marp (2026) (accessed 2026-06-23)](https://marp.app)
- [Paulo Cunha, MarpX (2026) (accessed 2026-06-23)](https://github.com/cunhapaulo/MarpX)
- [Ollama Inc., Ollama (2026) (accessed 2026-06-23)](https://ollama.com)
- [CommitGo Inc., Gitea Official website (2026) (accessed 2026-06-23)](https://about.gitea.com/)
- (image) https://www.pexels.com/photo/smiling-woman-doing-a-presentation-6476778/ (accessed 2026-06-23)
2026-05-12 14:08:39 +02:00
---
2026-06-12 22:01:42 +02:00
# **This presentation** is online too!
2026-05-12 14:08:39 +02:00
<div class="multicolumn"><div align="center">
## PDF
2026-06-24 08:47:42 +02:00
[![](./images/pdf_qrcode.png)](https://pages.ct.cozytren.ch/m1s2
-eng-presentation/presentation.pdf)
2026-05-12 14:08:39 +02:00
</div><div align="center">
## HTML
2026-06-12 15:04:14 +02:00
[![](./images/html_qrcode.png)](https://pages.ct.cozytren.ch/m1s2-eng-presentation)
2026-05-12 14:08:39 +02:00
</div><div align="center">
## Repository
2026-06-12 15:04:14 +02:00
[![](./images/repo_qrcode.png)](https://gitea.ct.cozytren.ch/romane/m1s2-eng-presentation)
2026-05-12 14:08:39 +02:00
2026-05-21 00:26:17 +02:00
</div></div>
```bash
2026-06-12 15:04:14 +02:00
wget https://pages.ct.cozytren.ch/m1s2-eng-presentation/presentation.pdf
git clone https://gitea.ct.cozytren.ch/romane/m1s2-eng-presentation
2026-05-21 00:26:17 +02:00
```