James
Chief Technical Officer & Co-founder
Mathieu
Développeur sénior

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

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.

Abonnez-vous au blog de Yield Studio

Restez en contact avec Yield Studio et recevez les nouveaux articles de blog dans votre boîte de réception.

Oops! Something went wrong while submitting the form.
Yield Studio traitera vos données conformément à sa politique de confidentialité

Yield Studio recrute les top 1% des meilleurs profils tech, product, design

Yield Studio développe des produits digitaux en un temps record

Simulateur

Bienvenue dans le
simulateur d’estimation

Sélectionnez
vos besoins

Sélectionnez un ou plusieurs choix

Définissez les
fonctionnalités

Sélectionnez un ou plusieurs choix

Dernière
étape !

Renseignez votre adresse mail pour recevoir l’estimation !
Obtenez l’estimation
Précédent
Suivant

Bravo ! Vous avez terminé
l’estimation de votre future app !

Vous recevrez dans votre boite mail l’estimation personnalisé. Une estimation vous offre la possibilité de vous projeter dans un budget, vous permettant ainsi de planifier en toute confiance. Néanmoins, chez Yield, nous adoptons une approche agile, prêts à remettre en question et ajuster nos évaluations en fonction de l'évolution de vos besoins et des spécificités de votre projet.
Retour au site
Oops! Something went wrong while submitting the form.