diff --git a/content/en/about.md b/content/en/about.md index 33ba493..2cc9f33 100644 --- a/content/en/about.md +++ b/content/en/about.md @@ -14,14 +14,6 @@ Hello! `nemunaire` here, aka Pierre-Olivier; I am an engineer (and passionate ab {{}} Currently **entrepreneur** in various businesses. Previously worked as **devops** for [Novaquark](http://novaquark.com), prior to worked as **embedded software engineer** at [Qarnot computing](https://qarnot.com/), then **Chief Information Security Officer** and **senior software architect** at [Qarnot computing](https://qarnot.com/). -{{}} -For 10 years, I taught students of the [*System, Network and Security*](https://srs.epita.fr/) major at [Epita](http://www.epita.fr/): preparing lectures, lab sessions and projects, teaching in class, grading individually, on the topics of [*advanced Linux system administration*](https://adlin.nemunai.re) and [*light virtualization*](https://virli.nemunai.re/) (containers, Docker, LXC, Kubernetes, ...) as well as the related *Linux Internals* (namespaces, cgroups, capabilities, ...). -{{
}} -I was also the project lead supervising the yearly design of a [forensic challenge](https://fic.srs.epita.fr/) for the [International Cybersecurity Forum](https://www.forum-fic.com/)/[European Cyber Cup](https://european-cybercup.com): project planning, coordinating the assistants in charge of follow-up, organizing defenses and mock challenges, developing [the secure platform](https://git.nemunai.re/fic/server), coordinating the students in charge of the infrastructure and the competition organizers, up to setting up and running the challenge on site. - -{{}} -Following my light virtualization courses, in April 2022 I published the book [*Conteneurs et technologies du DevOps*](https://alpo.tf/livres/2493960009/). It gathers more than 7 years of teaching container usage: each chapter uncovers new aspects of the technology and builds up skills through challenges of increasing difficulty, from creating and managing containers in a company to how they work at the heart of the Linux kernel. - {{}} After 5 years in [Epita](http://epita.fr/), in 2014, I am a graduate engineer! I was following the [***System, Network and Security***](https://srs.epita.fr/) classes. {{
}} diff --git a/content/en/talks.md b/content/en/talks.md index c33dfb6..a0fe37e 100644 --- a/content/en/talks.md +++ b/content/en/talks.md @@ -7,17 +7,25 @@ menu: weight: 40 --- -Here are the slides I used as support for my presentations: +Here are slides I used as support to my presentations: -{{< 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 >}} +* [[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) + + +## Teaching + +In [Epita](http://www.epita.fr/), I'm responsible for teaching containers usage and plumbing in a 15 hours course called [*light virtualization*](https://virli.nemunai.re/) and for [*ADvanced LINux administration*](https://adlin.nemunai.re). + +Moreover, I coach students to create [an annual CTF](https://fic.srs.epita.fr/), at [FIC]. +And also lead the related CTF [server developments](https://git.nemunai.re/fic/server). + +[FIC]: https://www.forum-fic.com/ diff --git a/content/fr/a-propos.md b/content/fr/a-propos.md index bbc1660..7b3c344 100644 --- a/content/fr/a-propos.md +++ b/content/fr/a-propos.md @@ -16,14 +16,6 @@ Bonjour ! ici `nemunaire`, alias Pierre-Olivier ; je suis ingénieur (et pas {{}} Aujourd'hui **entrepreneur**. J'ai travaillé avant comme **devops** pour [Novaquark](http://novaquark.com), avant d'être **ingénieur système/logiciel embarqué** chez [Qarnot computing](https://qarnot.com/), puis **responsable de la sécurité des systèmes d'information** et **architecte logiciel sénior** chez [Qarnot computing](https://qarnot.com/). -{{}} -Durant 10 ans, j'ai enseigné auprès des étudiants de la majeure [*Systèmes, Réseaux et Sécurité*](https://srs.epita.fr/) de l'[Epita](http://www.epita.fr/) : préparation des cours, TP et projets, face-à-face pédagogique, corrections et notation individuelle, sur les thèmes de l'[*administration système Linux avancée*](https://adlin.nemunai.re) et de la [*virtualisation légère*](https://virli.nemunai.re/) (conteneurs, Docker, LXC, Kubernetes, ...) ainsi que des *Linux Internals* associés (namespaces, cgroups, capabilities, ...). -{{
}} -J'ai également été chef de projet encadrant la conception annuelle d'un [challenge de forensic](https://fic.srs.epita.fr/) pour le [Forum International de la Cybersécurité](https://www.forum-fic.com/)/[European Cyber Cup](https://european-cybercup.com) : planification du projet, coordination des assistants en charge du suivi, organisation des soutenances et des challenges blancs, développement de [la plateforme sécurisée](https://git.nemunai.re/fic/server), coordination des étudiants en charge de l'infrastructure et des organisateurs de la compétition, jusqu'à l'installation et l'animation du challenge sur place. - -{{}} -Dans le prolongement de mes cours sur la virtualisation légère, j'ai publié en avril 2022 le livre [*Conteneurs et technologies du DevOps*](https://alpo.tf/livres/2493960009/). Il rassemble le travail de plus de 7 années d'enseignement à l'utilisation des conteneurs : chaque chapitre fait découvrir de nouveaux aspects de la technologie et permet de développer ses compétences par des défis à la difficulté croissante, de la création et la gestion des conteneurs en entreprise jusqu'à leur fonctionnement au cœur du noyau Linux. - {{}} Après 5 ans d'études à l'[Epita](http://epita.fr/), j'ai, en 2014, obtenu mon diplôme d'ingénieur ! J'ai suivi les enseignements de la majeure [***Systèmes, Réseaux et Sécurité***](https://srs.epita.fr/). {{
}} diff --git a/content/fr/conferences.md b/content/fr/conferences.md index 1418966..3852461 100644 --- a/content/fr/conferences.md +++ b/content/fr/conferences.md @@ -9,17 +9,23 @@ aliases: - talks --- -Voici les supports des conférences que j'ai données : +Voici les supports des conférences que j'ai données : -{{< 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 >}} +* [[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) + + +## Enseignement + +À l'[Epita](http://www.epita.fr/), j'ai enseigné durant 10 ans l'usage des conteneurs et leur fonctionnement technique au sein du noyau Linux dans un cours de 24 heures nommé [*Virtualisation légère*](https://virli.nemunai.re/) ainsi que l'[*ADministration LINux avancée*](https://adlin.nemunai.re). + +D'autre part, j'encadre le projet de fin d'études des étudiants de la majeure SRS pour lequel ils conçoivent un [challenge de forensic](https://fic.srs.epita.fr/) pour l'[European Cyber Cup](https://european-cybercup.com), présenté au [Forum International de la Cybersécurité](https://www.forum-fic.com/). +À ce titre, je maintiens et coordonne les développements de [la plateforme de validation](https://git.nemunai.re/fic/server). diff --git a/layouts/shortcodes/talk.html b/layouts/shortcodes/talk.html deleted file mode 100644 index 73e21b2..0000000 --- a/layouts/shortcodes/talk.html +++ /dev/null @@ -1,34 +0,0 @@ -{{ $_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 deleted file mode 100644 index f7fb6bd..0000000 --- a/layouts/shortcodes/talks.html +++ /dev/null @@ -1,4 +0,0 @@ -{{ $_hugo_config := `{ "version": 1 }` }} -
- {{ .Inner }} -
diff --git a/static/css/custom.css b/static/css/custom.css index ca2df0e..89e211b 100644 --- a/static/css/custom.css +++ b/static/css/custom.css @@ -248,40 +248,3 @@ 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 deleted file mode 100644 index fba4258..0000000 Binary files a/static/talks/covers/2fa.jpg and /dev/null differ diff --git a/static/talks/covers/autohebergement.jpg b/static/talks/covers/autohebergement.jpg deleted file mode 100644 index 73b9bbe..0000000 Binary files a/static/talks/covers/autohebergement.jpg and /dev/null differ diff --git a/static/talks/covers/happyDomain_golang_meetup_2024.jpg b/static/talks/covers/happyDomain_golang_meetup_2024.jpg deleted file mode 100644 index ba06b4d..0000000 Binary files a/static/talks/covers/happyDomain_golang_meetup_2024.jpg and /dev/null differ diff --git a/static/talks/covers/happydomain_fosdem_2024.jpg b/static/talks/covers/happydomain_fosdem_2024.jpg deleted file mode 100644 index 5bb3c2d..0000000 Binary files a/static/talks/covers/happydomain_fosdem_2024.jpg and /dev/null differ diff --git a/static/talks/covers/happydomain_osx_2023.jpg b/static/talks/covers/happydomain_osx_2023.jpg deleted file mode 100644 index f539ca8..0000000 Binary files a/static/talks/covers/happydomain_osx_2023.jpg and /dev/null differ diff --git a/static/talks/covers/lresw23-moenia.jpg b/static/talks/covers/lresw23-moenia.jpg deleted file mode 100644 index da10c30..0000000 Binary files a/static/talks/covers/lresw23-moenia.jpg and /dev/null differ diff --git a/static/talks/covers/qtechnote_dns.jpg b/static/talks/covers/qtechnote_dns.jpg deleted file mode 100644 index b75659c..0000000 Binary files a/static/talks/covers/qtechnote_dns.jpg and /dev/null differ diff --git a/static/talks/covers/qtechnote_docker.jpg b/static/talks/covers/qtechnote_docker.jpg deleted file mode 100644 index 5642ab2..0000000 Binary files a/static/talks/covers/qtechnote_docker.jpg and /dev/null differ diff --git a/static/talks/covers/qtechnote_grpc.jpg b/static/talks/covers/qtechnote_grpc.jpg deleted file mode 100644 index 72fb5c4..0000000 Binary files a/static/talks/covers/qtechnote_grpc.jpg and /dev/null differ diff --git a/static/talks/covers/starinux_dns_2025.jpg b/static/talks/covers/starinux_dns_2025.jpg deleted file mode 100644 index eac64b3..0000000 Binary files a/static/talks/covers/starinux_dns_2025.jpg and /dev/null differ