{{- if eq $lang "fr" -}}Conférences{{- else -}}Conferences{{- end -}}
{{- if eq $lang "fr" -}} Parallèlement à ce blog, j'aime transmettre ma passion pour l'informatique en général dans des conférences. {{- else -}} Alongside this blog, I enjoy sharing my passion for computer science in general through conferences. {{- end -}}
{{- if eq $lang "fr" -}} Note: vous pouvez me solliciter pour des meetups et des BBLs pour tous les talks que vous trouverez ci dessous. Je suis également disponible pour des enregistrements de podcast sur ces sujets. {{- else -}} Note: You can contact me for meetups and Brown Bag Lunches (BBLs) for any of the talks you'll find below. I'm also available for podcast recordings on these topics. {{- end -}}
{{ if eq $lang "fr" }}Les supports de présentation{{ else }}Presentation Materials{{ end }}
{{- if eq $lang "fr" -}} Pratique pour suivre en live ou retrouver les liens 😉 {{- else -}} Handy for following live or finding links 😉 {{- end -}}
{{/* Active talks grid */}}{{ index .title $lang | default (index .title "fr") }}
{{- if .cospeaker -}}{{ if eq $lang "fr" }}avec{{ else }}with{{ end }} {{ if .cospeaker_url }}{{ .cospeaker }}{{ else }}{{ .cospeaker }}{{ end }}
{{- end -}}{{ if eq $lang "fr" }}Présenté {{ $count }}x{{ else }}Presented {{ $count }}x{{ end }}
{{- end -}}{{ if eq $lang "fr" }}Talks précédents{{ else }}Previous Talks{{ end }} {{- $inactiveCount := 0 -}} {{- range $data.talks -}} {{- if and .slides (not (in $activeTalkIDs .id)) -}} {{- $inactiveCount = add $inactiveCount 1 -}} {{- end -}} {{- end -}} {{ $inactiveCount }} {{ if eq $lang "fr" }}{{ if eq $inactiveCount 1 }}sujet{{ else }}sujets{{ end }}{{ else }}{{ if eq $inactiveCount 1 }}topic{{ else }}topics{{ end }}{{ end }}
{{ index .title $lang | default (index .title "fr") }}
{{- if .cospeaker -}}{{ if eq $lang "fr" }}avec{{ else }}with{{ end }} {{ if .cospeaker_url }}{{ .cospeaker }}{{ else }}{{ .cospeaker }}{{ end }}
{{- end -}}{{ if eq $lang "fr" }}Présenté {{ $count }}x{{ else }}Presented {{ $count }}x{{ end }}
{{- end -}}{{ if eq $lang "fr" }}Liste des conférences{{ else }}Conference List{{ end }}
{{- if eq $lang "fr" -}} J'ai été (ou vais bientôt être) speaker sur les événements suivants : {{- else -}} I have been (or will soon be) a speaker at the following events: {{- end -}}
{{/* Group events by year */}} {{- $eventsByYear := dict -}} {{- range $data.events -}} {{- $y := (time .date).Year | string -}} {{- $existing := index $eventsByYear $y | default slice -}} {{- $eventsByYear = merge $eventsByYear (dict $y ($existing | append .)) -}} {{- end -}} {{/* Sort years descending */}} {{- $sortedYears := sort $years "value" "desc" -}} {{- $recentYearCount := 2 -}} {{/* Recent years (shown directly) */}} {{- range $i, $year := $sortedYears -}} {{- if lt $i $recentYearCount -}} {{- $yearEvents := index $eventsByYear $year -}} {{- $count := len $yearEvents -}}{{ $year }} {{ $count }} {{ if eq $lang "fr" }}{{ if eq $count 1 }}événement{{ else }}événements{{ end }}{{ else }}{{ if eq $count 1 }}event{{ else }}events{{ end }}{{ end }}
{{ .event }} {{- if $isUpcoming }} {{ if eq $lang "fr" }}à venir{{ else }}upcoming{{ end }} {{- end -}}
{{ index $talk.title $lang | default (index $talk.title "fr") }}
{{- if .note -}}{{ index .note $lang | default (index .note "fr") }}
{{- end -}}{{ if eq $lang "fr" }}Années précédentes{{ else }}Previous Years{{ end }} {{ $olderEvents }} {{ if eq $lang "fr" }}{{ if eq $olderEvents 1 }}événement{{ else }}événements{{ end }}{{ else }}{{ if eq $olderEvents 1 }}event{{ else }}events{{ end }}{{ end }}
{{ $year }} {{ $count }} {{ if eq $lang "fr" }}{{ if eq $count 1 }}événement{{ else }}événements{{ end }}{{ else }}{{ if eq $count 1 }}event{{ else }}events{{ end }}{{ end }}
{{ .event }} {{- if $isUpcoming }} {{ if eq $lang "fr" }}à venir{{ else }}upcoming{{ end }} {{- end -}}
{{ index $talk.title $lang | default (index $talk.title "fr") }}
{{- if .note -}}{{ index .note $lang | default (index .note "fr") }}
{{- end -}}{{- if eq $lang "fr" -}} Note : les talks disponibles en replay sont également souvent disponibles sur mon instance PeerTube personnelle {{- else -}} Note: Talks available as replays are usually also available on my personal PeerTube instance {{- end -}}
{{ if eq $lang "fr" }}Organisateur{{ else }}Organizer{{ end }}
-
{{- range $data.organizer -}}
- {{ index .description $lang | default (index .description "fr") | markdownify }} {{- if .article }} ({{ if eq $lang "fr" }}j'en parle dans cet article{{ else }}I talk about it in this article{{ end }}){{- end -}} {{- end -}}