Présentations

La boucle de feedback du Developer Advocate

Guillaume Laforge   Keynote  /  Random  /  beginner   09:30 - 10:00   Salle Casoar Tadorne Remote

Ce n'est pas juste de l'évangélisme à sens unique ! La Developer Advocacy, c'est au sujet de la boucle de retour, la boucle de feedback! Les Developer Advocates parlent de leurs produits ou services à un publique technique. Mais en tant qu'ingénieurs eux-mêmes, ils sont les alpha testeurs de ces solutions. Les Developer Advocates promeuvent leurs produits, n'est-ce pas ? Faux ! Sa première tâche s'est de représenter les développeurs. Ils aident à façonner les produits, grâce à leurs connaissances terrain. Au-delà de cela, ils représentent leurs communautés, les praticiens techniques, écoutent leurs retours, et influencent les équipes produit afin qu'elles implémentent les besoins de ces communautés.

Dans cette présentation, nous parlerons de différentes approches, outils et solutions qu'un Developer Advocate peut mettre en place, afin de créer une boucle de retour (comme les "friction logs", les "customer empathy sessions", les _"office hours", et d'autres).

Un produit façonné par ses utilisateurs est un meilleur produit. Et des utilisateurs contents sont d'excellents clients, qui iront promouvoir eux-même les produits mis en avant par les Developer Advocates. Alors il est temps de serre la boucle de retour !

Faisons de la magie grâce à Houdini CSS

jean-francois garreau   Conférence  /  Web  /  intermediate   10:00 - 10:50   Salle Chanchardon

La dernière spec de layout CSS vient tout juste de sortir et elle correspond exactement à votre besoin et va permettre de simplifier énormément votre travail quotidien. Seul hic, vous devez supporter tous ces navigateurs qui n’ont pas encore implémentés cette feature !

Comment faire ? Un polyfill javascript ? Ca risque de plomber un peu les performances de votre projet. Ah si seulement de vrais polyfills css existaient !

Et bien c’est un peu la version TL;DR; de Houdini CSS. Venez à ce talk pour voir ce que l’avenir du CSS nous réserve et comment cette spec va nous changer la vie !

WebAssembly côté serveur

Horacio Gonzalez (LostInBrittany)   Conférence  /  DevOps  /  beginner   10:00 - 10:50   Salle Casoar Tadorne

Si vous suivez les tendances du développement Web, vous avez sûrement entendu parler de WebAssembly (Wasm). Wasm est pris en charge par tous les navigateurs modernes, et son nombre croissant d'histoires de réussite semble confirmer qu'il changera le paysage du développement Web dans les années à venir.

Mais, et si je vous disais que WebAssembly pourrait être très intéressant pour vous même si vous est un développeur backend ?Parce que Wasm n'est pas seulement destiné aux développeurs Web, il devient rapidement un acteur sérieux en tant que technologie côté serveur.

Wasm est un format d'instructions binaires pour une machine virtuelle basée sur la pile. Et les environnements d'exécution de Wasm peuvent inclure non seulement des navigateurs, mais aussi un minimum de shells, mobiles, ordinateurs de bureau et appareils IoT.

