• Développement
  • Conférence
  • 55 min

1BRC avec Node.js : Au-delà de l'Event Loop

  • Date jeudi
  • Horaire 11h30 à 12h25
  • Salle Amphi D

Description

Le "1 Billion Row Challenge" a poussé Java dans ses derniers retranchements. Mais Node.js, souvent réduit à son rôle "single-threaded", a-t-il les épaules pour relever ce défi ? Je vous propose un voyage au cœur de la compréhension du runtime. Nous partirons d'une implémentation naïve pour la reconstruire brique par brique. Au programme : éviter le Garbage Collector, maîtriser le Zero-Allocation, et orchestrer Worker Threads et Shared Memory ou encore utiliser WebAssembly. Venez découvrir comment transformer du JavaScript classique en une solution haute performance, grâce à des concepts applicables bien au-delà de ce challenge.

Orateur·ices

Yoann Breton

Développeur full-stack chez Liksi, j'affectionne particulièrement l'écosystème Node.js/React/Vue.js et j'aime me tenir informé des dernières technologies du web.

Actions rapides


Les sessions futures sur le même thème

    • Développement
    • Conférence

    Développer un moteur de règle en 50 minutes, l'AST à la rescousse

    Cette conférence est issue d'une histoire vraie, où j'ai du écrire un moteur de règles qui doit pouvoir modifier le contenu d'un document JSON en utilisant un DSL maison 🍜 exposé par une API REST 😅 Lors de la première tentative, nous étions parti sur l'utilisation du langage Kotlin, à base de KFunction, de KParameters, d'introspection, qui s'est révélée être un enfer. C'est en discutant de mes déboires avec un collègue qu'il m'a dit: "mais en fait c'est un AST ton truc 💡". L'AST, Abstract Syntax Tree est une structure de données permettant de représenter un programme, exactement ce que l'on cherche à accomplir pour notre moteur de règles, mais ça je ne le savais pas ! Le lendemain, il m'envoyait un scratch IDEA de 40 lignes représentant bien mieux le coeur de notre futur moteur que mes innombrables fonctions génériques de haut niveau et mon code impossible à maintenir. C'est pas clair ? Alors venez, on redéveloppe from-scratch le coeur du moteur avec Kotlin en quelques lignes de code, en illustrant le concept de ce fameux AST.

    Jeudi 12h30 à 13h25 - Amphi D
    • Développement
    • Conférence

    Rust : pourquoi s'y intéresser, au-delà de la sûreté mémoire

    "Rust, c'est un C++ sans bugs mémoire." C'est le pitch qu'on entend partout. C'est aussi celui qui nous empêche de voir ce que Rust change vraiment. À l'AMIAD (Agence Ministérielle pour l'Intelligence Artificielle de Défense), on développe en Python — embarqué, backend, services métier. Quand on a cherché une alternative pour nos systèmes embarqués, Rust s'est imposé naturellement. Ce qu'on n'avait pas prévu, c'est qu'on finirait par l'adopter pour bien d'autres briques. Pourquoi ? Parce que le design du langage — son système de types, ses traits, son compilateur — apporte des réponses concrètes à des problèmes que la plupart des langages repoussent au runtime : erreurs silencieuses, abstractions coûteuses, couplage rigide, magie implicite. Dans ce talk, on explore comment un compilateur peut devenir votre meilleur allié pour éliminer ces problèmes avant même l'exécution. Aucun prérequis Rust : on part des problèmes, pas de la syntaxe. Vous repartirez avec une vision claire de ce que change un langage qui refuse de reporter à demain ce qu'il peut vérifier aujourd'hui.

    Jeudi 14h00 à 14h55 - Amphi D
    • Développement
    • Tool in action

    JBang, un fichier Java pour les gouverner tous ? 💍

    Dans le monde Java, nous sommes habitués à initialiser un projet avec de nombreux fichiers et répertoires. A tel point que des CLI ont vu le jour pour nous aider à créer les projets SpringBoot ou Quarkus par exemple. Vient ensuite le choix du "package manager" : Maven ou Gradle ? Et c'est seulement à partir de là que l'on peut commencer à développer puis exécuter son code 😅. Toutes ces étapes fastidieuses expliquent pourquoi, lorsque que l'on a besoin de faire un développement rapide de quelques lignes pour automatiser une action, on préfère d'autres langages à Java : Python par exemple. Et si je vous disais, qu'avec JBang, vous allez pouvoir rester avec votre langage préféré, Java, et développer une classe toute simple (avec des dépendances externes) en quelques secondes ! C'est le pari (spoiler : réussi) de JBang que je vous propose de découvrir durant une session de live coding. A vous les joies du scripting en Java !

    Jeudi 15h00 à 15h25 - Amphi B