Profile picture of Elodie TURLIER
Elodie TURLIER
Accรฉlรฉrez vos projets tech avec lโ€™IA | Structuration, delivery, automatisation | Fondatrice de Wasteland Studio
Follow me
Generated by linktime
May 29, 2025
๐—ง๐˜‚ ๐—ฐ๐—ฟ๐—ผ๐—ถ๐˜€ ๐—ฏ๐—ถ๐—ฒ๐—ป ๐˜‚๐˜๐—ถ๐—น๐—ถ๐˜€๐—ฒ๐—ฟ switchMap ๐—ฒ๐—ป ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ? ๐——๐—ฎ๐—ป๐˜€ ๐Ÿด๐Ÿฌ % ๐—ฑ๐—ฒ๐˜€ ๐—ฝ๐—ฟ๐—ผ๐—ท๐—ฒ๐˜๐˜€, ๐—ถ๐—น ๐—ฒ๐˜€๐˜ ๐—บ๐—ฎ๐—น ๐—ฝ๐—น๐—ฎ๐—ฐ๐—ฒฬโ€ฆ ๐—ผ๐˜‚ ๐—บ๐—ฎ๐—น ๐—ฐ๐—ผ๐—บ๐—ฝ๐—ฟ๐—ถ๐˜€. Et pourtant, cโ€™est probablement lโ€™opรฉrateur RxJS le plus puissant pour des interfaces rรฉactives. Jโ€™ai condensรฉ lโ€™essentiel dans un carrousel clair, concret et visuel : โ†’ Ce que fait vraiment switchMap (et pourquoi il annule) โ†’ Les cas oรน il ๐˜ฃ๐˜ณ๐˜ช๐˜ญ๐˜ญ๐˜ฆ (et ceux oรน il faut lโ€™รฉviter ร  tout prix) โ†’ Des analogies simples, des snippets concrets, des combinaisons gagnantes Tu y trouveras aussi : โ†’ Cas typique : recherches HTTP avec annulation automatique โ†’ Navigation Angular : comment รฉviter les fuites de donnรฉes entre routes โ†’ NgRx Effects : transformer des actions sans fuite mรฉmoire ๐Ÿ’ฌ Tu utilises dรฉjร  switchMap ? Dis-moi en commentaire : โ†’ Dans quel cas il tโ€™a sauvรฉ ? โ†’ Ou au contraire, si tu tโ€™es dรฉjร  fait piรฉger par un switchMap mal placรฉ ? ๐—˜๐˜ ๐˜€๐—ถ ๐˜๐˜‚ ๐˜ƒ๐—ฒ๐˜‚๐˜… ๐—พ๐˜‚๐—ฒ ๐—ท๐—ฒ ๐—ฑ๐—ฒฬ๐—ฐ๐—ผ๐—ฟ๐˜๐—ถ๐—พ๐˜‚๐—ฒ ๐˜‚๐—ป ๐—ฎ๐˜‚๐˜๐—ฟ๐—ฒ ๐—ฒฬ๐—น๐—ฒฬ๐—บ๐—ฒ๐—ป๐˜ ๐—ฑ๐—ฒ ๐—ฅ๐˜…๐—ท๐˜€ ๐—ฒฬ๐—ฐ๐—ฟ๐—ถ๐˜€ ๐˜๐—ผ๐—ป ๐—ฝ๐—ฟ๐—ผ๐—ฏ๐—น๐—ฒฬ€๐—บ๐—ฒ ๐—ฒ๐—ป ๐—ฐ๐—ผ๐—บ๐—บ๐—ฒ๐—ป๐˜๐—ฎ๐—ถ๐—ฟ๐—ฒ, ๐—ท๐—ฒ ๐˜๐—ฟ๐—ฎ๐—ถ๐˜๐—ฒ๐—ฟ๐—ฎ๐—ถ ๐—ฑ๐—ฎ๐—ป๐˜€ ๐—น๐—ฒ๐˜€ ๐—ฝ๐—ฟ๐—ผ๐—ฐ๐—ต๐—ฎ๐—ถ๐—ป๐˜€ ๐—ฒฬ๐—ฝ๐—ถ๐˜€๐—ผ๐—ฑ๐—ฒ๐˜€. ๐Ÿ‘‡ Et si tu as loupรฉ les รฉpisodes prรฉcรฉdent, pas de soucis, je les remets en commentaire.
Stay updated
Subscribe to receive my future LinkedIn posts in your mailbox.