Des outils comme Wasmer (un runtime WASM côté serveur) et WASI (l'interface système WebAssembly) permettent d'exécuter WebAssembly de manière rapide, évolutive et sécurisée sur toutes les machines. Son potentiel est si élevé que Solomon Hykes, co-fondateur de Docker, a déclaré que si WASM + WASI existait en 2008, ils n'auraient pas eu besoin de construire Docker.

Dans ce talk, nous examinerons l'état du WASM en 2020, du point de vue du serveur. Après une brève introduction à WebAssembly, nous verrons comment Wasmer et WASI vous permettent d'utiliser WASM sur n'importe quelle machine, et nous discuterons d'exemples concrets de la façon dont WebAssembly est une véritable alternative en tant que plate-forme côté serveur.

Certains des cas d'utilisation que nous verrons incluent une plate-forme FaaS, une plate-forme côté serveur pour calculer le code non approuvé, et quelques autres exemples de Wasm remplaçant les machines virtuelles, conteneurs et processus traditionnels.

Osez Devenir Speaker !

Julien Topçu Estelle Landry ☀️   Conférence  /  Méthodologie  /  beginner   11:10 - 12:00   Salle Chanchardon

Devenir Speaker, c’est peut-être quelque chose qui vous fait envie. Mais qu’est ce qui vous empêche d’aller plus loin ?

Sûrement cette petite voix qui vous dit qu’il y a beaucoup de gens plus qualifiés que vous pour parler d’un sujet. Qu’est ce que vous avez à partager de toute manière ? Et puis parler devant une centaine de personnes ce n’est pas pour vous, les gens qui arrivent à faire ça ont certaines prédispositions…

Lors de cette session, nous verrons ensemble que cette petite voix a tort. Vous pouvez le faire ! Et pour bien se lancer, nous verrons les bonnes pratiques de la création d'un talk jusqu'à la réalisation de celui-ci: le choix du sujet, la création du talk et la candidature aux conférences.

Redis du Clé/Valeur au Multi-Modèle

Tugdual Grall   Conférence  /  Architecture  /  intermediate   11:10 - 12:00   Salle Casoar Tadorne

Vous connaissez surement Redis l'une des bases de données NoSQL les plus populaires chez les développeurs. D'ailleurs Vous l'utilisez peut être déjà, mais sûrement de façon simple: en clé/valeur sous forme de cache. Mais Redis est bien plus que cela!

Durant cette présentation vous découvrirez, avec des démonstrations, les structures de données telles que les Hash, Set, Sorted Set, Geospatial, Pub/Sub et Streams, qui nativement vous offrent de nombreuses options pour enrichir simplement vos applications. Voici quelques cas d'usages qui seront décrits lors de la presentation:

  • caching
  • rate-limiting
  • queues
  • leaderboards

Vous verrez également que Redis avec son système d'extensions (les Modules Redis) permet maintenant de gérer plusieurs modèles de données (Structures, Commandes) :

  • Time Series
  • Search
  • Graph
  • Bloom Filter

En résumé une base de donnée polyglotte parfaite pour vos micro-services!

10 leçons sur les 10 plus grosses fuites de données

Adrien PESSU   Quickie  /  Architecture  /  beginner   12:00 - 12:15   Salle Casoar Tadorne

Sony, Über, Yahoo, Adult Friends finder, ces noms vous disent quelque chose? Vous utilisez peut-être les services de ses entreprises. Elles ont aussi un point commun, elles ont subi une fuite de leurs données utilisateurs. Comment les hackers s’y sont pris ? et surtout quelles leçons peut-on en tirer pour le développement de nos applications?

Vis ma vie de bénévole !

Annabelle Koster   Quickie  /  Random  /  beginner   12:00 - 12:15   Salle Chanchardon

Être bénévole, c'est parfois obscure pour nos proches. Ils se demandent pourquoi nous travaillons gratuitement, nous prennent pour mère Teresa, nous imaginent en train de construire une école en plein désert et se demandent si on a le temps de dormir de temps en temps ? 😴

Ce talk a pour objectif de parler du bénévolat, casser les stéréotypes, parler de tous les avantages et ce que cela nous apporte au quotidien (en plus de la fatigue !) :)

Ce talk n'est pas technique, mais que serait le monde des développeurs sans tous ces bénévoles ? Conférences, meetups, BBL, open source… Finalement, chaque développeur a une part de bénévole en lui !

(Format Quickie)

La sécurité dès la conception du projet

David Aparicio   Quickie  /  Random  /  beginner   12:20 - 12:35   Salle Casoar Tadorne

PENSER UNE DÉMARCHE PRÉVENTIVE DÈS LA PHASE DE CONCEPTION D’UN PROJET

La protection des données personnelles ainsi que la sécurité "by design" deviennent des sujets centraux, depuis l'entrée en vigueur du RGPD.

Je présenterai les techniques utilisées et j'aborderai aussi la prise de conscience du management sur ces aspects importants.

En effet, même en étant dans le réseau interne d’un datacenter, nous ne sommes pas à l’abri d’une intrusion. Le risque 0 n'existe pas.

~ Security By Design 101

🏡 Full-remote : comment réussir à travailler en équipe ?

