Aller au contenu principal
Application web & SaaS

#1 - Antoine Coulon - Effect TS, le Typescript de demain

James
JamesChief Technical Officer & Co-founder
18 janvier 2024
#1 - Antoine Coulon - Effect TS, le Typescript de demain

Antoine Coulon nous partage ses expériences, ses défis, sa vision de la tech et la librairie Effect TS.

Un moment entre passionnés

Ce premier épisode de la série, tourné dans les locaux de Yield Studio, s’ouvre sur une discussion entre passionnés du code et du craft. Antoine Coulon, Lead Software Engineer très actif dans la communauté open source, partage son parcours, ses convictions et ses pratiques de développement. Il est rejoint par James H, CTO de Yield Studio, pour un échange approfondi autour d’un sujet pointu : la librairie TypeScript Effect.js.

Faire de sa passion un métier

Antoine revient sur son quotidien de développeur : curieux, pragmatique et avide d’apprendre. Pour lui, l’open source est un terrain d’expérimentation infini, une « aire de jeu » où l’on peut monter en compétence en résolvant des problèmes réels, parfois absents du cadre rigide de l’entreprise.

"L’open source, c’est avant tout une manière d’apprendre en s’amusant, de contribuer à des projets qui dépassent les frontières et de monter en compétence sur des sujets qu’on ne touche pas toujours en entreprise."

Pourquoi Yield Studio soutient On Zone

James explique l’intérêt de Yield Studio pour des initiatives comme ce podcast : sortir du marketing, donner la parole aux techs, créer de la valeur entre pairs. Pour lui, c’est aussi un levier de recrutement : les profils qu’ils recherchent – très seniors, très craft – sont souvent impliqués dans l’open source. Et ça, ça compte.

"Les profils qui font de l’open source ont une longueur d’avance. Et quand on dit qu’on consacre du temps à ça chez Yield, ça fait tilt."

Effect.js : un changement de paradigme

Antoine introduit ensuite le cœur du sujet : Effect.js, une librairie TypeScript orientée vers la programmation fonctionnelle et l’ingénierie logicielle robuste. Elle propose un modèle unique d’exécution basé sur un runtime propre, une gestion typée des erreurs et des dépendances, et une approche déclarative qui change la manière même de concevoir une application.

Trois canaux typés

Effect.js repose sur trois types génériques :

  • R : les dépendances nécessaires (le « contexte »)
  • E : les erreurs possibles
  • A : le résultat du programme

Ce triplé rend chaque bloc de code explicite, composable et sécurisé par le typage. Une promesse classique, elle, ne permet pas d’encoder les erreurs ou les dépendances de manière aussi fine.

"Avec Effect, tu décris ton programme. Il ne s’exécute que lorsque tu l’interprètes. C’est lazy, comme une promesse en attente. Mais typé de bout en bout."

Développer en confiance

Antoine partage ensuite les bénéfices de cette approche :

  • Moins de code défensif
  • Des erreurs typées, explicites, documentées
  • Un programme qui ne compile pas s’il manque une dépendance ou une gestion d’erreur

Et surtout : un code plus maintenable, plus testable et plus prédictible.

"Si ça compile, ça fonctionne. C’est le pari d’Effect. Et après deux ans d’utilisation en production, je peux dire que ça tient la route."

Un exemple concret : injection de dépendance

Antoine illustre ensuite comment Effect.js facilite la mise en œuvre du Dependency Inversion Principle. Chaque service est défini comme une abstraction (interface) enregistrée dans un runtime context. Cela permet une injection de dépendance pure, type-safe, idéale pour le test, la composition, et la lisibilité.

"La dépendance devient un premier-class citizen du système de types. Et ça change ta manière de coder."

Pour aller plus loin

Antoine clôt l’épisode avec quelques conseils :

  • Ne pas commencer par la librairie elle-même, mais par comprendre les problèmes qu’elle résout.
  • Lire la doc officielle et ses propres articles sur GitHub.
  • L’adopter de manière incrémentale, module par module.
  • Et ne pas hésiter à expérimenter aussi côté front, où Effect trouve aussi sa place (ex. sérialisation, parsing, gestion d'état).

Une communauté, un état d’esprit

Cette discussion met en lumière un état d’esprit cher à Yield Studio : exigence technique, plaisir d’apprendre, transmission, et passion pour le code bien fait. Ce premier épisode n’est pas une démo. C’est une invitation à penser différemment, à écrire du logiciel plus clair, plus robuste, plus juste.

Episodes similaires

Code ou No Code ? Le bon choix en 2025

Code ou No Code ? Le bon choix en 2025

Est-ce qu’il faut encore développer un logiciel sur-mesure aujourd’hui ? Ou tout miser sur le No Code pour aller plus vi...

CyrilleCyrille4 juin 2025
#3 - Tony Gorez - Être développeur chez Postman

#3 - Tony Gorez - Être développeur chez Postman

Plongeons dans une conversation informelle avec Tony, explorant son parcours unique dans le monde de la tech, comment il...

JamesJames12 mars 2024
#2 - Tanguy Bary - Évolution et défis du recrutement dans la tech

#2 - Tanguy Bary - Évolution et défis du recrutement dans la tech

Avec Tanguy Bary⁠ nous abordons des sujets d'actualité sans tabou, tels que l'état du marché de recrutement tech en 2024...

CyrilleCyrille20 février 2024