By clicking "Subscribe", you agree to receive emails from linktime.co.
You can unsubscribe at any time.

63 Likes
May 29, 2025
Discussion about this post
Profile picture of Lucas Garcia
Lucas Garcia
Senior Frontend Engineer
3 months ago
Ton explication de switchMap est juste mais un peu imprรฉcise si je me remet dans la peau du moi qui dรฉbutait ๐Ÿ˜ฌ - Le titre : switchMap n'a rien ร  voir avec angular donc j'aurais juste enlevรฉ la fin pour "Utilises-tu bien switchMap ?" - Le fonctionnement : Oui, c'est effectivement un map + switchAll et ton explication est juste MAIS switchMap n'abandonne pas purement et simplement l'observable prรฉcรฉdent, il *switch* sur le nouveau. => En gros, SI la source รฉmet une nouvelle valeur ALORS switchMap unsubscribe l'observable interne (celui retournรฉ par project) (et d'ailleurs c'est pas forcรฉment un obs mais un observableInput, aka un obs, une promesse, un array, une string, etc.) et s'abonne au nouvel observable recrรฉรฉ par la fonction project AVEC la nouvelle valeur รฉmise. => Donc si l'obs interne a toujours le temps de complete, on ne verra jamais l'"abandon" du prรฉcรฉdent obs + si l'obs interne renvoie x valeurs dans le temps et non une seule, il pourrait en envoyer une infinitรฉ avant de switcher sur le nouveau. En gros, il unsubscribe que l'obs interne qui n'a pas complete, ร  la diffรฉrence d'exhaustMap qui fait l'inverse => il ignore la nouvelle รฉmission TANT QUE l'obs interne n'a pas complete
Profile picture of ๐Ÿค– Loรฏc Broquet ๐Ÿค–
๐Ÿค– Loรฏc Broquet ๐Ÿค–
Principal Engineer chez Theodo.FinTech
3 months ago
Attention ร  la gestion d'erreurs ! Un simple "catchError" provoque un dรฉsabonnement Je propose des alternatives dans ma newsletter : https://whileitcompiles.substack.com/i/135461575/retry-versus-pipeception
Profile picture of Hรฉlรจne RIZZON
Hรฉlรจne RIZZON
Conceptrice Dรฉveloppeuse Web & Mobile en formation ๐Ÿš€ | Moselle/Luxembourg ๐Ÿ’ก
3 months ago
J'adore tes explications c'est super clair ๐Ÿคฉ
Claude Code comprend ton projetโ€ฆ avant mรชme que tu aies fini la commande. Cโ€™est ce que jโ€™ai observรฉ en lโ€™intรฉgrant ร  mes workflows dev, au fil de plusieurs semaines dโ€™usage rรฉel. Pas une IA gadget ou un clone de GPT en ligne de commande. Un vrai agent local, structurรฉ, que tu pilotes selon ta logique. Jโ€™ai tout documentรฉ dans un guide (dispo gratuitement) pour que ce ne soit pas juste bluffant en dรฉmo, mais rรฉellement utile en production. Voici ce que tu vas y trouver : โ†’ Installation et configuration complรจte (MCP, sandbox, limitations) โ†’ Organisation de la mรฉmoire + stratรฉgie de prompt efficace โ†’ Architecture dโ€™usage : Claude comme architecte (plan) โ†’ รฉditeur (act) โ†’ Astuces dโ€™optimisation pour รฉviter les relectures inutiles โ†’ Sรฉcuritรฉ, personnalisation, sรฉparation des contextes โ†’ Cas dโ€™usage testรฉs : refacto, gรฉnรฉration ciblรฉe, debug, pattern review โ†’ Recommandations si tu bosses en รฉquipe ou sur des projets complexes Lโ€™objectif : Ne plus perdre de temps ร  bricoler une interface IA. Mais intรฉgrer Claude comme un vrai outil dans ta chaรฎne de production. ๐—–๐—ฒ ๐—ด๐˜‚๐—ถ๐—ฑ๐—ฒ ๐—ท๐—ฒ ๐˜๐—ฒ ๐—น'๐—ผ๐—ณ๐—ณ๐—ฟ๐—ฒ. Pour le dรฉcouvrir : 1. Ajoute moi en contact si ce nโ€™est pas dรฉjร  fait 2. Like ce post 3. Commente "CLAUDE CODE" et je te lโ€™envoie โœŒ๏ธ ๐Ÿ’ฌ Et si tu l'as lu : dis-moi ce que tu voudrais voir en plus. Je lโ€™amรฉliore en continu, donc tout retour est bienvenu.
2962 comments
August 20, 2025
๐—˜๐˜ ๐˜€๐—ถ ๐—น๐—ฎ ๐—–๐—น๐—ฒ๐—ฎ๐—ป ๐—”๐—ฟ๐—ฐ๐—ต๐—ถ๐˜๐—ฒ๐—ฐ๐˜๐˜‚๐—ฟ๐—ฒ ๐—ฒฬ๐˜๐—ฎ๐—ถ๐˜ ๐—Ÿ๐—” ๐—ฝ๐—ถ๐˜€๐˜๐—ฒ ๐—ฝ๐—ผ๐˜‚๐—ฟ ๐—ฟ๐—ฒ๐—ป๐—ฑ๐—ฟ๐—ฒ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—ฝ๐—น๐˜‚๐˜€โ€ฆ ๐—ฟ๐—ฒ๐˜€๐—ฝ๐—ถ๐—ฟ๐—ฎ๐—ฏ๐—น๐—ฒ ? Je ne parle pas de thรฉorie ou de grand plan dโ€™urbanisation logicielle. Juste dโ€™un test que jโ€™ai lancรฉ sur un projet client. Une envie de structurer diffรฉremment. De voir si รงa pouvait vraiment changer la donne. Jโ€™ai donc tentรฉ une sรฉparation en 3 couches, avec un principe simple : ๐—š๐—ฎ๐—ฟ๐—ฑ๐—ฒ๐—ฟ ๐—น๐—ฎ ๐—น๐—ผ๐—ด๐—ถ๐—พ๐˜‚๐—ฒ ๐—บ๐—ฒฬ๐˜๐—ถ๐—ฒ๐—ฟ ๐—ถ๐—ป๐—ฑ๐—ฒฬ๐—ฝ๐—ฒ๐—ป๐—ฑ๐—ฎ๐—ป๐˜๐—ฒ ๐—ฑโ€™๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ. Voilร  ce que jโ€™ai mis en place : โ†’ ๐—จ๐—ป ๐—–๐—ผ๐—ฟ๐—ฒ (TypeScript pur) โ†’ rรจgles mรฉtier, modรจles, interfaces โ†’ ๐—จ๐—ป๐—ฒ ๐—จ๐—œ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ โ†’ composants, routes, styles โ†’ ๐——๐—ฒ๐˜€ ๐—ถ๐—บ๐—ฝ๐—น๐—ฒฬ๐—บ๐—ฒ๐—ป๐˜๐—ฎ๐˜๐—ถ๐—ผ๐—ป๐˜€ โ†’ REST, mocks, peu importe, tant que รงa respecte les contrats du Core La logique ne โ€œdรฉbordeโ€ plus dans les composants. Les tests sont plus stables. Et une feature se gรฉnรจre en quelques clics grรขce ร  une schematic perso : ng generate ./custom-schematics:generate-core-feature Je ne dis pas que cโ€™est la solution. Mais pour lโ€™instant, รงa mโ€™a permis de gagner en clartรฉ, en vitesse et en confiance dans le code. Et surtout, รงa rend les รฉvolutions beaucoup plus fluides. Pour les curieux, jโ€™ai partagรฉ un petit ๐—ฒ๐˜…๐—ฒ๐—บ๐—ฝ๐—น๐—ฒ ๐—ฐ๐—ผ๐—ป๐—ฐ๐—ฟ๐—ฒ๐˜ ๐—ถ๐—ฐ๐—ถ : ๐Ÿ‘‰ https://buff.ly/4autIGi ๐Ÿ’ฌ Je suis curieuse : ๐—ค๐˜‚๐—ฒ๐—น ๐—ฑ๐—ฒฬ๐—ฐ๐—ผ๐˜‚๐—ฝ๐—ฎ๐—ด๐—ฒ ๐˜ƒ๐—ผ๐˜‚๐˜€ ๐˜‚๐˜๐—ถ๐—น๐—ถ๐˜€๐—ฒ๐˜‡ ๐—ฝ๐—ผ๐˜‚๐—ฟ ๐—ด๐—ฎ๐—ฟ๐—ฑ๐—ฒ๐—ฟ ๐˜ƒ๐—ผ๐˜€ ๐—ฎ๐—ฝ๐—ฝ๐˜€ ๐—”๐—ป๐—ด๐˜‚๐—น๐—ฎ๐—ฟ ๐—บ๐—ฎ๐—ถ๐—ป๐˜๐—ฒ๐—ป๐—ฎ๐—ฏ๐—น๐—ฒ๐˜€ ๐—ฑ๐—ฎ๐—ป๐˜€ ๐—น๐—ฒ ๐˜๐—ฒ๐—บ๐—ฝ๐˜€ ? ๐—ฉ๐—ผ๐˜‚๐˜€ ๐—ฎ๐˜ƒ๐—ฒ๐˜‡ ๐˜๐—ฒ๐˜€๐˜๐—ฒฬ ๐—ฑ๐—ฒ๐˜€ ๐—ฎ๐—ฝ๐—ฝ๐—ฟ๐—ผ๐—ฐ๐—ต๐—ฒ๐˜€ ๐˜€๐—ถ๐—บ๐—ถ๐—น๐—ฎ๐—ถ๐—ฟ๐—ฒ๐˜€ ?
43 comments
May 6, 2025
๐—โ€™๐—ฎ๐—ถ ๐˜ƒ๐˜‚ ๐˜‚๐—ป ๐—ท๐˜‚๐—ป๐—ถ๐—ผ๐—ฟ ๐—ฝ๐—น๐—ฒ๐˜‚๐—ฟ๐—ฒ๐—ฟ ๐—ฑ๐—ฒ๐˜ƒ๐—ฎ๐—ป๐˜ ๐˜‚๐—ป ๐—ณ๐—ถ๐—ฐ๐—ต๐—ถ๐—ฒ๐—ฟ ๐—ต๐—ฒ๐—น๐—ฝ๐—ฒ๐—ฟ๐˜€.๐˜๐˜€ Il faisait 2 831 lignes. Et contenaitโ€ฆ 143 fonctions. Le pire ? Personne nโ€™รฉtait vraiment choquรฉ. Dans beaucoup dโ€™entreprises, le code propre est un mythe. Voici pourquoi : 1๏ธโƒฃ ๐—Ÿ๐—ฎ ๐—ฑ๐—ถ๐—ฐ๐˜๐—ฎ๐˜๐˜‚๐—ฟ๐—ฒ ๐—ฑ๐˜‚ ๐—ฑ๐—ฒ๐—น๐—ถ๐˜ƒ๐—ฒ๐—ฟ๐˜† Quand tout doit sortir "hier", les bonnes pratiques sont les premiรจres victimes. Le refactoring ? "On verra plus tard." Spoiler : ce "plus tard" nโ€™arrive jamais. 2๏ธโƒฃ ๐—ง๐˜‚๐—ฟ๐—ป-๐—ผ๐˜ƒ๐—ฒ๐—ฟ ๐—ฒ๐˜ ๐—ฒฬ๐—พ๐˜‚๐—ถ๐—ฝ๐—ฒ๐˜€ ๐—ต๐—ฒฬ๐˜๐—ฒฬ๐—ฟ๐—ผ๐—ด๐—ฒฬ€๐—ป๐—ฒ๐˜€ Chaque nouveau dรฉveloppeur ajoute sa toucheโ€ฆ sans contexte, sans relecture, sans transmission. ร€ la fin ? Une cacophonie technique. 3๏ธโƒฃ ๐——๐—ฒ๐˜€ ๐˜€๐˜๐—ฎ๐—ป๐—ฑ๐—ฎ๐—ฟ๐—ฑ๐˜€... ๐˜€๐˜‚๐—ฟ ๐—น๐—ฒ ๐—ฝ๐—ฎ๐—ฝ๐—ถ๐—ฒ๐—ฟ ๐˜€๐—ฒ๐˜‚๐—น๐—ฒ๐—บ๐—ฒ๐—ป๐˜ Les conventions existent, mais qui les lit ? Qui les met ร  jour ? Qui les applique ? Rรฉponse : rarement les devs en feu ร  2 jours dโ€™une release. 4๏ธโƒฃ ๐—Ÿ๐—ฎ ๐—ฑ๐—ฒ๐˜๐˜๐—ฒ ๐˜๐—ฒ๐—ฐ๐—ต๐—ป๐—ถ๐—พ๐˜‚๐—ฒ : ๐—นโ€™๐—ฒฬ๐—น๐—ฒฬ๐—ฝ๐—ต๐—ฎ๐—ป๐˜ ๐—พ๐˜‚โ€™๐—ผ๐—ป ๐—ป๐—ผ๐˜‚๐—ฟ๐—ฟ๐—ถ๐˜ Chaque raccourci creuse un peu plus. On le sait. On lโ€™accepte. On lโ€™ignore. 5๏ธโƒฃ ๐—™๐—ผ๐—ฟ๐—บ๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—ฐ๐—ผ๐—ป๐˜๐—ถ๐—ป๐˜‚๐—ฒ ๐—ป๐—ฒฬ๐—ด๐—น๐—ถ๐—ด๐—ฒฬ๐—ฒ Clean Architecture, SOLID, TDD ? Pas le temps. Pas de budget. Pas prioritaire. Donc รงa reste flouโ€ฆ voire perรงu comme un luxe de sรฉnior. 6๏ธโƒฃ ๐—˜๐—บ๐—ฝ๐—ถ๐—น๐—ฒ๐—บ๐—ฒ๐—ป๐˜ ๐—ฑ๐—ฒ ๐—ฐ๐—ผ๐˜‚๐—ฐ๐—ต๐—ฒ๐˜€ ๐˜๐—ฒ๐—ฐ๐—ต๐—ป๐—ถ๐—พ๐˜‚๐—ฒ๐˜€ Un jour tu es sur un framework de 2014, le lendemain tu pilotes 3 APIs externes en mode panique. Tout est collรฉ. Rien nโ€™est pensรฉ ensemble. 7๏ธโƒฃ ๐—Ÿ๐—ฎ ๐˜ƒ๐—ถ๐˜€๐—ถ๐—ผ๐—ป ๐—ฝ๐—ฟ๐—ผ๐—ฑ๐˜‚๐—ถ๐˜ ๐—ฐ๐—ฒ๐—ป๐˜๐—ฟ๐—ฒฬ๐—ฒ ๐˜‚๐—ป๐—ถ๐—พ๐˜‚๐—ฒ๐—บ๐—ฒ๐—ป๐˜ ๐˜€๐˜‚๐—ฟ ๐—น๐—ฒ๐˜€ ๐—ณ๐—ผ๐—ป๐—ฐ๐˜๐—ถ๐—ผ๐—ป๐—ป๐—ฎ๐—น๐—ถ๐˜๐—ฒฬ๐˜€ "Ce ticket doit passer." "Ce bug peut attendre." Et le code devient lent, fragile, et toxique. ๐๐ฎ๐ž ๐Ÿ๐š๐ข๐ซ๐ž ๐๐š๐ง๐ฌ ๐œ๐ž ๐œ๐ก๐š๐จ๐ฌ ? โ—พ Rendre les normes vivantes (outillรฉes, commentรฉes, visibles) โ—พ Dรฉdier du temps rรฉel ร  la dette (refacto planifiรฉ โ‰  dette fantรดme) โ—พ Organiser la transmission (revues croisรฉes, pair coding, doc vivante) โ—พ Encourager les revues de code : Deux paires dโ€™yeux valent mieux quโ€™une. โ—พ Prioriser la montรฉe en compรฉtence (talks, mentors, dojos) โ—พ Rรฉserver du temps tech dans chaque sprint (sinon il disparaรฎt) ๐—Ÿ๐—ฒ ๐—ฐ๐—ผ๐—ฑ๐—ฒ ๐—ฐ๐—น๐—ฒ๐—ฎ๐—ป, ๐—ฐ๐—ฒ ๐—ปโ€™๐—ฒ๐˜€๐˜ ๐—ฝ๐—ฎ๐˜€ ๐—ฑ๐—ฒ ๐—นโ€™๐—ฒ๐—ด๐—ผ. ๐—–โ€™๐—ฒ๐˜€๐˜ ๐˜‚๐—ป๐—ฒ ๐—ฑ๐—ฒ๐˜๐˜๐—ฒ ๐—พ๐˜‚๐—ฒ ๐˜๐˜‚ ๐—ฐ๐—ต๐—ผ๐—ถ๐˜€๐—ถ๐˜€ ๐—ฑ๐—ฒ ๐—ฟ๐—ฒ๐—บ๐—ฏ๐—ผ๐˜‚๐—ฟ๐˜€๐—ฒ๐—ฟโ€ฆ ๐—ผ๐˜‚ ๐—ฑ๐—ฒ ๐˜๐—ฟ๐—ฎ๐—ป๐˜€๐—บ๐—ฒ๐˜๐˜๐—ฟ๐—ฒ. ๐Ÿ’ฌ Et toi, quel est le bout de code le plus absurde que tu as dรป maintenir ?
42 comments
June 22, 2025
Je ne dรฉmarre plus aucun projet Angular sans รงa. Et je me demande encore comment je faisais avant. Chaque lancement de projet Angular, cโ€™est une aventure : excitante, mais pleine dโ€™embรปches. Au dรฉbut, jโ€™avanรงais au feeling. Rรฉsultat ? Des bases fragiles, des sprints oรน tout cassait, et une dette technique qui explosait. Alors jโ€™ai tout repris ร  zรฉro. Jโ€™ai testรฉ, comparรฉ, jetรฉ. Et aujourdโ€™hui, jโ€™utilise ce starter pack personnel, qui transforme chaque idรฉe en produit robuste et scalable : - Angular Material ou Tailwind : pour construire rapidement une interface qui impressionne et fonctionne. - Jest/Vitest + Cypress : pour partir sereinement, avec des tests qui garantissent stabilitรฉ et qualitรฉ.ย  - Transloco : pour gรฉrer les textes de votre application (traduction ou non cela permet de gรฉrer plus efficacement le contenu textuel).ย  - Compodoc + Storybook : parce que documenter, cโ€™est cartographier, et tout le monde gagne du temps (Storybook dรฉpendra de la taille de mon projet et l'utilisation d'une librairie graphique propre au projet). - Source-map-explorer ou webpack-bundle-analyzer : pour identifier les points lourds et optimiser le parcours. - ESLint + Prettier : pour ajouter un peut de rigueur dans le code. - Auto-changelog : ย pour garder une trace claire de chaque changement une fois l'application en production. Avec ces outils, mes projets Angular ne sont plus des paris. Ce sont des plans maรฎtrisรฉs, de lโ€™idรฉe jusquโ€™ร  la mise en prod. ๐Ÿ’ฌ Et toi, cโ€™est quoi lโ€™outil indispensable que tu conseilles pour bien lancer un projet ? Dis-moi en commentaire : je cherche encore la pรฉpite que jโ€™aurais oubliรฉe.
30 comments
May 12, 2025