Lise Quesnel   Quickie  /  Méthodologie  /  beginner   12:20 - 12:35   Salle Chanchardon

La tentation est grande ! Être en pyjama toute la journée, s’installer dans le canapé… Lorsque l’on télétravaille, que ce soit par choix ou par obligation, certaines habitudes sont mauvaises pour soi et pour son équipe. Quelles sont les bonnes habitudes à prendre pour que le travail en remote se passe au mieux ? Comment être efficace sur la durée ? Quelles pratiques permettent à une équipe de collaborer à distance ?

Je vous propose de passer en revue quelques clés pour réussir à travailler en équipe tout en étant dans des lieux différents.

Vous verrez que la communication est au cœur du sujet et découvrirez quelques conseils, que l'on soit en télétravail ponctuel ou de longue durée.

3 astuces pour détecter les mensonges

Marie Viley   Quickie  /  Random  /  beginner   13:00 - 13:15   Salle Casoar Tadorne Remote

Qui n'a jamais menti et qui n'a jamais été victime d'un mensonge ?
Vous avez toujours rêvé d’être Dr Cal Lightman de Lie to me ? Faites vos premiers pas vers la détection du mensonge.
Dans ce talk vous découvrirez 3 techniques faciles pour confondre un menteur.

Docz : documentez vos composants React avec clazz 🤩

Benoît Prioux   Quickie  /  Web  /  beginner   13:00 - 13:15   Salle Chanchardon Remote

🚀 Vous venez de coder votre premier composant React ré-utilisable. Bravo 👏…
mais le plus dur c'est de le documenter et surtout de maintenir à jour cette documentation !

Durant ce quickie, je vous propose de découvrir Docz qui permet de livrer une documentation vivante de votre composant. Enfin, je mettrai en perspective Docz par rapport aux autres alternatives comme StoryBook et React Styleguidist.

Identifier les menaces avec Elastic SIEM

David Pilato   Tools-in-action  /  Architecture  /  intermediate   13:20 - 13:50   Salle Chanchardon Remote

Savoir ce qui se passe dans votre environnement est une part importante pour être informé de problèmes de sécurité. Mais comment capturer et visualiser les informations pertinentes ? Un outil open source est mondialement utilisé pour cela : la suite Elastic. Ce talk vous fera découvrir par la pratique comment ingérer les données utiles provenant de votre couche réseau, de vos machines, de vos logs ainsi que le moyen de facilement les visualiser afin d'identifier des patterns et comportements suspicieux. Nous utiliserons notamment pour cela le tout dernier outil SIEM de la suite Elastic.

Nous utiliserons pour cela des données type "piège à miel" :

  • La première étape est de lire, extraire et enrichir la donnée afin d'identifier les attaques, leur source et plus encore.
  • Puis stocker et explorer la donnée collectée pour trouver des indicateurs pertinents.
  • Ce qui nous amènera à créer des visualisations spécifiques à notre besoin - par exemple la localisation de l'attaquant ou des patterns type d'attaque.
  • Puis nous combinerons ces visualisations dans un tableau de bord consolidant l'information.
  • Au final, nous utiliserons l'application SIEM pour voir comment toute cette recherche et analyse est dorénavant grandement simplifiée.

Tout cela en live.

Nous avons fait 11 000 km en voiture pour venir à cette conférence

Kevin Morin Cécilia Bossard   Tools-in-action  /  Web  /  beginner   13:20 - 13:50   Salle Casoar Tadorne

L'état de la planète nous rappelle quotidiennement que le développement durable est malheureusement un sujet d'actualité criant. Et le numérique n'est pas innocent dans l'affaire…

À notre niveau, que pouvons-nous faire pour rendre nos applications plus durables ?

En partant du constat que le site web du JUG Summer Camp consomme l'équivalent en gaz à effet de serre de 11 000 km en voiture, nous mettrons les "mains dans le cambouis" et verrons ensemble quelles pistes d'amélioration privilégier, quels sont les leviers qui ont un réel impact et lesquels sont uniquement du green-washing.

Vous repartirez avec un début de méthodologie pour améliorer vos services numériques et commencer à les rendre plus éco-responsables.

Comment gérer sa culture tech

