diff --git a/content/en/talks.md b/content/en/talks.md index 5f43200..c33dfb6 100644 --- a/content/en/talks.md +++ b/content/en/talks.md @@ -7,15 +7,17 @@ menu: weight: 40 --- -Here are slides I used as support to my presentations: +Here are the slides I used as support for my presentations: -* [[FR] DNS, the hidden backbone of the Internet](/talks/starinux_dns_2025.pdf) ([Atelier Starinux](https://www.starinux.org/?p=1329)) -* [[FR] Embedding a web front-end in your Go binary: happyDomain example](/talks/happyDomain_golang_meetup_2024.pdf) [(code)](https://git.nemunai.re/nemunaire/meetup-golang-2024-demo) ([Meetup Golang Paris](https://www.meetup.com/fr-FR/golang-paris/events/301188194/)) -* [[EN] Let's make people love domain names again](https://blog.happydomain.org/files/happyDomain%20FOSDEM%202024.pdf) ([FOSDEM 2024](https://fosdem.org/2024/schedule/event/fosdem-2024-2316-let-s-make-people-love-domain-names-again/)) -* [[FR] How can we make the words DNS and simplicity compatible?](https://blog.happydomain.org/files/happyDomain%20Open%20Source%20Experience%202023.pdf) ([Open Source Experience 2023](https://www.opensource-experience.com/event/#conf-13898)) -* [[FR] Rethinking web platform security](/talks/lresw23-moenia.pdf) ([LRE Summer Week](https://www.lre.epita.fr/news_content/summer_week_23/)) -* [[FR] Strong authentication](/talks/2fa.pdf) (*cryptoparty* GConfs) -* [[FR] Self-Hosting](/talks/autohebergement.pdf) (*cryptoparty* GConfs) -* [[FR] DNS overview](/talks/QTechNote%20DNS.pdf) (QTechNote) -* [[FR] Docker hands-on](/talks/QTechNote%20Docker.pdf) (QTechNote) -* [[FR] gRPC/Protobuf overview](/talks/QTechNote%20%231.pdf) (QTechNote) +{{< talks >}} +{{< talk title="DNS, the hidden backbone of the Internet" lang="fr" year="2025" url="/talks/starinux_dns_2025.pdf" img="/talks/covers/starinux_dns_2025.jpg" event="Atelier Starinux" eventurl="https://www.starinux.org/?p=1329" >}} +{{< talk title="Embedding a web front-end in your Go binary: happyDomain example" lang="fr" year="2024" url="/talks/happyDomain_golang_meetup_2024.pdf" img="/talks/covers/happyDomain_golang_meetup_2024.jpg" event="Meetup Golang Paris" eventurl="https://www.meetup.com/fr-FR/golang-paris/events/301188194/" code="https://git.nemunai.re/nemunaire/meetup-golang-2024-demo" >}} +{{< talk title="Let's make people love domain names again" lang="en" year="2024" url="https://blog.happydomain.org/files/happyDomain%20FOSDEM%202024.pdf" img="/talks/covers/happydomain_fosdem_2024.jpg" event="FOSDEM 2024" eventurl="https://fosdem.org/2024/schedule/event/fosdem-2024-2316-let-s-make-people-love-domain-names-again/" >}} +{{< talk title="How can we make the words DNS and simplicity compatible?" lang="fr" year="2023" url="https://blog.happydomain.org/files/happyDomain%20Open%20Source%20Experience%202023.pdf" img="/talks/covers/happydomain_osx_2023.jpg" event="Open Source Experience 2023" eventurl="https://www.opensource-experience.com/event/#conf-13898" >}} +{{< talk title="Rethinking web platform security" lang="fr" year="2023" url="/talks/lresw23-moenia.pdf" img="/talks/covers/lresw23-moenia.jpg" event="LRE Summer Week" eventurl="https://www.lre.epita.fr/news_content/summer_week_23/" >}} +{{< talk title="Strong authentication" lang="fr" url="/talks/2fa.pdf" img="/talks/covers/2fa.jpg" event="cryptoparty GConfs" >}} +{{< talk title="Self-Hosting" lang="fr" url="/talks/autohebergement.pdf" img="/talks/covers/autohebergement.jpg" event="cryptoparty GConfs" transcript="post/self-hosting/index.md" >}} +{{< talk title="DNS overview" lang="fr" url="/talks/QTechNote%20DNS.pdf" img="/talks/covers/qtechnote_dns.jpg" event="QTechNote" >}} +{{< talk title="Docker hands-on" lang="fr" url="/talks/QTechNote%20Docker.pdf" img="/talks/covers/qtechnote_docker.jpg" event="QTechNote" >}} +{{< talk title="gRPC/Protobuf overview" lang="fr" url="/talks/QTechNote%20%231.pdf" img="/talks/covers/qtechnote_grpc.jpg" event="QTechNote" >}} +{{< /talks >}} diff --git a/content/fr/conferences.md b/content/fr/conferences.md index 2eced2f..1418966 100644 --- a/content/fr/conferences.md +++ b/content/fr/conferences.md @@ -9,15 +9,17 @@ aliases: - talks --- -Voici les supports des conférences que j'ai données : +Voici les supports des conférences que j'ai données : -* [[FR] Le DNS, la colonne vertébrale cachée d’Internet](/talks/starinux_dns_2025.pdf) ([Atelier Starinux](https://www.starinux.org/?p=1329)) -* [[FR] Embarquer un frontal web dans son binaire Go, exemple avec happyDomain](/talks/happyDomain_golang_meetup_2024.pdf) [(code)](https://git.nemunai.re/nemunaire/meetup-golang-2024-demo) ([Meetup Golang Paris](https://www.meetup.com/fr-FR/golang-paris/events/301188194/)) -* [[EN] Let's make people love domain names again](https://blog.happydomain.org/files/happyDomain%20FOSDEM%202024.pdf) ([FOSDEM 2024](https://fosdem.org/2024/schedule/event/fosdem-2024-2316-let-s-make-people-love-domain-names-again/)) -* [[FR] Comment rendre les mots DNS et simplicité compatibles ?](https://blog.happydomain.org/files/happyDomain%20Open%20Source%20Experience%202023.pdf) ([Open Source Experience 2023](https://www.opensource-experience.com/event/#conf-13898)) -* [[FR] Repenser la sécurité des plateformes web](/talks/lresw23-moenia.pdf) ([LRE Summer Week](https://www.lre.epita.fr/news_content/summer_week_23/)) -* [[FR] L'authentification forte](/talks/2fa.pdf) (*cryptoparty* GConfs) -* [[FR] L'autohébergement](/talks/autohebergement.pdf) (*cryptoparty* GConfs) -* [[FR] Le DNS](/talks/QTechNote%20DNS.pdf) (QTechNote) -* [[FR] Prise en main de Docker](/talks/QTechNote%20Docker.pdf) (QTechNote) -* [[FR] Prise en main de gRPC/Protobuf](/talks/QTechNote%20%231.pdf) (QTechNote) +{{< talks >}} +{{< talk title="Le DNS, la colonne vertébrale cachée d’Internet" lang="fr" year="2025" url="/talks/starinux_dns_2025.pdf" img="/talks/covers/starinux_dns_2025.jpg" event="Atelier Starinux" eventurl="https://www.starinux.org/?p=1329" >}} +{{< talk title="Embarquer un frontal web dans son binaire Go, exemple avec happyDomain" lang="fr" year="2024" url="/talks/happyDomain_golang_meetup_2024.pdf" img="/talks/covers/happyDomain_golang_meetup_2024.jpg" event="Meetup Golang Paris" eventurl="https://www.meetup.com/fr-FR/golang-paris/events/301188194/" code="https://git.nemunai.re/nemunaire/meetup-golang-2024-demo" >}} +{{< talk title="Let's make people love domain names again" lang="en" year="2024" url="https://blog.happydomain.org/files/happyDomain%20FOSDEM%202024.pdf" img="/talks/covers/happydomain_fosdem_2024.jpg" event="FOSDEM 2024" eventurl="https://fosdem.org/2024/schedule/event/fosdem-2024-2316-let-s-make-people-love-domain-names-again/" >}} +{{< talk title="Comment rendre les mots DNS et simplicité compatibles ?" lang="fr" year="2023" url="https://blog.happydomain.org/files/happyDomain%20Open%20Source%20Experience%202023.pdf" img="/talks/covers/happydomain_osx_2023.jpg" event="Open Source Experience 2023" eventurl="https://www.opensource-experience.com/event/#conf-13898" >}} +{{< talk title="Repenser la sécurité des plateformes web" lang="fr" year="2023" url="/talks/lresw23-moenia.pdf" img="/talks/covers/lresw23-moenia.jpg" event="LRE Summer Week" eventurl="https://www.lre.epita.fr/news_content/summer_week_23/" >}} +{{< talk title="L'authentification forte" lang="fr" url="/talks/2fa.pdf" img="/talks/covers/2fa.jpg" event="cryptoparty GConfs" >}} +{{< talk title="L'autohébergement" lang="fr" url="/talks/autohebergement.pdf" img="/talks/covers/autohebergement.jpg" event="cryptoparty GConfs" transcript="post/self-hosting/index.md" >}} +{{< talk title="Le DNS" lang="fr" url="/talks/QTechNote%20DNS.pdf" img="/talks/covers/qtechnote_dns.jpg" event="QTechNote" >}} +{{< talk title="Prise en main de Docker" lang="fr" url="/talks/QTechNote%20Docker.pdf" img="/talks/covers/qtechnote_docker.jpg" event="QTechNote" >}} +{{< talk title="Prise en main de gRPC/Protobuf" lang="fr" url="/talks/QTechNote%20%231.pdf" img="/talks/covers/qtechnote_grpc.jpg" event="QTechNote" >}} +{{< /talks >}} diff --git a/layouts/shortcodes/talk.html b/layouts/shortcodes/talk.html new file mode 100644 index 0000000..73e21b2 --- /dev/null +++ b/layouts/shortcodes/talk.html @@ -0,0 +1,34 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +{{ $title := .Get "title" }} +{{ $url := .Get "url" }} +{{ $img := .Get "img" }} +{{/* Open external links (slides, event page, code repo) in a new tab. */}} +{{ $blank := "" }} +{{ if hasPrefix $url "http" }}{{ $blank = " target=\"_blank\" rel=\"noopener\"" }}{{ end }} +
+
+ {{ with $img }} + + {{ end }} +
+

+ {{ $title }} +

+

+ {{ with .Get "event" }} + {{ with $.Get "eventurl" }}{{ $.Get "event" }}{{ else }}{{ $.Get "event" }}{{ end }} + {{ end }} + {{ with .Get "year" }} · {{ . }}{{ end }} +

+
+ {{ with .Get "lang" }}{{ . }}{{ end }} + + {{ with .Get "transcript" }}{{ if eq $.Page.Language.Lang "fr" }}transcription{{ else }}transcript{{ end }}{{ end }} + {{ with .Get "code" }}code{{ end }} + +
+
+
+
diff --git a/layouts/shortcodes/talks.html b/layouts/shortcodes/talks.html new file mode 100644 index 0000000..f7fb6bd --- /dev/null +++ b/layouts/shortcodes/talks.html @@ -0,0 +1,4 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +
+ {{ .Inner }} +
diff --git a/static/css/custom.css b/static/css/custom.css index 89e211b..ca2df0e 100644 --- a/static/css/custom.css +++ b/static/css/custom.css @@ -248,3 +248,40 @@ footer .copyright { .img-title { margin-bottom: 0.75rem; } + +/* Talks page: card deck of conference slides */ +.talk-deck .talk-card .card-img-top { + height: 180px; + width: 100%; + object-fit: cover; + object-position: top center; + border-bottom: 1px solid var(--bs-border-color, rgba(0, 0, 0, .1)); +} + +/* Undo the theme's `.blog-post :first-child { margin-top: 0 }` reset, which + strips the Bootstrap grid vertical gutter from the first card and pulls it up. */ +.blog-post .talk-deck > * { + margin-top: var(--bs-gutter-y); +} + +.talk-deck .talk-action { + display: inline-flex; + align-items: center; + font-size: .8rem; + --bs-btn-padding-y: .2rem; + --bs-btn-padding-x: .6rem; +} + +.talk-deck .talk-action i, +.talk-deck .talk-action svg { + font-size: .85em; + margin-right: .45em; +} + +.talk-deck .talk-card { + transition: transform .15s ease, box-shadow .15s ease; +} + +.talk-deck .talk-card:hover { + transform: translateY(-2px); +} diff --git a/static/talks/covers/2fa.jpg b/static/talks/covers/2fa.jpg new file mode 100644 index 0000000..fba4258 Binary files /dev/null and b/static/talks/covers/2fa.jpg differ diff --git a/static/talks/covers/autohebergement.jpg b/static/talks/covers/autohebergement.jpg new file mode 100644 index 0000000..73b9bbe Binary files /dev/null and b/static/talks/covers/autohebergement.jpg differ diff --git a/static/talks/covers/happyDomain_golang_meetup_2024.jpg b/static/talks/covers/happyDomain_golang_meetup_2024.jpg new file mode 100644 index 0000000..ba06b4d Binary files /dev/null and b/static/talks/covers/happyDomain_golang_meetup_2024.jpg differ diff --git a/static/talks/covers/happydomain_fosdem_2024.jpg b/static/talks/covers/happydomain_fosdem_2024.jpg new file mode 100644 index 0000000..5bb3c2d Binary files /dev/null and b/static/talks/covers/happydomain_fosdem_2024.jpg differ diff --git a/static/talks/covers/happydomain_osx_2023.jpg b/static/talks/covers/happydomain_osx_2023.jpg new file mode 100644 index 0000000..f539ca8 Binary files /dev/null and b/static/talks/covers/happydomain_osx_2023.jpg differ diff --git a/static/talks/covers/lresw23-moenia.jpg b/static/talks/covers/lresw23-moenia.jpg new file mode 100644 index 0000000..da10c30 Binary files /dev/null and b/static/talks/covers/lresw23-moenia.jpg differ diff --git a/static/talks/covers/qtechnote_dns.jpg b/static/talks/covers/qtechnote_dns.jpg new file mode 100644 index 0000000..b75659c Binary files /dev/null and b/static/talks/covers/qtechnote_dns.jpg differ diff --git a/static/talks/covers/qtechnote_docker.jpg b/static/talks/covers/qtechnote_docker.jpg new file mode 100644 index 0000000..5642ab2 Binary files /dev/null and b/static/talks/covers/qtechnote_docker.jpg differ diff --git a/static/talks/covers/qtechnote_grpc.jpg b/static/talks/covers/qtechnote_grpc.jpg new file mode 100644 index 0000000..72fb5c4 Binary files /dev/null and b/static/talks/covers/qtechnote_grpc.jpg differ diff --git a/static/talks/covers/starinux_dns_2025.jpg b/static/talks/covers/starinux_dns_2025.jpg new file mode 100644 index 0000000..eac64b3 Binary files /dev/null and b/static/talks/covers/starinux_dns_2025.jpg differ