• Développement
  • Quicky
  • 15 min

Parce qu’un bon Commit vaut mille lignes de commentaires

  • Date jeudi
  • Horaire 11h05 à 11h20
  • Salle Amphi E

Description

Dans le premier projet dans ma carrière professionnelle en tant que développeur, les membres de l’équipe ont souvent changé durant la durée de vie du projet d’une douzaine d'années. Étant arrivé vers la fin du projet, j’ai pu rapidement comprendre les choix techniques du projet, et apprécier la qualité de maintenabilité de la base de code. Très peu de dettes de connaissances étaient présentes car tous les changements étaient bien retranscrits en utilisant une pratique de commits atomiques au sein de l’outil de versionning Git. Dans mon projet actuel, les développeurs n’utilisent pas cette même pratique. Les difficultés sont donc multiples. Ma présentation a pour but de faire un retex sur les gains et la mise en place de cette pratique de commits atomiques Voici ce que vous apprendrez dans la conférence: Définir ce qu'est un commit atomique et les types de changements rencontrés Structuration du commit: Choisir une convention de nommage des commits. Utilisation de la nomenclature de commit conventionnels S'attacher au “pourquoi” plutôt qu'au “quoi” “comment” dans le message de commit Réécrire son historique Git avec le rebase interactif A la fin de cette conférence, les spectateurs pourront eux mêmes appliquer cette méthode et en tirer les bénéfices suivants Tracer et documenter des choix techniques sans utiliser des commentaires directement dans le code Réduire le temps passer à faire des relectures & le nombre de commentaires pour comprendre la visée de certains changements Identifier plus rapidement l’introduction de bugs au sein du code avec l’utilisation de la commande “git bisect”

Orateur·ices

Alexandre Muller

Ingénieur CetrnaleSupéelec spécialisé dans l'architecture des systèmes informatiques, j'ai participé à de nombreux projets informatiques sur des domaines métiers très divers (cloud, mobilité, média, défense). Mon domaine d'expertise se situe autour du backend avec l'utilisation de frameworks Python (Django, FastApi, ...)

Actions rapides


Les sessions futures sur le même thème

    • Développement
    • Conférence

    Jointures et agrégats en SQL : pièges classiques et fonctionnalités méconnues

    Jointures et agrégats : deux piliers du SQL qui, malgré leur symétrie fonctionnelle (passer d’un enregistrement à plusieurs, ou inversement), cachent des mécanismes et des pièges radicalement différents. Les jointures vous jouent des tours ? Doublons inattendus dans vos résultats paginés, choix cornélien entre INNER ou LEFT JOIN… Et côté agrégats, les classiques SUM, MAX ou MIN ne suffisent plus ? Découvrez comment exploiter les window functions, les CUBE/ROLLUP/GROUPING SETS, et même les agrégats avancés de PostgreSQL (JSON, XML) pour transformer vos requêtes en outils ultra-puissants. Si vous utilisez SQL, cette conférence vous donnera les clés pour écrire du SQL expressif et "moderne". Prêt à passer à la vitesse supérieure ?

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

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

    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.

    Jeudi 11h30 à 12h25 - Amphi D
    • 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