jean-francois garreau Annabelle Koster   Conférence  /  Méthodologie  /  beginner   14:00 - 14:50   Salle Casoar Tadorne

Vous vous demandez comment créer un environnement stimulant pour vos équipes techniques ? Sans prétendre avoir la solution parfaite, nous vous proposons de partager des bonnes pratiques et solutions que vous pourrez mettre en oeuvre pour animer vos équipes techniques. Nous évoquerons aussi la nécessité de travailler sa communication autour de ces actions pour que la culture soit visible et pertinente.

Docker, Kubernetes & Istio : Tips, tricks & tools

Aurélie Vache Kevin Davin   Conférence  /  Cloud  /  beginner   14:00 - 14:50   Salle Chanchardon

Il ne fait aucun doute que Docker et Kubernetes sont omniprésents dans le nouveau monde des microservices. Mais l'utilisation quotidienne peut être assez tricky.

  • Souhaitez-vous pouvoir créer des images plus petites, plus sûres et plus rapides à compiler ?
  • Avez-vous des difficultés avec les descripteurs Kubernetes YAML et les lignes de commande sans fin ?
  • Quand tout va mal, comment déboguez-vous un conteneur ? Et plusieurs pods ?
  • Souhaitez vous connaître des petits tips et outils pratiques ?
  • Vous êtes-vous demandé combien de temps et d'efforts vous pouviez économiser avec une solution de service mesh et à quoi cela servait réellement ?

Aurélie et Kevin vont vous partager de nombreux conseils et outils, qu'ils utilisent tous les jours dans leurs entreprises, dans l’optique de vous permettre de vous faciliter le quotidien. Et cela améliorera également vos applications !

Les mains dans le cambouis avec WebAssembly

Horacio Gonzalez (LostInBrittany)   Lab  /  Web  /  beginner   14:00 - 17:00   Espace Lab

Vous avez, sans doute, entendu parler de WebAssembly, vous avez peut-être vu des talks, lu des posts, discuté à la machine à café… mais avez-vous déjà essayé ?

Supporté par tous les navigateurs actuels, et avec de plus en plus de success stories , il semble que WebAssembly va changer le paysage du développement web. Cela ne veut pas dire que JavaScript va devenir obsolète, loin de là, mais que tout un éventail de possibilités s'ouvre à nous en tant que devs web. Et maintenant c'est le bon moment pour s'y plonger !

Dans cet atelier, vous allez développer vos premières bibliothèques en WebAssembly, en utilisant différents langages (du TypeScript au bon vieux C), vous allez les utiliser depuis une application web, et vous allez comprendre comment et pourquoi WebAssembly peut vous aider dans vos applications, le tout de la meilleure façon qui soit: en mettant les mains dans le cambouis.

Réception d'image satellite 🛰️ avec un Raspberry

Guillaume Membré   Conférence  /  IoT  /  beginner   14:55 - 15:45   Salle Chanchardon Remote

Vous avez tous déjà vu les images satellites diffusées pendant la météo, mais est-ce que vous saviez que vous pouvez les capter directement du satellite ? Dans ce talk, je vais présenter comment réaliser une station de capture de flux radio émis par les satellites 🛰️ NOAA, en utilisant du matériel grand public comme un Raspberry, un tuner USB et pas mal de DIY 🛠️. Ce type de projet complétera sans problème une station météo à base de sondes de températures et d’Arduino.

🔐CTF 101 : Retour sur le challenge Richelieu de la DGSE 🕵️

Pierre-Yves Aillet Charles-Henri Guérin   Conférence  /  Random  /  beginner   14:55 - 15:45   Salle Casoar Tadorne Remote

Fin mai 2019, la DGSE a lancé sur le site https://challengecybersec.fr/ le challenge Richelieu. Le cardinal était friand de cryptographie à tel point que les archives diplomatiques de la France de cette période sont longtemps restées inaccessibles. Il s’agissait donc d’un CTF (Capture The Flag), un challenge de sécurité comportant différentes énigmes ou défis à relever, tous en lien avec la sécurité informatique.

Challenge accepted! Nous avons relevé le défi. Ainsi jusqu’au 14 juin 2019, date limite du challenge, nous avons sorti nos outils et nous nous sommes mis au travail !

Dans ce talk, nous vous proposons un retour sur cette expérience :

  • les choses que nous avons (ré-)apprises
  • les erreurs, les fausses pistes
  • les outils que nous avons découverts

Functional Error Handling En Kotlin + Arrow

Fedy Salah   Tools-in-action  /  Langages  /  intermediate   16:15 - 16:45   Salle Chanchardon

Une des questions que je commence à poser de plus en plus dans mon métier et que je trouve assez négligée est : En cas d’erreur on fait quoi ?

Je vous parle de cela car je remarque que dans une équipe projet, développeurs comme testeurs, ont tendance à éviter les scénarios alternatifs finissant en erreur. Soit par peur de casser le programme soit en pensant que les utilisateurs ne feront jamais ce genre de manip.

La mauvaise nouvelle c’est qu’en production les utilisateurs peuvent faire tout et n'importe quoi, y compris les manips tordues. Si notre programme n’est pas assez robuste pour gérer ce genre de situation, on peut dire que le jour ou cela arrive on sera “chocolat”.

Les erreurs et les pannes font partie de notre quotidien et nos applicatifs doivent être en mesure de les gérer de façon assez explicite et rigoureuse afin d'éviter les imprévus.

Une façon old school de faire les choses en POO, c’est les exceptions. Cette façon atteint rapidement ses limites du fait que :

  • Les exceptions sont implicites
  • Les exceptions sont couteuses
  • Une exception non catchée pétera au runtime et peut arrêter le fonctionnement du programme.
  • ….

Mais maintenant on ne fait plus de POO on fait de la FP. Est ce possible de gérer nos erreurs de façon fonctionnelle ?

La réponse est oui.

Dans ce tools in action, je vais vous montrer qu’en Kotlin et à l’aide de la lib Arrow on peut implémenter une alternative fonctionnelle de gestion d'erreurs. Vous allez voir que cela rajoute un peu de complexité à notre code. Je vais en conséquent vous montrer que grâce aux concepts de la FP, en allant plus loin, on peut simplifier cette complexité et implémenter une gestion d’erreur simple, explicite et facile à maintenir.

Vert.x Serverless avec Knative & K3S

Louis Tournayre Philippe Charrière   Tools-in-action  /  DevOps  /  beginner   16:15 - 16:45   Salle Casoar Tadorne

La mission que nous avons acceptée : vous expliquer et vous faire comprendre comment vous, en tant que développeur, pouvez déployer une application dans un environnement constitué du duo kubernetes + knative … et en local 😱 Pour corser le tout ,cette présentation sera accompagnée d’une live démo que vous serez en mesure de reproduire de A à Z à la fin du talk grâce à nos scripts, c’est notre cadeau 🎁🎁🎁 !

Dans le détail en 45 minutes chrono vous apprendrez à :

  • Créer un cluster
  • Déployer du Vert.x dessus (+ Kotlin, car c’est plus joli)
  • Les principes de bases: commande pour pour déployer, redéployer, supprimer, outils, trucs et astuces, …
  • Installer Knative serving sur le cluster (et toute la procédure reproductible et Monkey-Proof 🐵)
  • Déployer du Vert.x Serverless sur le cluster et sans yaml ! (grâce à Knative et à sa CLI kn)
  • Activer l’auto-scaling et stresser l’application
  • Déployer du Vert.x Serverless en Blue Green toujours sans yaml
  • Déployer du Vert.x Serverless en Canari encore une fois sans yaml

À la fin vous serez capable de créer la même configuration sur votre poste pour tester vos développements et pour cela vous ne serez pas obligé d’être développeur Yaml.

Jetpack Compose : le futur (proche) du développement Android

Gauthier Poulet   Tools-in-action  /  Mobile  /  beginner   16:45 - 17:15   Salle Casoar Tadorne

Depuis une décennie, les développeurs Android utilisent les mêmes outils pour concevoir leurs interfaces graphiques.

Et pourtant, avec l’arrivée de Kotlin, les langages de programmation ont évolué significativement depuis l’époque Java. Il ne manquait plus qu’à moderniser la conception d’interfaces graphiques : c’est chose faite grâce à Jetpack Compose.

Je vous présenterai la technologie, ses avantages, ses limites actuelles et comment s’y préparer. Le tout sera accompagné d’exemples de code et de témoignages.

Soyez réactif avec RSocket (Reactive Socket)

Adrien Wattez   Tools-in-action  /  Architecture  /  intermediate   16:45 - 17:15   Salle Chanchardon

Rsocket est un nouveau protocole utilisé dans les communications TCP, WebSockets et Aeron. Il est conçu pour dépasser de nombreuses limitations, notamment celles rencontrées avec le protocole HTTP. RSocket s’appuie sur le manifeste réactif et implémente la spécification Reactive-Streams.

Le protocole est activement développé et disponible dans de nombreux langages (Java, Javascript, .NET, GO, C++ et Kotlin). Il est intégré dans Spring Framework depuis la version 5.2 et largement soutenu par des entreprises comme Netifi Inc., Facebook, Pivotal et Alibaba.

Nous verrons avec des cas pratiques comment ce protocole permet de correspondre aux besoins modernes : push de données, échanges bi-directionnels, reprise de connexion et asynchronisme.

Code métier et spring reactif : le mariage improbable

Delegue Alexandre   Tools-in-action  /  Langages  /  intermediate   17:15 - 17:45   Salle Chanchardon

La programmation reactive est à la mode, on trouve des clients réactifs pour faire du http, accéder aux bases nosql et même aux bases de données relationnelles. Depuis springboot 2, les reactives streams sont même introduits avec spring reactor et spring webflux.

Mais le constat est toujours le même: le code devient très compliqué et ça devient donc difficile de gérer du métier. Comment empiler, transformer, combiner les erreurs fonctionnelles proprement dans un monde ou tout n'est que throwable ?

Dans cette session je vous présenterai un pattern inspiré de l'api de "zio" (présente dans le monde scala), qu'on a mis en place dans une application très "métier" afin d'avoir du code expressif et de gérer les erreurs de manière fine.

A la fin on obtiendra du code typesafe, robuste, lisible. Le code objet procédurale n'a qu'a bien se tenir !!!

Tips pour combattre le syndrome de l'imposteur

Aurélie Vache   Tools-in-action  /  Méthodologie  /  beginner   17:15 - 17:45   Salle Casoar Tadorne

Qui n’a pas un jour prononcer la phrase : J’ai l’impression d’être un imposteur ? Je ne me sens pas légitime de faire ceci ou de faire cela ?

Certaines personnes sont persuadées qu’elles ne méritent pas leur succès, malgré les efforts qu’elles fournissent pour réussir. Elles s’auto-persuadent souvent que leur réussite n’est pas liée à leur travail, leur accomplissement personnel, mais tout bonnement à la chance ou bien au travail des autres. De fait, elles vivent en permanence avec un sentiment de duperie et craignent sans cesse que quelqu’un ne les démasque d’un jour à un autre.

Dans ce talk nous ferons un retour sur ce qu'est le syndrome de l'imposteur, comment il se reflète au quotidien et nous verrons que ce n'est pas une fatalité, au contraire, qu'il existe des tips et astuces pour le combattre, se dépasser et s'améliorer.

L’ApériKube - version JugSummerCamp

Philippe Charrière Horacio Gonzalez (LostInBrittany) Louis Tournayre   Keynote Apéro  /  --  /  beginner   17:45 - 19:00   Salle Casoar Tadorne

L’ApériKube

Après des mois de confinement rien de tel que de se retrouver entre amis pour partager un moment amusant et convivial. Et si en plus nous pouvons apprendre et comprendre des choses que nous avions du mal à aborder seul, c’est un super bonus. C’est justement ce que nous vous proposons au travers de l'apéro kube dont l’objectif sera de prendre du plaisir et de démystifier kubernetes. Cet apéritif se veut interactif, participatif (ce n'est pas impossible que l'on fasse monter des gens sur scène)… et aussi réaliste (aucun trucage)!

Nos joyeux soiffards et "kubards" seront Philippe, Horacio, Thomas, et Etienne, réunis dans un bar pour faire le point sur ce sujet controversé, "mais kube est-ce que ça sert vraiment à quelque chose? Et d'abord comment ça marche?"

Ils soutiennent le Jug SummerCamp