﻿<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[La veille de Stocki]]></title><description><![CDATA[Retrouvez votre concentré d'actualité dev tous les vendredis midi. Un outil open source, un article de blog qui m'a marqué et plein d'autres choses !]]></description><link>https://stocki.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!CxO4!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4f5b646-6737-43f6-8edd-252a8917aa3b_1152x1152.png</url><title>La veille de Stocki</title><link>https://stocki.substack.com</link></image><generator>Substack</generator><lastBuildDate>Thu, 18 Jun 2026 16:16:47 GMT</lastBuildDate><atom:link href="https://stocki.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Stocki]]></copyright><language><![CDATA[fr]]></language><webMaster><![CDATA[stocki@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[stocki@substack.com]]></itunes:email><itunes:name><![CDATA[Stocki]]></itunes:name></itunes:owner><itunes:author><![CDATA[Stocki]]></itunes:author><googleplay:owner><![CDATA[stocki@substack.com]]></googleplay:owner><googleplay:email><![CDATA[stocki@substack.com]]></googleplay:email><googleplay:author><![CDATA[Stocki]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[GPT4o, StackOverflow x OpenAI, React 19 & Google I/O 2024]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/gpt4o-stackoverflow-x-openai-react</link><guid isPermaLink="false">https://stocki.substack.com/p/gpt4o-stackoverflow-x-openai-react</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Sun, 19 May 2024 12:03:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/MzHCWZB5ZpE" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Vous l&#8217;avez peut-&#234;tre remarqu&#233;, peut-&#234;tre pas, mais la semaine derni&#232;re, je n&#8217;ai pas envoy&#233; de newsletter. Je n&#8217;ai simplement pas trouv&#233; le temps, ni la motivation, de l&#8217;&#233;crire. </p><p>Je suis parti travailler &#224; Lisbonne cette semaine, j&#8217;aime bien, de temps en temps, prendre mes affaires et m&#8217;&#233;tablir dans une ville pour une semaine afin de travailler la journ&#233;e et visiter le soir et le weekend. La mis&#232;re serait moins p&#233;nible au soleil, chantait Aznavour (quelle mis&#232;re d&#8217;&#234;tre d&#233;veloppeur freelance en full remote &#128517;).</p><p>Blague &#224; part, je n&#8217;ai pas fait tellement de veille cette semaine, je n&#8217;arrive plus &#224; retrouver mes articles de la semaine derni&#232;re, ceux qui ont eu l&#8217;occasion de passer une t&#234;te derri&#232;re mon &#233;cran connaissent ma gestion chaotique des onglets (~800 onglets ouverts sur Chrome actuellement). Je profite toujours des s&#233;jours ailleurs pour changer certaines habitudes, on sort un peu de la routine quotidienne, et cette fois, j&#8217;en ai profit&#233; pour basculer sur le navigateur <a href="https://arc.net/">Arc</a> ! Sorti exclusivement sur MacOS, il est d&#233;sormais disponible sur Windows &#233;galement. Parmi les nombreuses fonctionnalit&#233;s, que je ne connais surement pas, il propose la gestion d&#8217;espace (comme Chrome me direz-vous) beaucoup plus fluide, le split screen, le nettoyage p&#233;riodique des onglets ouverts (tiens tiens ; la p&#233;riode est configurable). Pour le moment c&#8217;&#8217;est un gros coup de c&#339;ur.</p><p>Donc voici un condens&#233; des grosses news qui m&#8217;ont marqu&#233; ces deux derni&#232;res semaines.</p><p>Bonne lecture !</p><h2>Sortie de GPT4o</h2><p>OpenAI a annonc&#233;, quelques jours avant la Google IO, la sortie de son nouveau mod&#232;le, GPT4o, mettant l&#8217;accent sur la rapidit&#233; des r&#233;ponses et l&#8217;int&#233;gration de la compr&#233;hension vid&#233;o en temps r&#233;el.</p><p>Voici un r&#233;sum&#233; des principales nouveaut&#233;s apport&#233;es par GPT-4o par rapport &#224; GPT-4 Turbo :</p><h2><strong>Performances accrues</strong></h2><ul><li><p>Intelligence au niveau de GPT-4 Turbo sur le texte, le raisonnement et le codage, avec de nouvelles avanc&#233;es sur les capacit&#233;s multilingues, audio et visuelles.</p></li><li><p>G&#233;n&#233;ration de tokens 2 fois plus rapide que GPT-4 Turbo.</p></li></ul><h2><strong>Co&#251;ts r&#233;duits</strong></h2><ul><li><p>50% moins cher que GPT-4 Turbo, &#224; 5$ par million de tokens d'entr&#233;e et 15$ par million de tokens de sortie.</p></li><li><p>Limites de d&#233;bit 5 fois plus &#233;lev&#233;es, jusqu'&#224; 10 millions de tokens par minute.</p></li></ul><h2><strong>Nouvelles capacit&#233;s</strong></h2><ul><li><p>Meilleures capacit&#233;s de vision et de compr&#233;hension d'images/vid&#233;os.</p></li><li><p>Meilleures capacit&#233;s multilingues gr&#226;ce &#224; un nouveau tokeniseur.</p></li><li><p>Fen&#234;tre de contexte de 128K tokens et connaissances jusqu'&#224; octobre 2023.</p></li><li><p>Compr&#233;hension de la vid&#233;o (sans audio) via les capacit&#233;s de vision.</p></li><li><p>Le support audio n'est pas encore disponible, mais pr&#233;vu prochainement.</p></li><li><p>Pas de support pour la g&#233;n&#233;ration d'images, DALL-E 3 recommand&#233; pour cela.</p></li></ul><p>En r&#233;sum&#233;, GPT-4o apporte des am&#233;liorations significatives en termes de performances, de co&#251;ts, de capacit&#233;s visuelles et multilingues, tout en &#233;tendant la fen&#234;tre de contexte.</p><p>Je vous invite &#224; regarder les d&#233;mos sur le lien ci-dessous qui sont bluffantes !</p><p>Lien vers la resource : </p><ul><li><p><a href="https://openai.com/index/hello-gpt-4o/">https://openai.com/index/hello-gpt-4o/</a></p></li></ul><p></p><h2>Partenariat entre StackOverflow et OpenAI</h2><p>OpenAI et Stack Overflow ont annonc&#233; un partenariat pour int&#233;grer l'IA g&#233;n&#233;rative d'OpenAI dans la plateforme Stack Overflow. Voici les d&#233;tails cl&#233;s&nbsp;:</p><ul><li><p>Stack Overflow a vu sa fr&#233;quentation baisser suite au lancement de ChatGPT, en particulier aupr&#232;s des d&#233;veloppeurs d&#233;butants.</p></li><li><p>Pour y rem&#233;dier, Stack Overflow va int&#233;grer une technologie d'IA g&#233;n&#233;rative maison appel&#233;e "OverflowAI", aliment&#233;e par OpenAI via ce partenariat.</p></li><li><p>OverflowAI sera utilis&#233;e comme moteur de recherche s&#233;mantique pour fournir des r&#233;sultats de requ&#234;tes plus pertinents sur la plateforme publique et l'offre Stack Overflow for Teams.</p></li><li><p>Un plugin d'int&#233;gration pour Visual Studio Code sera &#233;galement propos&#233;, permettant aux d&#233;veloppeurs d'acc&#233;der &#224; OverflowAI directement depuis leur environnement de d&#233;veloppement.</p></li></ul><p>L'objectif de ce partenariat est d'am&#233;liorer l'exp&#233;rience utilisateur sur Stack Overflow en exploitant les capacit&#233;s de l'IA g&#233;n&#233;rative d'OpenAI pour fournir des r&#233;ponses et une assistance de meilleure qualit&#233; aux d&#233;veloppeurs.</p><p>Liens vers la ressource : </p><ul><li><p><a href="https://stackoverflow.co/company/press/archive/openai-partnership">https://stackoverflow.co/company/press/archive/openai-partnership</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>React 19</h2><h3><strong>Le compilateur React</strong></h3><p>React 19 introduit un nouveau compilateur qui convertit le code React en JavaScript standard. Cela devrait permettre un gain significatif en performances, potentiellement jusqu'&#224; doubler la vitesse d'ex&#233;cution. Le compilateur g&#232;rera automatiquement les re-rendus, &#233;liminant le besoin d'utiliser manuellement useMemo, useCallback et memo.</p><h3>Les composants serveur</h3><p>Les composants serveur sont rendus c&#244;t&#233; serveur avant d'envoyer la page finale &#224; l'utilisateur. Cela acc&#233;l&#232;re le chargement initial, am&#233;liore le r&#233;f&#233;rencement naturel et optimise la gestion des donn&#233;es.</p><h3>Les Actions</h3><p>Les Actions simplifient la gestion des donn&#233;es et interactions dans les pages web, particuli&#232;rement pour les formulaires. Elles permettent de mettre &#224; jour la page lors d'une soumission de formulaire sans complexit&#233;.</p><h3>Chargement des assets</h3><p>React 19 commence &#224; charger les images et autres fichiers en arri&#232;re-plan pendant que l'utilisateur est sur la page actuelle, r&#233;duisant les temps d'attente.</p><h3>M&#233;tadonn&#233;es du document</h3><p>Le nouveau composant &lt;DocumentHead&gt; facilite l'ajout de m&#233;tadonn&#233;es essentielles comme les titres et meta tags, aidant au r&#233;f&#233;rencement et &#224; l'uniformit&#233; du branding.</p><h3>Compatibilit&#233; avec les Web Components</h3><p>React 19 apporte une meilleure prise en charge des Web Components, permettant de les int&#233;grer plus facilement dans les applications React.</p><h3>Am&#233;liorations des Hooks</h3><p>Les hooks ont &#233;t&#233; am&#233;lior&#233;s, offrant un meilleur contr&#244;le sur l'ex&#233;cution et la mise &#224; jour du code, simplifiant la gestion des cycles de vie et des &#233;tats.</p><p>Retrouvez les explications dans la ressource ci-dessous : </p><ul><li><p><a href="https://react.dev/blog/2024/04/25/react-19">https://react.dev/blog/2024/04/25/react-19</a></p></li><li><p><a href="https://react.dev/learn/react-compiler">https://react.dev/learn/react-compiler</a></p></li></ul><h2>Google I/O 2024</h2><p>Google a pr&#233;sent&#233; ses nouveaut&#233;s lors de son &#233;v&#233;nement annuel, la Google I/O. Cette ann&#233;e le mot d&#8217;ordre est l&#8217;IA ! On peut d&#8217;ailleurs voir Sundar Pichai demander &#224; Gemini combien de fois le mot IA a &#233;t&#233; prononc&#233; durant l&#8217;&#233;v&#233;nement (je vous laisse appr&#233;cier ce moment en fin de la vid&#233;o r&#233;capitulative que j&#8217;ai mise plus bas).</p><p>Je trouve les principales annonces IA un peu d&#233;cevantes, apr&#232;s avoir vu celles d&#8217;OpenAI quelques jours plus t&#244;t. &#199;a me rappelle le lancement du nouveau Oculus Quest avant l&#8217;annonce de l&#8217;Apple Vision. Google semble &#224; la peine pour rattraper son retard dans ce domaine. Cependant, contrairement &#224; OpenAI qui est une startup relativement r&#233;cente, on va avoir tendance &#224; en attendre un peu plus en termes de qualit&#233; de la part de Google, ils ne peuvent donc se permettre de faire de grosses erreurs et avancent &#224; petit pas. </p><p>On verra &#224; l&#8217;avenir si la strat&#233;gie est payante. Lors de discussion r&#233;cente avec un ami, il m&#8217;a gliss&#233; qu&#8217;il s&#8217;attend &#224; voir Google proposer une tarification ultra-agressive de son API Gemini pour alimenter la comp&#233;tition. Wait and see.</p><p>M&#234;me si la conf&#233;rence &#233;tait principalement centr&#233;e sur l&#8217;IA et son int&#233;gration au sein des diff&#233;rents services Google, vous entendrez ainsi une flopp&#233;e de nouveau nom &#224; vous en faire perdre la t&#234;te (personnellement, j&#8217;ai perdu le fil au bout de quelques minutes), ils ont &#233;galement pr&#233;sent&#233; d&#8217;autres nouveaut&#233;s au sein de leurs services.</p><p>Celle qui a le plus retenu mon attention est l&#8217;annonce de <a href="https://firebase.google.com/docs/data-connect">DataConnect</a>,  l&#8217;int&#233;gration de SQL au sein de Firebase. Le service de backend mobile propose d&#233;sormais la g&#233;n&#233;ration automatique de client SQL typesafe dans diff&#233;rents langages, directement coupl&#233; &#224; leur service de PostgreSQL manag&#233;.</p><p>Voici les ressources : </p><div id="youtube2-MzHCWZB5ZpE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;MzHCWZB5ZpE&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/MzHCWZB5ZpE?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div id="youtube2-7OdVatEI85o" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;7OdVatEI85o&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/7OdVatEI85o?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><ul><li><p><a href="https://io.google/2024/explore/">https://io.google/2024/explore/</a></p></li></ul><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://github.com/CapSoftware/Cap">Cap</a> &#8212; Alternative open source &#224; Loom</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ia4r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ia4r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 424w, https://substackcdn.com/image/fetch/$s_!ia4r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 848w, https://substackcdn.com/image/fetch/$s_!ia4r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 1272w, https://substackcdn.com/image/fetch/$s_!ia4r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ia4r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png" width="1456" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;cap-emoji-banner&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="cap-emoji-banner" title="cap-emoji-banner" srcset="https://substackcdn.com/image/fetch/$s_!ia4r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 424w, https://substackcdn.com/image/fetch/$s_!ia4r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 848w, https://substackcdn.com/image/fetch/$s_!ia4r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 1272w, https://substackcdn.com/image/fetch/$s_!ia4r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c18726e-0785-43d8-94af-0b1ea0ac7077_3951x2221.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Vous avez l&#8217;habitude de travailler en asynchrone et vous avez souvent besoin de transmettre des explications en vid&#233;o &#224; vos coll&#232;gues ou vos clients ? </p><p>Dans ce cas-l&#224;, vous connaissez s&#251;rement <a href="https://www.loom.com/">Loom</a>, qui permet d&#8217;enregistrer &#224; la fois son &#233;cran et sa cam&#233;ra en direct pour cr&#233;er de petites vid&#233;os explicatives sur un sujet.</p><p>Cap se propose en alternative open source &#224; Loom, qui permet d&#8217;enregistrer, d&#8217;&#233;diter et partager ses vid&#233;os. Cap se d&#233;cline en application web et application Desktop (utilisant Tauri pour encapsuler l&#8217;interface web en NextJS)</p><p>&#9888;&#65039; L&#8217;application est actuellement encore en BETA !</p><p>Aussi, ils ne proposent pour le moment pas encore d&#8217;image Docker pour d&#233;ployer rapidement leur app, c&#8217;est en cours de d&#233;veloppement sur leur Roadmap.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_ZTJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 424w, https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 848w, https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 1272w, https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png" width="516" height="165.93832599118943" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:292,&quot;width&quot;:908,&quot;resizeWidth&quot;:516,&quot;bytes&quot;:49087,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 424w, https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 848w, https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 1272w, https://substackcdn.com/image/fetch/$s_!_ZTJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc32df210-1cad-4e35-91c7-5691ce4f2661_908x292.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://github.com/CapSoftware/Cap">https://github.com/CapSoftware/Cap</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/gpt4o-stackoverflow-x-openai-react?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/gpt4o-stackoverflow-x-openai-react?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[MySQL et son index intelligent, le TestDataBuilder, les Elegant Objects et Traefik v3]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/mysql-et-son-index-intelligent-le</link><guid isPermaLink="false">https://stocki.substack.com/p/mysql-et-son-index-intelligent-le</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 03 May 2024 10:02:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!H-Q_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Cette semaine, j&#8217;ai focus plus sur des articles un peu technique plut&#244;t que des news du monde IT. Peut-&#234;tre qu&#8217;un jour, j&#8217;arriverais &#224; combiner les deux au sein de la newsletter.</p><p>Je suis clairement dans une p&#233;riode o&#249; j&#8217;ai envie d&#8217;am&#233;liorer mes pratiques objets et me mettre franchement au TDD, donc ma veille tourne pas mal autour de &#231;a. En parall&#232;le, je me forme au Devops &#233;galement, il y aura s&#251;rement des ressources en rapport avec Kubernetes, Terraform, Ansible ou encore ArgoCD dans les prochains temps.</p><p>Bonne lecture !</p><h2>Le Adaptive Hash Index de MySQL</h2><p>Le SGBD MySQL dispose d&#8217;un m&#233;canisme permettant de rajouter une couche intermediaire entre </p><p>Le SGBD MySQL dispose d'un m&#233;canisme permettant de r&#233;aliser des recherches en m&#233;moire pour indexer les donn&#233;es de mani&#232;re plus performante, connu sous le nom d'Adaptive Hash Index. Cette fonctionnalit&#233; est particuli&#232;rement utile pour acc&#233;l&#233;rer les recherches d&#233;j&#224; rapides effectu&#233;es via les index B-tree, en introduisant une couche d'optimisation entre l'ex&#233;cution de MySQL et le pool de m&#233;moire tampon. L'AHI ajuste dynamiquement son comportement en fonction des requ&#234;tes effectu&#233;es sur la base de donn&#233;es, en cr&#233;ant des entr&#233;es pour les valeurs fr&#233;quemment consult&#233;es, ce qui permet d'acc&#233;l&#233;rer consid&#233;rablement les requ&#234;tes ult&#233;rieures.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H-Q_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H-Q_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 424w, https://substackcdn.com/image/fetch/$s_!H-Q_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 848w, https://substackcdn.com/image/fetch/$s_!H-Q_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!H-Q_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H-Q_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg" width="1456" height="610" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:610,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;How the adaptive hash index works with the InnoDB buffer pool&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How the adaptive hash index works with the InnoDB buffer pool" title="How the adaptive hash index works with the InnoDB buffer pool" srcset="https://substackcdn.com/image/fetch/$s_!H-Q_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 424w, https://substackcdn.com/image/fetch/$s_!H-Q_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 848w, https://substackcdn.com/image/fetch/$s_!H-Q_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!H-Q_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de0d6df-61e6-46f1-bd12-62ff698eff45_2642x1106.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Ce syst&#232;me, qui adapte son usage selon les caract&#233;ristiques de la charge de travail observ&#233;e, est tr&#232;s sensible &#224; la taille du pool de tampons. Si le pool est trop petit ou sujet &#224; de nombreuses &#233;jections de donn&#233;es, l'efficacit&#233; de l'AHI peut en &#234;tre affect&#233;e. N&#233;anmoins, MySQL est capable d'ajuster automatiquement son utilisation de cet index en fonction des conditions observ&#233;es, telles que la fr&#233;quence des recherches r&#233;p&#233;t&#233;es et la capacit&#233; du pool de tampons. Bien qu'il y ait un certain co&#251;t de gestion associ&#233; &#224; cet index, il est g&#233;n&#233;ralement activ&#233; par d&#233;faut mais peut &#234;tre d&#233;sactiv&#233; si n&#233;cessaire &#224; travers une option de configuration. </p><p>Les tests dans l&#8217;article ont montr&#233; que cet index peut acc&#233;l&#233;rer l&#8217;ex&#233;cution des requ&#234;tes de l&#8217;ordre de 3% &#224; 20%, selon le type de requ&#234;tes et les donn&#233;es, ce qui parait peu, cependant sur des requ&#234;tes dont l&#8217;ex&#233;cution met de 40 &#224; 50 secondes, cela repr&#233;sente une belle optimisation.</p><p>Lien vers la resource : </p><ul><li><p><a href="https://planetscale.com/blog/the-mysql-adaptive-hash-index">https://planetscale.com/blog/the-mysql-adaptive-hash-index</a></p></li></ul><h2>Le TestDataBuilder Pattern</h2><p>Si vous faites du TDD, vous connaissez s&#251;rement le TestDataBuilder pattern. Ce mod&#232;le est essentiel pour garder le code de test simple et clair, surtout lorsque la base de code s'&#233;largit ou que de nouveaux d&#233;veloppeurs int&#232;grent l'&#233;quipe. Il r&#233;pond notamment &#224; la probl&#233;matique du couplage des tests aux constructeurs des classes de production, qui rend les tests vuln&#233;rables aux changements lors des mises &#224; jour des m&#233;thodes d&#8217;instanciation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dnBa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dnBa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 424w, https://substackcdn.com/image/fetch/$s_!dnBa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 848w, https://substackcdn.com/image/fetch/$s_!dnBa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 1272w, https://substackcdn.com/image/fetch/$s_!dnBa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dnBa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png" width="370" height="297.85" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:644,&quot;width&quot;:800,&quot;resizeWidth&quot;:370,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&#128296; Maintainable tests with Test Data Builders&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="&#128296; Maintainable tests with Test Data Builders" title="&#128296; Maintainable tests with Test Data Builders" srcset="https://substackcdn.com/image/fetch/$s_!dnBa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 424w, https://substackcdn.com/image/fetch/$s_!dnBa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 848w, https://substackcdn.com/image/fetch/$s_!dnBa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 1272w, https://substackcdn.com/image/fetch/$s_!dnBa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f741212-44cc-4aaf-aef9-1bba37658be6_800x644.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Dans cet article, l&#8217;auteur aborde comment les tests peuvent &#234;tre inutilement complexes et coupl&#233;s avec les constructeurs des classes de production. Le probl&#232;me principal r&#233;side dans l'utilisation de donn&#233;es non pertinentes pour les cas test&#233;s, ce qui alourdit et rend le code moins compr&#233;hensible. Pour illustrer cela, il utilise l'exemple d'une classe <code>Person</code> en Kotlin, o&#249; chaque test initialise des objets complets, alors que seules certaines propri&#233;t&#233;s sont n&#233;cessaires pour les tests sp&#233;cifiques.</p><p>Pour r&#233;soudre ces d&#233;fis, le TestDataBuilder pattern se r&#233;v&#232;le &#234;tre une solution efficace. En encapsulant la logique de cr&#233;ation des objets de test dans une classe <code>PersonBuilder</code>, nous pouvons contr&#244;ler les valeurs par d&#233;faut et les d&#233;pendances de mani&#232;re &#224; refl&#233;ter uniquement les besoins sp&#233;cifiques de chaque test. Cette m&#233;thode renforce la clart&#233; et la robustesse des tests en les rendant ind&#233;pendants des constructeurs des classes de production, tout en simplifiant la gestion des donn&#233;es de test.</p><p>Liens vers la ressource : </p><ul><li><p><a href="https://betterprogramming.pub/why-you-should-use-test-data-builders-714eb9de20c1">https://betterprogramming.pub/why-you-should-use-test-data-builders-714eb9de20c1</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Elegant Objects</h2><p>Ce n&#8217;est pas un article que j&#8217;ai d&#233;couvert cette semaine, cependant je suis repass&#233; dessus cette semaine.</p><p>Nous sommes beaucoup de d&#233;veloppeur &#224; d&#233;velopper en orient&#233; Objet, et souvent, l&#8217;utilisation d&#8217;objet se r&#233;sume &#224; des getters et des setters, ou bien service &#224; rallonge comportant toutes sortes de fonctions priv&#233;es ou public.</p><p>Le site <a href="https://www.elegantobjects.org/">Elegant Objects</a> regroupe une s&#233;rie de bonnes pratiques dans le design de vos objets.</p><p>Voici la liste des principes (ils sont expliqu&#233;s dans l&#8217;article) : </p><ul><li><p>Pas de valeur nulle</p></li><li><p>Pas de code dans les constructeurs</p></li><li><p>Pas de getters et de setters</p></li><li><p>Pas d'objets mutables</p></li><li><p>Pas de lecteurs, analyseurs, contr&#244;leurs, trieurs, etc.</p></li><li><p>Pas de m&#233;thodes statiques, m&#234;me priv&#233;es</p></li><li><p>Pas d'utilisation de instanceof, de type casting ou de r&#233;flexion</p></li><li><p>Pas de m&#233;thodes publiques sans contrat (interface)</p></li><li><p>Pas d'instructions dans les m&#233;thodes de test, except&#233; assertThat</p></li><li><p>Pas d'ORM ou ActiveRecord</p></li><li><p>Pas d'h&#233;ritage d'impl&#233;mentation</p></li></ul><p>Certains points piquent votre curiosit&#233; ? </p><p>Retrouvez les explications dans la ressource ci-dessous : </p><ul><li><p><a href="https://www.elegantobjects.org/">https://www.elegantobjects.org/</a></p></li></ul><h2>Traefik 3</h2><p>Le reverse proxy Traefik vient de sortir sa v3</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MMoZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MMoZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 424w, https://substackcdn.com/image/fetch/$s_!MMoZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 848w, https://substackcdn.com/image/fetch/$s_!MMoZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 1272w, https://substackcdn.com/image/fetch/$s_!MMoZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MMoZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png" width="1200" height="675" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:675,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Traefik 3.0 GA has Landed: Here's How to Migrate&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Traefik 3.0 GA has Landed: Here's How to Migrate" title="Traefik 3.0 GA has Landed: Here's How to Migrate" srcset="https://substackcdn.com/image/fetch/$s_!MMoZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 424w, https://substackcdn.com/image/fetch/$s_!MMoZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 848w, https://substackcdn.com/image/fetch/$s_!MMoZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 1272w, https://substackcdn.com/image/fetch/$s_!MMoZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd866e8be-f695-4c95-82ec-9ffa273dd07d_1200x675.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Voici les principales nouveaut&#233;s de Traefik v3 :</p><h3><strong>Prise en charge de HTTP/3</strong></h3><p>HTTP/3, bas&#233; sur le protocole QUIC d&#233;velopp&#233; par Google, est d&#233;sormais enti&#232;rement pris en charge et pr&#234;t pour la production. Il apporte des am&#233;liorations en termes de performances, d'&#233;tablissement de connexion plus rapide et de chiffrement simplifi&#233;.</p><h3><strong>Support de WebAssembly (Wasm)</strong></h3><p>Traefik v3 introduit le support des plugins WebAssembly, permettant d'&#233;tendre ses fonctionnalit&#233;s avec du code personnalis&#233; &#233;crit dans des langages comme Rust, C++ ou AssemblyScript.</p><h3><strong>Int&#233;gration d'OpenTelemetry</strong></h3><p>OpenTelemetry, un standard pour l'instrumentation, la g&#233;n&#233;ration de m&#233;triques et le tra&#231;age distribu&#233;, est d&#233;sormais int&#233;gr&#233; dans Traefik. Cela permet une meilleure observabilit&#233; et un suivi des performances.</p><h3><strong>Am&#233;liorations de la configuration Kubernetes</strong></h3><p>La configuration via les Custom Resource Definitions (CRD) Kubernetes a &#233;t&#233; am&#233;lior&#233;e, avec notamment la suppression du groupe d'API traefik.containo.us au profit de traefik.io.</p><h3><strong>Processus de migration simplifi&#233;</strong></h3><p>Une attention particuli&#232;re a &#233;t&#233; port&#233;e pour faciliter la migration depuis Traefik v2, avec un guide de migration d&#233;taill&#233;, la compatibilit&#233; ascendante de la configuration v2 et la possibilit&#233; de migrer progressivement. En r&#233;sum&#233;, Traefik v3 apporte des am&#233;liorations majeures en termes de performances, d'extensibilit&#233;, d'observabilit&#233; et de facilit&#233; de migration depuis la version pr&#233;c&#233;dente.</p><p>Voici les ressources : </p><ul><li><p><a href="https://traefik.io/blog/announcing-traefik-proxy-v3-rc/">https://traefik.io/blog/announcing-traefik-proxy-v3-rc/</a></p></li><li><p><a href="https://github.com/traefik/traefik">https://github.com/traefik/traefik</a></p></li></ul><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://github.com/drawdb-io/drawdb">drawdb</a> &#8212; Un outil pour designer vos bases de donn&#233;es et g&#233;n&#233;rer le script de cr&#233;ation</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Xi3c!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Xi3c!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 424w, https://substackcdn.com/image/fetch/$s_!Xi3c!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 848w, https://substackcdn.com/image/fetch/$s_!Xi3c!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 1272w, https://substackcdn.com/image/fetch/$s_!Xi3c!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Xi3c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png" width="1456" height="721" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:721,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:142545,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Xi3c!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 424w, https://substackcdn.com/image/fetch/$s_!Xi3c!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 848w, https://substackcdn.com/image/fetch/$s_!Xi3c!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 1272w, https://substackcdn.com/image/fetch/$s_!Xi3c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bad34c5-f56d-448e-9678-0595b94b7c86_1564x774.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>drawdb est un &#233;diteur d&#8217;entit&#233; et de relation de base de donn&#233;es. Il se rapproche d&#8217;autres solutions payantes comme <a href="https://drawsql.app/">drawsql</a>.</p><p>Que ce soit pour designer votre base de donn&#233;es en amont ou pour alimenter votre documentation par la suite, cet outil vous sera utile.</p><p>Il est self-hostable, permet d&#8217;enregistrer les diagrammes et permet &#233;galement d&#8217;en exporter le script de cr&#233;ation pour divers SGBD.</p><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://github.com/drawdb-io/drawdb">https://github.com/drawdb-io/drawdb</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/mysql-et-son-index-intelligent-le?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/mysql-et-son-index-intelligent-le?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[Réseau social distribué, rachat d'HashiCorp, test de Sean Ellis & ChatGPT en local]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/reseau-social-distribue-rachat-dhashicorp</link><guid isPermaLink="false">https://stocki.substack.com/p/reseau-social-distribue-rachat-dhashicorp</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Sat, 27 Apr 2024 10:52:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!cqyJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Cette semaine, j&#8217;&#233;tais principalement off, malgr&#233; un court passage sur Paris pour assister &#224; notre premi&#232;re rencontre entre startup dans notre incubateur Paris&amp;Co. Un moment riche en convivialit&#233; et en partage ! Si tu veux en apprendre davantage sur notre incubation et sur les startups qui composent notre promotion, n&#8217;h&#233;site pas &#224; faire un tour sur <a href="https://www.linkedin.com/feed/update/urn:li:activity:7189560071486365697/">ce post</a> de Nora L&#233;on, notre directrice de la communication chez Nightgoes &#128522;.</p><p>Qui dit off, dit retard dans la r&#233;daction de la newsletter (sorry, j&#8217;&#233;tais &#224; <a href="https://www.europapark.de/fr">Europa Park</a> hier &#128064;).</p><p>Bonne lecture !</p><h2>Construire un r&#233;seau social distribu&#233;</h2><p>C&#8217;est probablement l&#8217;article qui m&#8217;a le plus marqu&#233; cette semaine, pas tant sur l&#8217;approche technique, mais plut&#244;t sur l&#8217;approche produit. </p><p>L&#8217;article parle de la construction de BlueSky (aka le nouveau &#8220;Twitter&#8221;). On y apprend des choses int&#233;ressantes, comme le fait qu&#8217;ils ont &#233;tudi&#233; la possibilit&#233; d&#8217;utiliser le protocole <a href="https://fr.wikipedia.org/wiki/ActivityPub">ActivityPub</a> (le protocole derri&#232;re Mastodon entre autres) pour finalement se rendre compte qu&#8217;il n&#8217;&#233;tait pas adapt&#233; &#224; leur produit et construire leur propre protocole.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cqyJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cqyJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 424w, https://substackcdn.com/image/fetch/$s_!cqyJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 848w, https://substackcdn.com/image/fetch/$s_!cqyJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 1272w, https://substackcdn.com/image/fetch/$s_!cqyJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cqyJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png" width="1196" height="658" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:658,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Jay Graber: Building Bluesky and a Decentralized Social Media Protocol |  Protocol Labs&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Jay Graber: Building Bluesky and a Decentralized Social Media Protocol |  Protocol Labs" title="Jay Graber: Building Bluesky and a Decentralized Social Media Protocol |  Protocol Labs" srcset="https://substackcdn.com/image/fetch/$s_!cqyJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 424w, https://substackcdn.com/image/fetch/$s_!cqyJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 848w, https://substackcdn.com/image/fetch/$s_!cqyJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 1272w, https://substackcdn.com/image/fetch/$s_!cqyJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe95c83a-f076-4319-8457-5d19da88e6e4_1196x658.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Si aujourd&#8217;hui, le r&#233;seau n&#8217;a plus de liens direct avec Twitter, c&#8217;est pourtant un projet qui a &#233;t&#233; financ&#233; par ce dernier &#224; ses d&#233;buts.</p><p>On y trouve d&#8217;autes infos int&#233;ressantes comme le fait qu&#8217;ils ont migr&#233; de Postgres vers SQLite et ScyllaDB ou encore qu&#8217;ils sont parti de AWS pour revenir sur du On-Premise.</p><p>Je vous laisse d&#233;couvrir l&#8217;article (pr&#233;voyez 10-15 minutes) : </p><div class="embedded-post-wrap" data-attrs="{&quot;id&quot;:114113498,&quot;url&quot;:&quot;https://newsletter.pragmaticengineer.com/p/bluesky&quot;,&quot;publication_id&quot;:458709,&quot;publication_name&quot;:&quot;The Pragmatic Engineer&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecbf7ac-260b-423b-8493-26783bf01f06_600x600.png&quot;,&quot;title&quot;:&quot;Building Bluesky: a Distributed Social Network (Real-World Engineering Challenges)&quot;,&quot;truncated_body_text&quot;:&quot;Before we start: AI tooling for software development feels like it has hit \&quot;peak hype\&quot; across mainstream media. We would like to do a \&quot;reality check\&quot; and find out how engineers and teams are using these tools (and which tools/use cases are genuinely efficient). Please&quot;,&quot;date&quot;:&quot;2024-04-23T16:01:40.763Z&quot;,&quot;like_count&quot;:173,&quot;comment_count&quot;:0,&quot;bylines&quot;:[{&quot;id&quot;:30107029,&quot;name&quot;:&quot;Gergely Orosz&quot;,&quot;handle&quot;:&quot;pragmaticengineer&quot;,&quot;previous_name&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F802a32bb-2048-428b-bdb5-d6acd1e2b2d5_48x48.png&quot;,&quot;bio&quot;:&quot;Writing The Pragmatic Engineer. Previously at Uber, Skype, Microsoft. Author of The Software Engineer's Guidebook.&quot;,&quot;profile_set_up_at&quot;:&quot;2021-09-06T16:08:47.417Z&quot;,&quot;publicationUsers&quot;:[{&quot;id&quot;:385140,&quot;user_id&quot;:30107029,&quot;publication_id&quot;:458709,&quot;role&quot;:&quot;admin&quot;,&quot;public&quot;:true,&quot;is_primary&quot;:false,&quot;publication&quot;:{&quot;id&quot;:458709,&quot;name&quot;:&quot;The Pragmatic Engineer&quot;,&quot;subdomain&quot;:&quot;pragmaticengineer&quot;,&quot;custom_domain&quot;:&quot;newsletter.pragmaticengineer.com&quot;,&quot;custom_domain_optional&quot;:false,&quot;hero_text&quot;:&quot;Big Tech and startups, from the inside. Highly relevant for software engineers and managers, useful for those working in tech.&quot;,&quot;logo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/5ecbf7ac-260b-423b-8493-26783bf01f06_600x600.png&quot;,&quot;author_id&quot;:30107029,&quot;theme_var_background_pop&quot;:&quot;#FF6B00&quot;,&quot;created_at&quot;:&quot;2021-08-25T13:08:12.798Z&quot;,&quot;rss_website_url&quot;:null,&quot;email_from_name&quot;:&quot;The Pragmatic Engineer&quot;,&quot;copyright&quot;:&quot;Gergely Orosz&quot;,&quot;founding_plan_name&quot;:null,&quot;community_enabled&quot;:true,&quot;invite_only&quot;:false,&quot;payments_state&quot;:&quot;enabled&quot;,&quot;language&quot;:null,&quot;explicit&quot;:false}}],&quot;twitter_screen_name&quot;:&quot;GergelyOrosz&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null},{&quot;id&quot;:195857764,&quot;name&quot;:&quot;Elin Nilsson&quot;,&quot;handle&quot;:&quot;hejelin&quot;,&quot;previous_name&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d50df539-b937-4b9d-b22d-0aa89c809d67_1080x1080.jpeg&quot;,&quot;bio&quot;:&quot;Tech industry researcher, engineer, enthusiast of things &#129489;&#8205;&#128187; Doing research for The Pragmatic Engineer.&quot;,&quot;profile_set_up_at&quot;:&quot;2024-02-16T14:42:30.277Z&quot;,&quot;is_guest&quot;:true,&quot;bestseller_tier&quot;:null,&quot;primaryPublicationId&quot;:2482680,&quot;primaryPublicationName&quot;:&quot;Hej Elin!&quot;,&quot;primaryPublicationUrl&quot;:&quot;https://hejelin.substack.com&quot;,&quot;primaryPublicationSubscribeUrl&quot;:&quot;https://hejelin.substack.com/subscribe?&quot;}],&quot;utm_campaign&quot;:null,&quot;belowTheFold&quot;:true,&quot;type&quot;:&quot;newsletter&quot;,&quot;language&quot;:&quot;en&quot;,&quot;source&quot;:null}" data-component-name="EmbeddedPostToDOM"><a class="embedded-post" native="true" href="https://newsletter.pragmaticengineer.com/p/bluesky?utm_source=substack&amp;utm_campaign=post_embed&amp;utm_medium=web"><div class="embedded-post-header"><img class="embedded-post-publication-logo" src="https://substackcdn.com/image/fetch/$s_!6TJt!,w_56,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecbf7ac-260b-423b-8493-26783bf01f06_600x600.png" loading="lazy"><span class="embedded-post-publication-name">The Pragmatic Engineer</span></div><div class="embedded-post-title-wrapper"><div class="embedded-post-title">Building Bluesky: a Distributed Social Network (Real-World Engineering Challenges)</div></div><div class="embedded-post-body">Before we start: AI tooling for software development feels like it has hit "peak hype" across mainstream media. We would like to do a "reality check" and find out how engineers and teams are using these tools (and which tools/use cases are genuinely efficient). Please&#8230;</div><div class="embedded-post-cta-wrapper"><span class="embedded-post-cta">Read more</span></div><div class="embedded-post-meta">2 years ago &#183; 173 likes &#183; Gergely Orosz and Elin Nilsson</div></a></div><h2>Hashicorp rachet&#233; par IBM </h2><p>IBM serait en passe de racheter HashiCorp (la soci&#233;t&#233; derri&#232;re Terraform) pour une somme de 6,4 milliards de dollars (&#224; titre indicatif, le programme du t&#233;lescope James Webb a co&#251;t&#233; 10 milliards jusqu&#8217;ici).</p><p>La combinaison du portefeuille et de l'expertise d'IBM avec les capacit&#233;s et le talent de HashiCorp permettra de cr&#233;er une plateforme de cloud hybride compl&#232;te con&#231;ue pour l'&#232;re de l'IA.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ovj8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ovj8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 424w, https://substackcdn.com/image/fetch/$s_!Ovj8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 848w, https://substackcdn.com/image/fetch/$s_!Ovj8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 1272w, https://substackcdn.com/image/fetch/$s_!Ovj8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ovj8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp" width="960" height="540" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:540,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;What is Infrastructure as Code with Terraform? | Terraform | HashiCorp  Developer&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="What is Infrastructure as Code with Terraform? | Terraform | HashiCorp  Developer" title="What is Infrastructure as Code with Terraform? | Terraform | HashiCorp  Developer" srcset="https://substackcdn.com/image/fetch/$s_!Ovj8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 424w, https://substackcdn.com/image/fetch/$s_!Ovj8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 848w, https://substackcdn.com/image/fetch/$s_!Ovj8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 1272w, https://substackcdn.com/image/fetch/$s_!Ovj8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5eaf28-c4b8-4e07-9311-c2f46d077edf_960x540.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Le changement de licence de Terraform (open source vers propri&#233;taire) en ao&#251;t 2023 laiss&#233; pr&#233;sager d&#8217;une telle d&#233;marche.</p><p>Liens vers les ressources : </p><ul><li><p><a href="https://newsroom.ibm.com/2024-04-24-IBM-to-Acquire-HashiCorp-Inc-Creating-a-Comprehensive-End-to-End-Hybrid-Cloud-Platform">https://newsroom.ibm.com/2024-04-24-IBM-to-Acquire-HashiCorp-Inc-Creating-a-Comprehensive-End-to-End-Hybrid-Cloud-Platform</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Portfolio des comp&#233;tences web</h2><p>Je suis tomb&#233; dessus via un post sur Twitter dont je n&#8217;arrive plus &#224; retrouver l&#8217;auteur. La page distingue les diff&#233;rentes comp&#233;tences li&#233;es au d&#233;veloppement web et propose des ressources pour gagner en comp&#233;tence sur les diff&#233;rents points.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6U7M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6U7M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 424w, https://substackcdn.com/image/fetch/$s_!6U7M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 848w, https://substackcdn.com/image/fetch/$s_!6U7M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 1272w, https://substackcdn.com/image/fetch/$s_!6U7M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6U7M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png" width="1456" height="1003" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1003,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:459984,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6U7M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 424w, https://substackcdn.com/image/fetch/$s_!6U7M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 848w, https://substackcdn.com/image/fetch/$s_!6U7M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 1272w, https://substackcdn.com/image/fetch/$s_!6U7M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3bb7d63a-3c88-4dcf-ae11-d9664860b7f6_2916x2008.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Lien vers la ressource : </p><ul><li><p><a href="https://andreasbm.github.io/web-skills/">https://andreasbm.github.io/web-skills/</a></p></li></ul><h2>Le test de Sean Ellis : Une m&#233;thode efficace pour d&#233;terminer votre product market fit</h2><p>Durant mon passage &#224; Paris, j&#8217;ai eu l&#8217;occasion d&#8217;assister &#224; une session &#8220;Du MVP au Product Market Fit&#8221; durant laquelle j&#8217;ai d&#233;couvert le test de Sean Ellis</p><p>Le test de Sean Ellis, &#233;galement connu sous le nom de "Net Promoter Score (NPS) Survey", est une m&#233;thode utilis&#233;e pour mesurer la satisfaction et la fid&#233;lit&#233; des clients. Sean Ellis, un conseiller en d&#233;marrage d'entreprise et entrepreneur, a popularis&#233; cette approche, en particulier dans le contexte de l'&#233;valuation du potentiel de croissance d'une entreprise.</p><p>Le test consiste &#224; poser aux clients une seule question : "Sur une &#233;chelle de 0 &#224; 10, &#224; quel point &#234;tes-vous susceptible de recommander notre produit/service &#224; un ami ou &#224; un coll&#232;gue ?" En fonction de leurs r&#233;ponses, les clients sont r&#233;partis en trois groupes :</p><ol><li><p>Promoteurs (note de 9 &#224; 10) : ces clients sont tr&#232;s satisfaits et sont susceptibles de promouvoir le produit ou le service aupr&#232;s d'autres personnes.</p></li><li><p>Passifs (note de 7 &#224; 8) : ces clients sont quelque peu satisfaits, mais pas enthousiastes. Ils sont moins susceptibles de promouvoir activement le produit, mais peuvent ne pas d&#233;courager activement les autres de l'utiliser.</p></li><li><p>D&#233;tracteurs (note de 0 &#224; 6) : ces clients ne sont pas satisfaits et peuvent m&#234;me dissuader activement les autres d'utiliser le produit ou le service.</p></li></ol><p>Pour calculer le score Net Promoter, vous soustrayez le pourcentage de d&#233;tracteurs du pourcentage de promoteurs. Le score obtenu peut varier de -100 (si tous les r&#233;pondants sont des d&#233;tracteurs) &#224; +100 (si tous les r&#233;pondants sont des promoteurs). Un score positif indique que la majorit&#233; des clients sont des promoteurs, ce qui est g&#233;n&#233;ralement consid&#233;r&#233; comme un signe d'une entreprise saine et en croissance.</p><p>Lien vers la ressource : </p><ul><li><p><a href="https://www.pisano.com/en/academy/sean-ellis-test-figure-out-product-market-fit">https://www.pisano.com/en/academy/sean-ellis-test-figure-out-product-market-fit</a></p></li></ul><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://docs.openwebui.com/">OpenWebUI</a> &#8212; Une interface UI pour communiquer avec votre LLM en local</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F3fB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F3fB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 424w, https://substackcdn.com/image/fetch/$s_!F3fB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 848w, https://substackcdn.com/image/fetch/$s_!F3fB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 1272w, https://substackcdn.com/image/fetch/$s_!F3fB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F3fB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png" width="1392" height="782" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:782,&quot;width&quot;:1392,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:730422,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!F3fB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 424w, https://substackcdn.com/image/fetch/$s_!F3fB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 848w, https://substackcdn.com/image/fetch/$s_!F3fB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 1272w, https://substackcdn.com/image/fetch/$s_!F3fB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe090ea46-4e88-4631-b509-b0a68cbe73a9_1392x782.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Cette interface vous est famili&#232;re ? Elle fonctionne sur votre machine et est connect&#233; &#224; un LLM qui tourne &#233;galement chez vous. </p><p>La liste des features est longue comme deux fois moi bras et elle permet notamment l&#8217;int&#233;gration rapide de donn&#233;es personnelle (fichiers pdf, image, &#8230;) sans avoir besoin de trop se casser la t&#234;te.</p><p>&#199;a se lance &#233;videmment &#224; l&#8217;aide de Docker en deux secondes.</p><p>Je vous laisse aller faire un tour sur leur documentation.</p><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://docs.openwebui.com/">https://docs.openwebui.com/</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/reseau-social-distribue-rachat-dhashicorp?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/reseau-social-distribue-rachat-dhashicorp?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[Llama 3, agents autonomes et design pattern]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/llama-3-agents-autonomes-et-design</link><guid isPermaLink="false">https://stocki.substack.com/p/llama-3-agents-autonomes-et-design</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 19 Apr 2024 13:51:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!t3hQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Cette semaine, je n&#8217;ai pas grand-chose &#224; raconter, comme je le disais la semaine derni&#232;re, on a re&#231;u Romain Lanz et Esteban Soubiran pour un Meetup JS &#224; Strasbourg. </p><p>La rediffusion arrive, et on me dit dans l&#8217;oreillette qu&#8217;il se pourrait m&#234;me que deux &#233;pisodes d&#8217;un nouveau podcast arrivent &#233;galement &#128064;</p><p>J&#8217;ai quand m&#234;me d&#233;nich&#233; quelques articles d&#8217;actualit&#233; int&#233;ressants.</p><p>Bonne lecture !</p><h2>La sortie de Llama 3</h2><p>Mistral nous d&#233;voilait son nouveau mod&#232;le la semaine derni&#232;re, c&#8217;est au tour de Meta de nous publier deux nouveaux mod&#232;le open source de Llama 3 (8B et 70B)</p><p>D&#8217;apr&#232;s leurs tests (dont on peut toujours douter de l&#8217;objectivit&#233;), ils explosent les mod&#232;les open source concurrents. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!t3hQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!t3hQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 424w, https://substackcdn.com/image/fetch/$s_!t3hQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 848w, https://substackcdn.com/image/fetch/$s_!t3hQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 1272w, https://substackcdn.com/image/fetch/$s_!t3hQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!t3hQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png" width="1408" height="804" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:804,&quot;width&quot;:1408,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Meta Llama 3&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Meta Llama 3" title="Meta Llama 3" srcset="https://substackcdn.com/image/fetch/$s_!t3hQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 424w, https://substackcdn.com/image/fetch/$s_!t3hQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 848w, https://substackcdn.com/image/fetch/$s_!t3hQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 1272w, https://substackcdn.com/image/fetch/$s_!t3hQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3615a0d4-3370-4b82-a8d9-f81d3feace14_1408x804.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Parmi les &#233;volutions apport&#233;es : </p><ul><li><p>Changement du tokenizer (le m&#233;canisme qui d&#233;coupe les entr&#233;es utilisateurs)</p></li><li><p>Le mod&#232;le a &#233;t&#233; entrain&#233; sur une base de 15 000 milliards de tokens glan&#233;s sur des sources disponibles publiquement en ligne (en gros le contenu qu&#8217;on produit). Ils ont tout de m&#234;me mis en place des filtres pour s&#8217;assurer de la qualit&#233; du contenu servant &#224; l&#8217;entrainement (NSFW, Heuristic, duplication s&#233;mantique).</p></li><li><p>La venue prochaine d&#8217;un model 400B (bon courage pour le faire tourner en local)</p></li></ul><p>Ce n&#8217;est qu&#8217;une question de semaines avant qu&#8217;une autre entit&#233; annonce un mod&#232;le open source encore plus performant.</p><p>Voici le lien vers les ressources&nbsp;:</p><ul><li><p><a href="https://ai.meta.com/blog/meta-llama-3/">https://ai.meta.com/blog/meta-llama-3/</a></p></li><li><p><a href="https://llama.meta.com/llama3/">https://llama.meta.com/llama3/</a></p></li></ul><h2>Coordination d&#8217;agent autonome </h2><p>Dans sa lettre, Andrew expose la collaboration multi-agents comme un mod&#232;le cl&#233; de conception des solutions &#224; base d&#8217;IA, o&#249; une t&#226;che complexe est divis&#233;e en sous-t&#226;ches g&#233;r&#233;es par diff&#233;rents agents, comme le d&#233;veloppement logiciel par des ing&#233;nieurs, des chefs de produit, et des designers. Chaque agent re&#231;oit des instructions sp&#233;cifiques pour maximiser l'efficacit&#233; et les &#233;tudes, telles que celle d&#8217;AutoGen mentionn&#233;e dans l'article, montrent que plusieurs agents sont plus performants qu&#8217;un seul.</p><p>Il compare &#233;galement la gestion de projets complexes en entreprise &#224; la coordination d'agents IA, o&#249; la segmentation en t&#226;ches permet une meilleure gestion des ressources. Les plateformes comme AutoGen et Crew AI facilitent l'adoption de solutions multi-agents. </p><p>Il conclut en parlant de l'importance de l'&#233;ducation continue et de l'exploration de technologies &#233;mergentes, encourageant l'usage de syst&#232;mes ouverts comme ChatDev et la quantification des mod&#232;les LLM pour les rendre plus accessibles.</p><p>Liens vers les ressources : </p><ul><li><p><a href="https://www.deeplearning.ai/the-batch/issue-245/">https://www.deeplearning.ai/the-batch/issue-245/</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Les mauvaises pratiques au sein de votre framework</h2><p>Je travaille avec le framework Laravel depuis quelques ann&#233;es, et il y a une utilisation automatique d&#8217;un pattern propos&#233; par ce framework qui m&#8217;a toujours irrit&#233; : la <a href="https://refactoring.guru/design-patterns/facade">Facade</a>.</p><p>Quand j&#8217;ai un avis sur une chose, j&#8217;essaye toujours de chercher de la litt&#233;rature sur le sujet, afin de conforter ou de mettre en confrontation mon avis avec certains b&#233;n&#233;fices que je n&#8217;aurais pas vus (&#231;a arrive souvent).</p><p>Je suis tomb&#233; sur ce vieil article de Carsten Widler - &#8220;<a href="https://carstenwindler.de/php/automated-bad-practice/">Automated bad practice</a>&#8221; qui met les mots sur mon ressenti.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cARv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cARv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 424w, https://substackcdn.com/image/fetch/$s_!cARv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 848w, https://substackcdn.com/image/fetch/$s_!cARv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 1272w, https://substackcdn.com/image/fetch/$s_!cARv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cARv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png" width="300" height="161" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:161,&quot;width&quot;:300,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;When did Cache::get(); become hotter than $this->cache->get();&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="When did Cache::get(); become hotter than $this->cache->get();" title="When did Cache::get(); become hotter than $this->cache->get();" srcset="https://substackcdn.com/image/fetch/$s_!cARv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 424w, https://substackcdn.com/image/fetch/$s_!cARv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 848w, https://substackcdn.com/image/fetch/$s_!cARv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 1272w, https://substackcdn.com/image/fetch/$s_!cARv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16be1d8f-7176-43ff-82f6-2b7f72ec4a21_300x161.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Le vrai probl&#232;me des Facades dans Laravel ? Elles peuvent &#234;tre utilis&#233;es n&#8217;importe o&#249; ! Surtout &#224; des endroits o&#249; elles ne devraient pas l&#8217;&#234;tre (dans un fichier de configuration par exemple). </p><p>Elles forcent un couplage fort avec le framework (exit l&#8217;IOC). Elles rendent le code plus long &#224; tester (obliger de charger le c&#339;ur du framework &#224; chaque fois).</p><p>C&#8217;est un probl&#232;me qui existe surtout sur les projets legacy de Laravel, cependant si tu d&#233;butes sur ce framework, utilise l&#8217;injection de d&#233;pendance &#224; la place.</p><p>Lien vers la ressource : </p><ul><li><p><a href="https://carstenwindler.de/php/automated-bad-practice/">https://carstenwindler.de/php/automated-bad-practice/</a></p></li></ul><h2>Comment d&#233;couvrir des designs patterns ? </h2><p>L&#8217;article pr&#233;c&#233;dent m&#8217;a fait penser &#224; <a href="https://refactoring.guru/">Refactoring Guru</a> qui est un excellent site pour d&#233;couvrir et comprendre les diff&#233;rents patrons de conception (design pattern en fran&#231;ais) existant et leur utilit&#233; illustr&#233;e par l&#8217;exemple.</p><p>Exemple d&#8217;utilisation d&#8217;un pattern Strategy</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hQKP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hQKP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 424w, https://substackcdn.com/image/fetch/$s_!hQKP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 848w, https://substackcdn.com/image/fetch/$s_!hQKP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 1272w, https://substackcdn.com/image/fetch/$s_!hQKP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hQKP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png" width="570" height="280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:280,&quot;width&quot;:570,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Route planning strategies&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Route planning strategies" title="Route planning strategies" srcset="https://substackcdn.com/image/fetch/$s_!hQKP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 424w, https://substackcdn.com/image/fetch/$s_!hQKP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 848w, https://substackcdn.com/image/fetch/$s_!hQKP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 1272w, https://substackcdn.com/image/fetch/$s_!hQKP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62eed710-fedd-40b7-aa86-f8d838a94a9a_570x280.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Allez y faire un tour !</p><p>Lien vers la ressource : </p><ul><li><p>https://refactoring.guru/</p></li></ul><h2>Encore envie de lire ?</h2><p>Allez faire un tour sur le blog et suivre le poto <a href="https://www.linkedin.com/in/kevinblenner">Kevin</a>, qui nous a sorti une veille aux petits oignons ce vendredi &#233;galement. Les ferrus de .NET appr&#233;cieront !</p><p><a href="https://blog.kjbconseil.com/posts/friday-tech-monitoring/">https://blog.kjbconseil.com/posts/friday-tech-monitoring/</a></p><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://github.com/ueberdosis/tiptap">TipTap</a> &#8212; Un editeur wysiwyg headless et open source</h3><p>Tiptap est un &#233;diteur "headless", c'est-&#224;-dire sans interface utilisateur fixe, vous laissant ainsi une libert&#233; totale de design. Cette approche vous permet de cr&#233;er des interfaces sur mesure, adapt&#233;es aux besoins sp&#233;cifiques de vos projets. Pour ceux qui recherchent une solution rapide, Tiptap propose &#233;galement des mod&#232;les d'interface utilisateur pr&#234;ts &#224; l'emploi.</p><p>Il est bas&#233; sur la librairie open source <a href="https://github.com/ProseMirror/prosemirror">ProseMirror</a></p><h4>Compatibilit&#233; et extensions</h4><p>L'un des grands atouts de Tiptap est son caract&#232;re agnostique. Il s&#8217;int&#232;gre sans souci au sein des frameworks et librairies frontend actuelles comme Vue, React ou simplement en vanilla JS. </p><p>Il est hautement extensible : il est possible d'ajouter plus de 100 extensions diff&#233;rentes, disponibles via sa documentation et sa communaut&#233;. Ces extensions permettent de personnaliser l'exp&#233;rience d'&#233;dition, allant de la simple mise en style de texte aux fonctionnalit&#233;s avanc&#233;es comme l'&#233;dition de blocs par glisser-d&#233;poser.</p><h4><strong>Personnalisation</strong></h4><p>En plus de personnaliser l'interface, Tiptap vous permet de d&#233;finir vos propres extensions et n&#339;uds pour enrichir davantage l'&#233;diteur selon vos pr&#233;f&#233;rences.</p><p>Si vous cherchez un &#233;diteur de texte riche, flexible et puissant, Tiptap offre une plateforme robuste et adaptable pour toutes sortes d'applications web. <a href="https://blent.ai/blog/a/apache-airflow-automatiser-ses-pipelines-data"><br></a></p><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://github.com/ueberdosis/tiptap">https://github.com/ueberdosis/tiptap</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/llama-3-agents-autonomes-et-design?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/llama-3-agents-autonomes-et-design?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[Des nouvelles de Voyager 1 et de Mistral]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/des-nouvelles-de-voyager-1-et-de</link><guid isPermaLink="false">https://stocki.substack.com/p/des-nouvelles-de-voyager-1-et-de</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 12 Apr 2024 10:02:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!NuSr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Cette semaine, j&#8217;ai suivi la formation TDD de Micha&#235;l Azerhad, je ne peux que la recommander &#224; tout d&#233;veloppeur souhaitant se mettre au TDD et &#224; la Clean Architecture. Elle existe dans diff&#233;rents langages et framework, allez <a href="https://wealcomecompany.com/formations/">jeter un &#339;il </a></p><p>Fin de semaine plus calme. Ce soir, nous organisons un Meetup en pr&#233;sence de Romain Lanz (AdonisJS) et Esteban Soubiran (UnJS) pour pr&#233;senter ces deux frameworks et librairie. </p><p>Si vous &#234;tes sur Strasbourg n&#8217;h&#233;sitez pas &#224; vous inscrire et passer nous voir !</p><p>Lien pour s&#8217;inscrire : <a href="https://www.meetup.com/fr-FR/strasbourgjs/events/300016360/">https://www.meetup.com/fr-FR/strasbourgjs/events/300016360/</a></p><p>Le Meetup sera enregistr&#233; et rediffus&#233; ;)</p><p>Bonne lecture !</p><h2>Des nouvelles de Voyager 1</h2><p>J&#8217;en parlais dans cette newsletter <a href="https://stocki.substack.com/i/142785675/deboguer-du-code-cinquantenaire-a-milliards-de-kilometres">il y a quelques semaines</a>, les ing&#233;nieurs de la Nasa avait du mal &#224; r&#233;tablir la communication avec la sonde la plus &#233;loign&#233;e de notre plan&#232;te, Voyager 1.</p><p>Il semblerait que le dernier &#8220;poke&#8221; envoy&#233; &#224; la sonde ait retourn&#233; des informations int&#233;ressantes sur son &#233;tat de sant&#233;, et notamment celui du Flight Data Subsystem (FDS).</p><p>Il semblerait bel et bien que 3% de la m&#233;moire du FDS soit corrompu, emp&#234;chant un fonctionnement normal du syst&#232;me. </p><p>Les causes possibles : </p><ul><li><p>La puce &#233;lectronique a &#233;t&#233; frapp&#233;e par une particule &#233;nerg&#233;tique </p></li><li><p>L&#8217;usure naturelle du mat&#233;riel (&#226;ge de 46 ans, dans des conditions extr&#234;mes)</p></li></ul><p>Les ing&#233;nieurs semblent toutefois optimistes quant &#224; un possible retour &#224; la normale en trouvant un moyen de se passer de ces segments m&#233;moires pour le bon fonctionnement de la sonde. </p><p>Le challenge est d&#8217;autant plus grand, car une bonne partie des ing&#233;nieurs ayant con&#231;u les missions ne sont plus en vie pour apporter leur connaissance et aide sur le sujet. </p><p>Voici le lien vers l&#8217;article de blog de la Nasa :</p><ul><li><p><a href="https://blogs.nasa.gov/voyager/2024/04/04/engineers-pinpoint-cause-of-voyager-1-issue-are-working-on-solution/">https://blogs.nasa.gov/voyager/2024/04/04/engineers-pinpoint-cause-of-voyager-1-issue-are-working-on-solution/</a></p></li></ul><h2>Mistral souffle sa fraicheur sur l'&#233;cosyst&#232;me</h2><p>Bonjour le jeu de mot pourri, mais c'&#233;tait trop tentant.</p><p>Ce mercredi, le fleuron Fran&#231;ais de l'intelligence artificiel a r&#233;cidiv&#233; en publiant un tweet laconique contenant un lien magnet permettant de t&#233;l&#233;charger via un client BitTorrent leur dernier LLM Mistral 8x22B (22 milliards de param&#232;tres).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NuSr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NuSr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 424w, https://substackcdn.com/image/fetch/$s_!NuSr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 848w, https://substackcdn.com/image/fetch/$s_!NuSr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 1272w, https://substackcdn.com/image/fetch/$s_!NuSr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NuSr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png" width="1388" height="808" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:808,&quot;width&quot;:1388,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:315383,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NuSr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 424w, https://substackcdn.com/image/fetch/$s_!NuSr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 848w, https://substackcdn.com/image/fetch/$s_!NuSr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 1272w, https://substackcdn.com/image/fetch/$s_!NuSr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8bf2c9c3-c6d8-45d5-a2e5-d1f828e30d82_1388x808.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Tu peux cliquer directement <a href="http://magnet:?xt=urn:btih:9238b09245d0d8cd915be09927769d5f7584c1c9&amp;dn=mixtral-8x22b&amp;tr=udp%3A%2F%[http://2Fopen.demonii.com](https://t.co/2UepcMGLGd)%3A1337%2Fannounce&amp;tr=http%3A%2F%https://t.co/OdtBUsbeV5%3A1337%2Fannounce">ici</a> pour t&#233;l&#233;charger le torrent ou via le lien du tweet &#224; la fin de ce texte.</p><p>Il est &#233;galement disponible sur <a href="https://huggingface.co/mistral-community/Mixtral-8x22B-v0.1">Hugging Face</a> (tu peux le d&#233;ployer directement depuis HF).</p><p>La Startup est une habitu&#233;e de ce genre de pratique, sans grande communication. Le mode de transmission est &#233;galement porteur d'un message. "Le message c'est le medium" disait Marshall McLuhan, le protocol BitTorrent &#233;tant surtout connu pour le partage d'&#339;uvres sous licences. </p><p>Le partage de ce mod&#232;le peut-&#234;tre interpreter comme un moyen de montrer qu'ils gardent leur ind&#233;pendance malgr&#233; leur rapprochement avec Microsoft, mais &#233;galement qu'ils pensent que l'avenir de l'IA passe par un partage des connaissances (&#224; l'image de Facebook et LLAMA).</p><p>Liens vers les ressources : </p><ul><li><p><a href="https://www.numerama.com/tech/1669116-la-startup-francaise-mistral-ai-sort-en-torrent-un-autre-modele-de-langage-de-262-go.html">https://www.numerama.com/tech/1669116-la-startup-francaise-mistral-ai-sort-en-torrent-un-autre-modele-de-langage-de-262-go.html</a></p></li></ul><ul><li><p><a href="https://twitter.com/mistralai/status/1777869263778291896">https://twitter.com/mistralai/status/1777869263778291896</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Tester rapidement un LLM Open Source sans l&#8217;installer</h2><p>Suite &#224; une discussion &#224; la machine &#224; caf&#233; ce matin avec des coworkers, je me suis dit que j&#8217;allais re-pr&#233;senter <a href="https://groq.com/">Groq</a>. J&#8217;ai d&#233;couvert ce service le mois dernier suite &#224; un article sur les performances de leur service (ils avoisinent les 300 tokens / s en r&#233;ponse de m&#233;moire). Performances boost&#233;es par l&#8217;utilisation d&#8217;une puce maison sp&#233;cialis&#233;e dans l&#8217;execution de LLM.</p><p>Le r&#233;sultat est assez bluffant, plus rapide qu&#8217;un GPT-3.5 pour du traitement de mise en forme par exemple (copier plein de donn&#233;es brut sous divers formats et lui demander d&#8217;agr&#233;ger &#231;a dans un JSON dont on passe &#233;galement le format).</p><p>Hafe fun</p><p>Lien vers la ressource : </p><ul><li><p><a href="https://groq.com/">https://groq.com/</a></p></li></ul><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://github.com/apache/airflow">Airflow</a> &#8212; Un orchestrateur de workflow open source</h3><p>Apache Airflow est un outil open source &#233;crit en Python qui permet d'orchestrer et de planifier des workflows de traitement de donn&#233;es. Voici les principales fonctionnalit&#233;s qu'il propose&nbsp;:</p><h4><strong>Mod&#233;lisation des workflows avec des DAGs</strong></h4><p>Les workflows sont mod&#233;lis&#233;s sous forme de graphes acycliques dirig&#233;s (DAGs) compos&#233;s de t&#226;ches. Chaque t&#226;che repr&#233;sente une op&#233;ration sp&#233;cifique et les d&#233;pendances entre les t&#226;ches d&#233;finissent l'ordre d'ex&#233;cution du workflow.</p><h4><strong>Planification et d&#233;clenchement des workflows</strong></h4><p>Airflow dispose d'un planificateur robuste qui analyse les DAGs et d&#233;clenche l'ex&#233;cution des t&#226;ches lorsque leurs d&#233;pendances sont satisfaites et que leur date d'ex&#233;cution logique est atteinte. Les workflows peuvent &#234;tre planifi&#233;s selon divers param&#232;tres (date, intervalle, &#233;v&#233;nement, etc.).</p><h4><strong>Monitoring et gestion des workflows</strong></h4><p>Une interface utilisateur web permet de visualiser l'&#201;tat des DAGs, de relancer des t&#226;ches &#233;chou&#233;es, de consulter les logs, etc. Airflow offre &#233;galement des fonctionnalit&#233;s avanc&#233;es comme la gestion des retards (SLA), les rappels en cas d'&#233;chec, etc.</p><h4><strong>Int&#233;gration avec divers syst&#232;mes</strong></h4><p>Airflow s'int&#232;gre facilement avec de nombreux syst&#232;mes gr&#226;ce &#224; ses op&#233;rateurs pr&#233;d&#233;finis (Bash, Python, SQL, Spark, Kubernetes, etc.) et peut &#234;tre &#233;tendu avec des op&#233;rateurs personnalis&#233;s.</p><h4><strong>Scaling</strong></h4><p>Airflow est con&#231;u pour s'ex&#233;cuter sur un cluster et scaler horizontalement pour g&#233;rer des volumes importants de workflows et de t&#226;ches concurrentes. </p><p></p><p>En r&#233;sum&#233;, Apache Airflow est un outil puissant et flexible pour orchestrer des pipelines de traitement de donn&#233;es complexes de mani&#232;re programmable, fiable et &#233;volutive.<a href="https://blent.ai/blog/a/apache-airflow-automatiser-ses-pipelines-data"><br></a></p><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://airflow.apache.org/">https://airflow.apache.org/</a></p></li><li><p><a href="https://github.com/apache/airflow">https://github.com/apache/airflow</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/des-nouvelles-de-voyager-1-et-de?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/des-nouvelles-de-voyager-1-et-de?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[XZ, Accesibility Man, Stuck City, Email Delivery... On en perd notre français !]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/xz-accesibility-man-stuck-city-email</link><guid isPermaLink="false">https://stocki.substack.com/p/xz-accesibility-man-stuck-city-email</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 05 Apr 2024 10:01:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!yFD-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Cette semaine, il est impossible de passer &#224; c&#244;t&#233; de l&#8217;attaque XZ qui a &#233;branl&#233; tout le monde de la tech le weekend dernier. </p><p>De mon c&#244;t&#233;, semaine plus calme, qui m&#8217;a laiss&#233; le temps de reprendre une veille et d&#8217;avancer sur mes diff&#233;rents projets. Je vous en parlerai prochainement ici.</p><p>Certains m&#8217;ont remont&#233; des probl&#232;mes de d&#233;rivabilit&#233; (le mail tombe dans les spams). Je vais voir ce que je peux faire, sachant que c&#8217;est Substack qui &#233;met les emails et qu&#8217;ils ne sont pour le moment pas authentifi&#233; (il y a un article qui parle de &#231;a plus loin dans cette lettre). En attendant, n&#8217;h&#233;sitez pas &#224; flagger l&#8217;&#233;metteur comme s&#251;r !</p><p>Bonne lecture !</p><h2>XZ attack</h2><p>C&#8217;&#233;tait la nouvelle du weekend de P&#226;ques, l&#8217;annonce d&#8217;une vuln&#233;rabilit&#233; au sein de la librairie de compression XZ (d&#233;couverte le 28 mars).</p><p>Grosso modo, un d&#233;veloppeur mal intentionn&#233;, a r&#233;ussi &#224; glisser une backdoor dans une librairie de compression utilis&#233;e au sein du programme sshd (qui g&#232;re les connexions SSH sur bon nombre de syst&#232;mes Linux). La backdoor &#233;coutant silencieusement les commandes d&#8217;un attaquant au d&#233;but du d&#233;marrage d&#8217;une session SSH quelconque, permettant &#224; ce dernier de lancer n&#8217;importe quelle commande sans avoir &#224; &#234;tre connect&#233; sur la machine distante.</p><p>&#9888;&#65038; Pensez &#224; mettre &#224; jour vos librairies !</p><p>La communaut&#233; a r&#233;ussi &#224; remonter la cha&#238;ne d&#8217;&#233;v&#233;nement permettant tout ceci. Cela a permis de mettre en lumi&#232;re, une fois de plus, la probl&#233;matique des d&#233;veloppeurs open source seuls &#224; maintenir des projets utilis&#233;s par un tr&#232;s (trop) grand nombre.</p><p>Derri&#232;re l&#8217;attaque XZ se cache surtout une belle utilisation de l&#8217;ing&#233;nierie sociale sur des d&#233;veloppeurs isol&#233;s n&#8217;arrivant pas &#224; l&#226;cher le flambeau. Attention, je ne veux surtout pas jeter l&#8217;opprobre sur le d&#233;veloppeur, loin de l&#224; ! Plut&#244;t, je souhaiterais que nous nous interrogions sur le r&#244;le que nous avons &#224; jouer en tant que d&#233;veloppeur pour &#233;viter que cela ne se reproduise ! S&#8217;il est difficile de demander de l&#8217;aide, il est parfois encore plus difficile d&#8217;accepter cette derni&#232;re.</p><p>Voici quelques ressources pour ceux qui veulent en savoir plus :</p><ul><li><p>Un article avec une <strong>belle infographie </strong>: <a href="https://arstechnica.com/security/2024/04/what-we-know-about-the-xz-utils-backdoor-that-almost-infected-the-world/">https://arstechnica.com/security/2024/04/what-we-know-about-the-xz-utils-backdoor-that-almost-infected-the-world/</a></p></li></ul><ul><li><p>La Timeline des &#233;v&#233;n&#233;ments (&#231;a commence en 2021) : <a href="https://research.swtch.com/xz-timeline">https://research.swtch.com/xz-timeline</a></p></li><li><p><a href="https://boehs.org/node/everything-i-know-about-the-xz-backdoor">https://boehs.org/node/everything-i-know-about-the-xz-backdoor</a></p></li><li><p><a href="https://twitter.com/ponceto91/status/1775754154230550596">https://twitter.com/ponceto91/status/1775754154230550596</a></p></li></ul><h2>Faire l&#8217;impasse sur l&#8217;accessibilit&#233; de ses composants ?</h2><p>C&#8217;est un probl&#232;me auquel je ne pense jamais, l&#8217;accessibilit&#233;, quand je suis amen&#233; &#224; customiser un composant ou &#224; produire un composant avec un fonctionnement custom.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yFD-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yFD-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 424w, https://substackcdn.com/image/fetch/$s_!yFD-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 848w, https://substackcdn.com/image/fetch/$s_!yFD-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 1272w, https://substackcdn.com/image/fetch/$s_!yFD-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yFD-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png" width="1388" height="1690" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1690,&quot;width&quot;:1388,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:716336,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!yFD-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 424w, https://substackcdn.com/image/fetch/$s_!yFD-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 848w, https://substackcdn.com/image/fetch/$s_!yFD-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 1272w, https://substackcdn.com/image/fetch/$s_!yFD-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3280f57b-91ed-4762-986c-645db63b007c_1388x1690.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Cette semaine, je tombe sur un tweet de <a href="https://twitter.com/_smontlouis">St&#233;phane</a>, qui me renvoie directement face &#224; mes propres r&#233;alisations &#128517;. N&#233;anmoins, comme cit&#233; plus bas dans la discussion, cela ne doit pas emp&#234;cher la production de code. Il faut r&#233;fl&#233;chir au contexte du composant : est-ce que c&#8217;est un composant pour une application interne ? Est-ce que c&#8217;est un composant destin&#233; &#224; &#234;tre diffus&#233; au grand public ? </p><p>Cependant, respecter les r&#232;gles d&#8217;accessibilit&#233; donne de bonnes guidelines sur la r&#233;alisation d&#8217;un composant propre, et sur la compr&#233;hension du fonctionnement des composants de base !</p><p>Voici une belle ressource partag&#233;e par St&#233;phane sur le sujet : </p><ul><li><p><strong>How to Build an Accessible Custom Dropdown Select Element</strong><br><a href="https://www.freecodecamp.org/news/how-to-build-an-accessible-custom-dropdown-select-element/">https://www.freecodecamp.org/news/how-to-build-an-accessible-custom-dropdown-select-element/</a></p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Comment se sortir d&#8217;une situation de blocage ?</h2><p>Ici, je reviens sur un article de d&#233;but d&#8217;ann&#233;e sur lequel je suis retomb&#233; r&#233;cemment et qui aborde la situation que l&#8217;on a tous d&#251; conna&#238;tre : se retrouver bloquer dans une situation et ne pas savoir par o&#249; commencer pour en sortir.</p><h3><strong>The cure is simple: do something.</strong></h3><p>Faites quelque chose ! M&#234;me si ce n&#8217;est pas grand-chose, faites le premier pas et laissez-vous happer par une direction. Cela vous lib&#233;rera de la culpabilit&#233; de ne rien faire en plus et de devoir prendre une d&#233;cision.</p><p>Je rajouterais &#224; &#231;a &#233;galement, faites ce que vous savez faire, n&#8217;essayez pas d&#8217;innover particuli&#232;rement ou de vous poser devant des d&#233;cisions qui ne sont pas strat&#233;giques (&#233;vitez le <a href="https://thedecisionlab.com/fr/biases/bikeshedding">bikeshedding</a>) : </p><ul><li><p>Dois-je partir avec tel ou tel pattern que je ne maitrise pas, mais qui semble adapter ? </p></li><li><p>J&#8217;ai l&#8217;habitude d&#8217;utiliser X IDE, mais j&#8217;h&#233;site &#224; passer sur Y IDE</p></li><li><p>Je suis &#224; l&#8217;aise avec UnRandomSGBD mais tout le monde parle de MuchHypeSGBD &#128533;</p></li></ul><p>Pour mener &#224; bien un projet ou une t&#226;che, il vaut mieux partir sur ce que vous savez faire. Si vous n&#8217;avez aucune connaissance sur un sujet sp&#233;cifique, faites une veille d&#8217;une heure dessus et prenez une d&#233;cision bas&#233;e sur vos crit&#232;res. La plupart des solutions se valent, et ne sont souvent pas strat&#233;giques en premier lieu. </p><p>Lien vers la ressource : </p><ul><li><p><a href="https://www.ggnotes.com/the-best-way-to-get-unstuck/">https://www.ggnotes.com/the-best-way-to-get-unstuck/</a></p></li></ul><h2>La d&#233;livrabilit&#233; des emails en 2024</h2><p>Les r&#232;gles de d&#233;livrabilit&#233; des emails chez Google et Yahoo &#233;voluent pour lutter contre le spam.</p><p>&#192; partir de Juin 2024, tous les exp&#233;diteurs de masses (Brevo, Mailchimp, Resend, ou simplement vous avec votre email perso) devront respecter certaines r&#232;gles : </p><ul><li><p>Authentifier les exp&#233;diteurs (via SPF, DMARC, DKIM)</p></li><li><p>Proposer un lien visible et clair de d&#233;sinscription en un click</p></li><li><p>Avoir obtenu le consentement &#233;clair&#233; de chaque utilisateur.</p></li></ul><p>L&#8217;article donne une d&#233;finition claire de ce qu&#8217;est un exp&#233;diteur de masse pour Google : </p><p>Un exp&#233;diteur qui envoie 5000 messages ou plus &#224; une adresse personnelle Gmail dans une p&#233;riode de 24 heures.</p><p>Lien vers la ressource : </p><ul><li><p><a href="https://www.xomedia.io/blog/a-deep-dive-into-email-deliverability/">https://www.xomedia.io/blog/a-deep-dive-into-email-deliverability/</a></p></li></ul><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://github.com/medusajs/medusa">Medusa</a> &#8212; Des bricks e-commerce &#224; la sauce Shopify</h3><p>Medusa est un ensemble de modules et d'outils de commerce qui vous permettent de construire des applications de commerce riches, fiables et performantes sans r&#233;inventer la logique de base du commerce. </p><p>Les modules peuvent &#234;tre personnalis&#233;s et utilis&#233;s pour construire des magasins de commerce &#233;lectronique avanc&#233;s, des places de march&#233;, ou tout autre produit qui n&#233;cessite des primitives de commerce fondamentales. </p><p>Tous les modules sont open-source et disponibles gratuitement sur npm.</p><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://medusajs.com/">https://medusajs.com/</a></p></li><li><p><a href="https://github.com/medusajs/medusa">https://github.com/medusajs/medusa</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/xz-accesibility-man-stuck-city-email?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/xz-accesibility-man-stuck-city-email?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[Ingénieur logiciel artificiel, communication en temps réel et Data visualisation ]]></title><description><![CDATA[Hello la team !]]></description><link>https://stocki.substack.com/p/ingenieur-logiciel-artificiel-communication</link><guid isPermaLink="false">https://stocki.substack.com/p/ingenieur-logiciel-artificiel-communication</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 29 Mar 2024 13:06:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!lQhT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello la team !</p><p>Je sors d&#8217;une semaine charg&#233;e, nous &#233;tions au salon <a href="https://www.changenow.world/fr/">ChangeNow</a> avec mon &#233;quipe de <a href="https://nightgoes.com/">Nightgoes</a> pour promouvoir l&#8217;utilisation du train de nuit lors d&#8217;une table ronde et rencontrer de nombreux acteurs de l&#8217;&#233;cosyst&#232;me.</p><p>N&#8217;habitant pas Paris, chaque passage dans la capitale poss&#232;de la capacit&#233; de me pomper bien plus d&#8217;&#233;nergie qu&#8217;il ne devrait. C&#8217;est tout simplement trop dense pour moi.</p><p>Passons aux articles, peu de veille cette semaine, je vous propose des nouvelles du mois que je n&#8217;ai pas partag&#233; pr&#233;c&#233;demment.</p><p>Bonne lecture !</p><h2>Devin, l&#8217;ing&#233;nieur logiciel artificiel</h2><p>Je n&#8217;en ai pas parl&#233; la semaine derni&#232;re, pour ceux qui ne suivent pas les news en rapport avec l&#8217;IA, la soci&#233;t&#233; <a href="https://www.cognition-labs.com/">CognitionLabs</a> a publi&#233; une d&#233;monstration de son agent IA permettant de d&#233;velopper des projets compl&#232;tement &#224; partir d&#8217;un prompt (c&#8217;est la promesse tout du moins).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lQhT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lQhT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 424w, https://substackcdn.com/image/fetch/$s_!lQhT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 848w, https://substackcdn.com/image/fetch/$s_!lQhT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!lQhT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lQhT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg" width="406" height="397.3725" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:783,&quot;width&quot;:800,&quot;resizeWidth&quot;:406,&quot;bytes&quot;:77601,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lQhT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 424w, https://substackcdn.com/image/fetch/$s_!lQhT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 848w, https://substackcdn.com/image/fetch/$s_!lQhT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!lQhT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a5c3e59-d539-4295-ae88-b1d78e833ff6_800x783.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>L&#8217;annonce a suscit&#233; toute sorte de r&#233;action, remettant une fois de plus en cause le m&#233;tier de d&#233;veloppeur. Je pr&#233;f&#232;re voir les choses diff&#233;remment, c&#8217;est un outil puissant &#224; la disposition des d&#233;veloppeurs. Les agents autonomes sont de plus en plus pr&#233;sents et la tendance ne risque pas de s&#8217;inverser. Cependant, il faudra toujours une (ou plusieurs) personne pour guider ces agents, comprendre le besoin client, assurer la qualit&#233; du r&#233;sultat et finalement, enrichir les mod&#232;les avec de la donn&#233;e fraiche (du code duquel s&#8217;inspirer).</p><p>Cela risque cependant de rendre dans un horizon 5-10 ans (c&#8217;est mon estimation et elle vaut ce qu&#8217;elle vaut) l&#8217;entr&#233;e dans le march&#233; des juniors plus compliqu&#233;, c&#8217;est un sujet que l&#8217;on aura l&#8217;occasion d&#8217;aborder ici &#224; l&#8217;avenir, j&#8217;en suis persuad&#233;.</p><p>Voici une rapide liste de tout ce que Devin est capable de faire : </p><ul><li><p>Devin peut apprendre &#224; utiliser des technologies qu'il ne conna&#238;t pas.</p></li><li><p>Devin peut construire et d&#233;ployer des applications de bout en bout.</p></li><li><p>Devin peut trouver et corriger de mani&#232;re autonome les bugs dans les bases de code.</p></li><li><p>Devin peut entra&#238;ner et affiner ses propres mod&#232;les d'IA.</p></li><li><p>Devin peut s'attaquer aux bugs et aux demandes de fonctionnalit&#233;s dans les d&#233;p&#244;ts open source. Avec juste un lien vers un probl&#232;me GitHub, Devin fait tout le travail de configuration et de collecte de contexte n&#233;cessaire.</p></li><li><p>Devin est capable de r&#233;pondre &#224; des demandes sur Upwork.</p></li></ul><p>Si cela vous int&#233;resse, je vous invite &#224; aller voir la publication sur le site de <a href="https://www.cognition-labs.com/">CognitionLabs</a>, vous y trouverez &#233;galement des vid&#233;os explicatives.</p><p>Lien vers les ressources : <br>- <a href="https://www.cognition-labs.com/introducing-devin">https://www.cognition-labs.com/introducing-devin</a></p><h2>Communication web en temps r&#233;el</h2><p>Lorsqu&#8217;on navigue sur un site internet, notre navigateur envoie une requ&#234;te vers le serveur du site, qui lui r&#233;pond, et la communication s&#8217;arr&#234;te ici, jusqu&#8217;&#224; la prochaine requ&#234;te du m&#234;me type.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6fh6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6fh6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 424w, https://substackcdn.com/image/fetch/$s_!6fh6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 848w, https://substackcdn.com/image/fetch/$s_!6fh6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 1272w, https://substackcdn.com/image/fetch/$s_!6fh6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6fh6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png" width="468" height="204.50716981132075" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:579,&quot;width&quot;:1325,&quot;resizeWidth&quot;:468,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A brief explanation of the Request / Response Model in Web Development | by  Ruman Ahmed | Medium&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A brief explanation of the Request / Response Model in Web Development | by  Ruman Ahmed | Medium" title="A brief explanation of the Request / Response Model in Web Development | by  Ruman Ahmed | Medium" srcset="https://substackcdn.com/image/fetch/$s_!6fh6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 424w, https://substackcdn.com/image/fetch/$s_!6fh6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 848w, https://substackcdn.com/image/fetch/$s_!6fh6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 1272w, https://substackcdn.com/image/fetch/$s_!6fh6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f387f37-d5f4-40da-a69b-6e34c4d8379c_1325x579.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Dans de nombreux cas d&#8217;usage, on souhaiterait maintenir cette connexion, que ce soit c&#244;t&#233; serveur et/ou c&#244;t&#233; client.</p><p>Il existe diff&#233;rentes m&#233;thodes pour maintenir cette connexion, en utilisant le protocole HTTP ou non, qui fonctionnent de mani&#232;re assez diff&#233;rente.</p><h3>WebSocket</h3><ul><li><p><strong>Bi-directionnel&nbsp;:</strong> Permet une communication bidirectionnelle entre le client et le serveur. Cela signifie que le serveur peut envoyer des donn&#233;es au client sans requ&#234;te pr&#233;alable du client, et vice versa.</p></li><li><p><strong>Connexion persistante&nbsp;:</strong> Une fois la connexion WebSocket &#233;tablie, elle reste ouverte jusqu'&#224; ce que le client ou le serveur d&#233;cide de la fermer. Cela r&#233;duit la latence en &#233;liminant le besoin d'&#233;tablir une connexion &#224; chaque &#233;change de donn&#233;es.</p></li><li><p><strong>Utilisation&nbsp;:</strong> Id&#233;al pour des applications n&#233;cessitant des interactions en temps r&#233;el intensives, comme les jeux en ligne, le chat en temps r&#233;el, les applications de trading en temps r&#233;el, etc.</p></li><li><p><strong>Protocole</strong> : WebSockets utilise son propre protocole, distinct du HTTP. Il est initi&#233; par une poign&#233;e de main (handshake) HTTP qui &#233;tablit ensuite une connexion WebSocket sur les m&#234;mes ports que HTTP (80) et HTTPS (443) pour faciliter le passage &#224; travers les pare-feux. Les connexions WebSocket sont identifi&#233;es par les sch&#233;mas d'URI <code>ws://</code> pour les connexions non s&#233;curis&#233;es et <code>wss://</code> pour les connexions s&#233;curis&#233;es (WebSocket Secure).</p></li></ul><h3>Server-sent-events (SSE)</h3><ul><li><p><strong>Uni-directionnel (du serveur vers le client)&nbsp;:</strong> Con&#231;u sp&#233;cifiquement pour permettre au serveur d'envoyer des donn&#233;es au client. Le client ne peut pas envoyer des donn&#233;es au serveur via SSE; il utiliserait d'autres moyens pour le faire (comme une requ&#234;te HTTP classique).</p></li><li><p><strong>Connexion persistante&nbsp;:</strong> Tout comme WebSockets, SSE garde la connexion ouverte apr&#232;s l'initialisation, permettant au serveur d'envoyer des donn&#233;es au client &#224; tout moment.</p></li><li><p><strong>Utilisation&nbsp;:</strong> Parfait pour des cas d'usage o&#249; les donn&#233;es doivent &#234;tre mises &#224; jour en temps r&#233;el du serveur vers le client, comme les notifications en direct, les actualisations de news, les mises &#224; jour de stock, etc.</p></li><li><p><strong>Protocole</strong> : SSE fonctionne sur le protocole HTTP standard. Il utilise des connexions HTTP pour envoyer des flux de donn&#233;es du serveur vers le client en format texte. Contrairement &#224; WebSockets, SSE est con&#231;u pour &#234;tre compatible avec le protocole HTTP existant, ce qui le rend facile &#224; mettre en &#339;uvre sur les infrastructures web existantes.</p></li></ul><h3>Long-Polling</h3><ul><li><p><strong>Demande-r&#233;ponse avec attente&nbsp;:</strong> Le client envoie une demande au serveur, qui la garde ouverte jusqu'&#224; ce qu'il ait des donn&#233;es &#224; envoyer. Apr&#232;s la r&#233;ponse du serveur, le client envoie imm&#233;diatement une nouvelle demande, et le processus se r&#233;p&#232;te.</p></li><li><p><strong>Connexion non persistante&nbsp;:</strong> Chaque &#233;change de donn&#233;es n&#233;cessite l'ouverture d'une nouvelle connexion, ce qui peut introduire une latence plus &#233;lev&#233;e compar&#233;e &#224; WebSockets et SSE.</p></li><li><p><strong>Utilisation&nbsp;:</strong> Une solution de repli pour les applications en temps r&#233;el lorsque les WebSockets ou SSE ne sont pas pris en charge ou souhaitables. Moins efficace en termes de performances et de ressources serveur.</p></li><li><p><strong>Protocole</strong> : Long-Polling repose &#233;galement sur le protocole HTTP standard.</p></li></ul><p>En r&#233;sum&#233;, WebSockets est le plus polyvalent et efficace pour les communications bidirectionnelles en temps r&#233;el, SSE est optimis&#233; pour les mises &#224; jour unidirectionnelles serveur-client, et le Long-Polling est une approche plus ancienne qui peut servir de solution de repli, mais est g&#233;n&#233;ralement moins efficace que les deux autres m&#233;thodes.</p><p>L&#8217;article parle &#233;galement de WebTransport et WebRTC.</p><p>Lien vers la ressource : <a href="https://rxdb.info/articles/websockets-sse-polling-webrtc-webtransport.html">https://rxdb.info/articles/websockets-sse-polling-webrtc-webtransport.html</a></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://www.metabase.com/">Metabase</a> &#8212; Une alternative open source &#224; Tableau</h3><p>Vous connaissez <a href="https://www.tableau.com/">Tableau</a> ? </p><p><a href="https://www.tableau.com/">Tableau</a> aide les utilisateurs &#224; voir et comprendre leurs donn&#233;es, et &#224; prendre des d&#233;cisions data-driven.</p><p><a href="https://www.metabase.com/">Metabase</a> se positionne sur le m&#234;me segment. Outre leur offre Saas, l&#8217;acc&#232;s &#224; leurs sources est dispo sur Github et ils proposent une image docker pour selfhoster leur solution sur votre propre serveur.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vHoC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vHoC!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 424w, https://substackcdn.com/image/fetch/$s_!vHoC!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 848w, https://substackcdn.com/image/fetch/$s_!vHoC!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 1272w, https://substackcdn.com/image/fetch/$s_!vHoC!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vHoC!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif" width="600" height="242" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:242,&quot;width&quot;:600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vHoC!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 424w, https://substackcdn.com/image/fetch/$s_!vHoC!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 848w, https://substackcdn.com/image/fetch/$s_!vHoC!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 1272w, https://substackcdn.com/image/fetch/$s_!vHoC!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942c0f42-facd-4040-b18d-a4deefdfe9a0_600x242.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Tr&#232;s utile pour mettre en place rapidement de petits dashboards aupr&#232;s de vos clients o&#249; d&#8217;un service de votre entreprise afin de monitorer certaines donn&#233;es diss&#233;min&#233;es dans diff&#233;rentes base de donn&#233;es.</p><p>Retrouvez toutes les informations par ici : </p><ul><li><p><a href="https://www.metabase.com/">https://www.metabase.com/</a></p></li><li><p><a href="https://www.metabase.com/docs/latest/installation-and-operation/running-metabase-on-docker">https://www.metabase.com/docs/latest/installation-and-operation/running-metabase-on-docker</a></p></li><li><p><a href="https://github.com/metabase/metabase">https://github.com/metabase/metabase</a></p></li></ul><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/ingenieur-logiciel-artificiel-communication?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/ingenieur-logiciel-artificiel-communication?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p>]]></content:encoded></item><item><title><![CDATA[Nouvelles de GPT-5, sortie de Laravel 11 et déboguage de l'extrème]]></title><description><![CDATA[Apr&#232;s une p&#233;riode de pause, je reprends la publication de ma veille.]]></description><link>https://stocki.substack.com/p/nouvelles-de-gpt-5-sortie-de-laravel</link><guid isPermaLink="false">https://stocki.substack.com/p/nouvelles-de-gpt-5-sortie-de-laravel</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 22 Mar 2024 11:02:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Xuuv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Apr&#232;s une p&#233;riode de pause, je reprends la publication de ma veille.</p><p>Tr&#232;s peu technique cette semaine, ma s&#233;lection est plus une s&#233;rie de nouvelles en lien avec le d&#233;veloppement et l&#8217;IA.</p><p>Bonne lecture !</p><h2>GPT-4.5 annonc&#233; avant l&#8217;heure</h2><p>La semaine derni&#232;re, un utilisateur Reddit a remarqu&#233; une preview Google &#233;trange lors d&#8217;une recherche. Une page annon&#231;ant GPT-4.5 Turbo aurait &#233;t&#233; index&#233;e par erreur, laissant fuiter quelques informations sur la futur version.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Xuuv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Xuuv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 424w, https://substackcdn.com/image/fetch/$s_!Xuuv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 848w, https://substackcdn.com/image/fetch/$s_!Xuuv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 1272w, https://substackcdn.com/image/fetch/$s_!Xuuv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Xuuv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png" width="740" height="386" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/178fa059-0bcc-4686-91c2-117ef8349226_740x386.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:386,&quot;width&quot;:740,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Reddit screenshot of the ChatGPT 4.5 Turbo blog post leak&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Reddit screenshot of the ChatGPT 4.5 Turbo blog post leak" title="Reddit screenshot of the ChatGPT 4.5 Turbo blog post leak" srcset="https://substackcdn.com/image/fetch/$s_!Xuuv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 424w, https://substackcdn.com/image/fetch/$s_!Xuuv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 848w, https://substackcdn.com/image/fetch/$s_!Xuuv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 1272w, https://substackcdn.com/image/fetch/$s_!Xuuv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F178fa059-0bcc-4686-91c2-117ef8349226_740x386.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Au programme : </p><ul><li><p>Context window de 256k tokens (le nombre de tokens injectable dans un unique prompt)</p></li><li><p>Les connaissances de ce nouveau mod&#232;le s&#8217;arr&#234;teraient &#224; Juin 2024</p></li></ul><p>La course aux performances fait rage dans l&#8217;ecosyst&#232;me des LLM avec <a href="https://www.anthropic.com/news/claude-3-family">Claude 3</a> offrant des performances similaires (200k tokens et rapidit&#233; de r&#233;ponse), <a href="https://groq.com/">Groq</a> qui propose des r&#233;ponses quasi instantan&#233;es sur des mod&#232;les Open Source &#224; l&#8217;aide de ses puces maison ou derni&#232;rement <a href="https://github.com/xai-org/grok-1">Grok</a> (le LLM de X) qui a fait son entr&#233;e avec des sources ouvertes.</p><p>Un autre article que j&#8217;ai d&#233;couvert apr&#232;s la r&#233;daction de ce premier paragraphe emet l&#8217;hypoth&#232;se d&#8217;une sortie de GPT-5 au courant de cette ann&#233;e.</p><p>Lien vers les ressources : <br>- <a href="https://www.androidauthority.com/chat-gpt-4-5-turbo-3425326/">https://www.androidauthority.com/chat-gpt-4-5-turbo-3425326/</a><br>- <a href="https://arstechnica.com/information-technology/2024/03/openais-gpt-5-may-launch-this-summer-upgrading-chatgpt-along-the-way/">https://arstechnica.com/information-technology/2024/03/openais-gpt-5-may-launch-this-summer-upgrading-chatgpt-along-the-way/</a></p><h2>Sortie de Laravel 11</h2><p>Sortie il y a deux semaines, la version 11 de Laravel apporte son lot de nouvelles fonctionnalit&#233;s : </p><ul><li><p>La structure du projet de base a &#233;t&#233; compl&#232;tement revue et &#233;pur&#233;e. Exit les fichiers de base qu&#8217;on ne modifie jamais. Ils seront r&#233;cup&#233;r&#233;s depuis les d&#233;pendances s&#8217;ils n&#8217;existent pas. Une commande artisan permettra de publier les fichiers &#224; override dans les sources du projet.</p></li><li><p>Route de healthcheck par d&#233;faut : vous pouvez connecter vos sondes plus rapidement.</p></li><li><p>Am&#233;lioration du casting des propri&#233;t&#233; de models</p></li><li><p>Laravel Reverb : int&#233;gration d&#8217;un serveur websocket directement au sein de Laravel.</p></li><li><p>Utilisation de SQLite par d&#233;faut : am&#233;liore la rapidit&#233; de bootstrap d&#8217;un projet.</p></li><li><p>Et plein d&#8217;autres fonctionnalit&#233;s tr&#232;s utiles !</p></li></ul><p>Utilisant Laravel pour lancer mes petits projets rapidement, toutes ces nouveaut&#233;s vont me permettre d&#8217;&#234;tre encore plus efficace.</p><p>Lien vers la release note : <a href="https://laravel.com/docs/11.x/releases">https://laravel.com/docs/11.x/releases</a></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>D&#233;boguer du code cinquantenaire &#224; 24 milliards de kilom&#232;tres</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HPwx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HPwx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HPwx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HPwx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HPwx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HPwx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg" width="1250" height="625" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:625,&quot;width&quot;:1250,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;La sonde &#171; Voyager 1 &#187; semble avoir perdu la boussole !&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="La sonde &#171; Voyager 1 &#187; semble avoir perdu la boussole !" title="La sonde &#171; Voyager 1 &#187; semble avoir perdu la boussole !" srcset="https://substackcdn.com/image/fetch/$s_!HPwx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HPwx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HPwx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HPwx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F78c061f1-2509-4b00-bfc8-17e29feee7f6_1250x625.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Si vous n&#8217;aviez pas suivi les p&#233;rip&#233;ties de l&#8217;artefact humain le plus &#233;loign&#233; de notre plan&#232;te, <a href="https://blogs.nasa.gov/sunspot/2023/12/12/engineers-working-to-resolve-issue-with-voyager-1-computer/">Voyager 1 a rencontr&#233; des probl&#232;mes de communication avec les ing&#233;nieurs de la Nasa en fin d&#8217;ann&#233;e derni&#232;re</a>.</p><p>Pour rappel, la sonde est lanc&#233;e en 1977 et a <a href="https://www.space.com/22797-voyager-1-interstellar-space-nasa-proof.html">d&#233;pass&#233; les limites de notre syst&#232;me solaire en 2012</a>. </p><p>La piste d&#8217;une d&#233;faillance d&#8217;un des trois ordinateurs embarqu&#233;s charg&#233; de collecter et compresser les donn&#233;es des diff&#233;rents instruments de la sonde est privil&#233;gi&#233;e.</p><p>La sonde a renvoy&#233; d&#233;but mars un message contenant un dump de la m&#233;moire de l&#8217;ordinateur incrimin&#233;. Cela va aider les ing&#233;nieurs &#224; trouver le segment de m&#233;moire d&#233;faillant et essayer de trouver une solution pour r&#233;tablir la communication des mesures des derniers instruments encore fonctionnels.</p><p>Du fait de la distance de la sonde vis-&#224;-vis de la terre, la latence dans la communication est de 45h, la patience est de mise.</p><p>Retrouvez l&#8217;article original : <a href="https://blogs.nasa.gov/sunspot/2024/03/13/nasa-engineers-make-progress-toward-understanding-voyager-1-issue/">https://blogs.nasa.gov/sunspot/2024/03/13/nasa-engineers-make-progress-toward-understanding-voyager-1-issue/</a></p><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3><a href="https://github.com/plankanban/planka">Planka</a> &#8212; La copie conforme de Trello &#224; la sauce Open Source</h3><p><a href="https://github.com/plankanban/planka">Planka</a> est un outil de gestion de projet bas&#233; sur la m&#233;thode Kanban. L&#8217;outil ressemble comme deux gouttes d&#8217;eau &#224; la solution d&#8217;Atlassian, Trello. Il fournit le m&#234;me ensemble de fonctionnalit&#233;s et est facilement h&#233;bergeable &#224; l&#8217;aide de Docker. </p><p>G&#233;nial pour les f&#233;rus d&#8217;autonomie !</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!g9Hm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!g9Hm!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 424w, https://substackcdn.com/image/fetch/$s_!g9Hm!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 848w, https://substackcdn.com/image/fetch/$s_!g9Hm!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 1272w, https://substackcdn.com/image/fetch/$s_!g9Hm!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!g9Hm!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif" width="1456" height="485" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a824063f-0a64-4701-8198-bffe0233da75_1920x640.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:485,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!g9Hm!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 424w, https://substackcdn.com/image/fetch/$s_!g9Hm!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 848w, https://substackcdn.com/image/fetch/$s_!g9Hm!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 1272w, https://substackcdn.com/image/fetch/$s_!g9Hm!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa824063f-0a64-4701-8198-bffe0233da75_1920x640.gif 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Voici une liste exhaustive des fonctionnalit&#233;s propos&#233;es : </p><ul><li><p><strong>Cr&#233;er des projets, des tableaux, des listes, des cartes, des &#233;tiquettes et des t&#226;ches</strong></p></li><li><p><strong>Ajouter des membres aux cartes, suivre le temps, fixer des &#233;ch&#233;ances, ajouter des pi&#232;ces jointes</strong></p></li><li><p><strong>&#233;crire des commentaires </strong></p></li><li><p><strong>Prise en charge du Markdown dans la description des cartes et des commentaires </strong></p></li><li><p><strong>Filtrer par membres et &#233;tiquettes </strong></p></li><li><p><strong>Personnaliser les arri&#232;re-plans des projets </strong></p></li><li><p><strong>Mises &#224; jour en temps r&#233;el </strong></p></li><li><p><strong>Notifications internes </strong></p></li><li><p><strong>Multiples langues d'interface </strong></p></li><li><p><strong>Connexion unique via OpenID Connect</strong></p></li></ul><p>Retrouvez toutes les informations par ici : <a href="https://github.com/plankanban/planka">https://github.com/plankanban/planka</a></p><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/nouvelles-de-gpt-5-sortie-de-laravel?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/nouvelles-de-gpt-5-sortie-de-laravel?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Entrepreneuriat, feuille de style et auto-hébergement]]></title><description><![CDATA[J&#8217;&#233;cris cette lettre 4 heures avant sa publication !]]></description><link>https://stocki.substack.com/p/entrepreneuriat-feuille-de-style</link><guid isPermaLink="false">https://stocki.substack.com/p/entrepreneuriat-feuille-de-style</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 22 Dec 2023 13:01:17 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xVTr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>J&#8217;&#233;cris cette lettre 4 heures avant sa publication ! </p><p>Je le savais d&#233;j&#224;, mais le plus dur dans le passage &#224; l&#8217;action, c&#8217;est la constance, la r&#233;gularit&#233;, la discipline ! Je me dis depuis mardi que je dois trouver un peu de temps pour r&#233;diger ce post et, finalement, je le fais &#224; la derni&#232;re minute&#8230; N&#233;anmoins, je le fais, et c&#8217;est d&#233;j&#224; &#231;a : &#8220;it&#8217;s something&#8221;. </p><p>Je vais t&#226;cher de trouver un rythme de travail pour cette newsletter afin de construire une habitude. J&#8217;en parlerai surement dans une prochaine lettre.<br><br>Bonne lecture ! </p><h2>What I Wish Someone Had Told Me</h2><p>Apr&#232;s les frasques qu&#8217;il a v&#233;cues au mois de novembre, notre CEO de l&#8217;IA pr&#233;f&#233;r&#233; revient dans un <a href="https://blog.samaltman.com/what-i-wish-someone-had-told-me">article de blog</a> ou il liste les conseils cl&#233;s qu&#8217;il aurait aim&#233; recevoir quand il commen&#231;ait l&#8217;entrepreneuriat.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xVTr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xVTr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!xVTr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!xVTr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!xVTr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xVTr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Sam Altman returning to OpenAI? How Satya Nadella of Microsoft backed  ousted CEO - Hindustan Times&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Sam Altman returning to OpenAI? How Satya Nadella of Microsoft backed  ousted CEO - Hindustan Times" title="Sam Altman returning to OpenAI? How Satya Nadella of Microsoft backed  ousted CEO - Hindustan Times" srcset="https://substackcdn.com/image/fetch/$s_!xVTr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!xVTr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!xVTr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!xVTr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e585399-5d63-41cb-b3d1-ec8abc49ad84_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Parmi ces conseils, Altman souligne l'importance de l'optimisme, de l'obsession, de la confiance en soi, de l'&#233;nergie brute et des relations personnelles pour d&#233;marrer les choses. Il met &#233;galement en avant la n&#233;cessit&#233; d'&#233;quipes coh&#233;sives, de la combinaison ad&#233;quate de calme et d'urgence, ainsi que d'un engagement d&#233;raisonnable pour mener &#224; bien les projets. L'orientation &#224; long terme, selon lui, est rare et il conseille de ne pas s'inqui&#233;ter de ce que les gens pensent &#224; court terme, une perspective qui devient plus facile avec le temps&#8203;&#8203;.</p><p>Altman conseille &#233;galement de se concentrer sur un petit nombre de paris &#224; forte conviction, de communiquer de mani&#232;re claire et concise, et de lutter contre les absurdit&#233;s et la bureaucratie. Il souligne l'importance de recruter avec attention, de prendre des risques sur des personnes &#224; fort potentiel, et d'&#233;valuer les gens sur leur impact net sur la performance de l'organisation. En outre, il encourage &#224; la rapide it&#233;ration, &#224; ne pas lutter contre les &#233;quivalents commerciaux des lois de la physique, et &#224; reconna&#238;tre que l'inspiration est p&#233;rissable et que la vie passe vite. La collaboration avec des personnes exceptionnelles est, selon lui, l'un des meilleurs aspects de la vie&#8203;</p><p>Lien vers la ressource : <a href="https://blog.samaltman.com/what-i-wish-someone-had-told-me">https://blog.samaltman.com/what-i-wish-someone-had-told-me</a></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Les origines de TailwindCSS</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R5OX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R5OX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 424w, https://substackcdn.com/image/fetch/$s_!R5OX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 848w, https://substackcdn.com/image/fetch/$s_!R5OX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 1272w, https://substackcdn.com/image/fetch/$s_!R5OX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R5OX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png" width="1456" height="424" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:424,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Backdrop Blur - Tailwind CSS&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Backdrop Blur - Tailwind CSS" title="Backdrop Blur - Tailwind CSS" srcset="https://substackcdn.com/image/fetch/$s_!R5OX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 424w, https://substackcdn.com/image/fetch/$s_!R5OX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 848w, https://substackcdn.com/image/fetch/$s_!R5OX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 1272w, https://substackcdn.com/image/fetch/$s_!R5OX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ad21e-2a9d-4d8b-800b-1b45e7c500be_2296x668.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Cette semaine, <a href="https://twitter.com/_smontlouis/status/1737113966474850403">St&#233;phane vantait</a> les m&#233;rites de PandaCSS et sa DX sur Twitter (oui, je ne peux me r&#233;soudre &#224; l&#8217;appeler de X). Le r&#233;seau &#233;tant ce qu&#8217;il est, il r&#233;pond &#224; un hater &#224; l&#8217;aide d&#8217;un article sur les origines de TailwindCSS. Un article qui explique bien la philosophie derri&#232;re le framework.</p><p>L'origine de Tailwind CSS peut &#234;tre trac&#233;e &#224; travers l'&#233;volution de la pens&#233;e d'Adam Wathan sur les meilleures pratiques CSS. Initialement, Wathan adh&#233;rait &#224; une approche "s&#233;mantique" du CSS (une approche plut&#244;t classique), favorisant une stricte s&#233;paration des pr&#233;occupations entre le HTML et le CSS&#8203;&#8203;. Cependant, il a commenc&#233; &#224; explorer l'id&#233;e de d&#233;coupler les styles de la structure, s'inspirant de la m&#233;thodologie BEM (Block Element Modifier) pour r&#233;duire la d&#233;pendance du CSS &#224; la structure DOM sp&#233;cifique du HTML&#8203;&#8203;.</p><p>Confront&#233; au d&#233;fi de g&#233;rer des composants similaires avec des besoins de style diff&#233;rents, Wathan a envisag&#233; la cr&#233;ation de composants agnostiques au contenu, qui pourraient &#234;tre r&#233;utilis&#233;s ind&#233;pendamment de leur contexte s&#233;mantique&#8203;&#8203;. Cette approche a &#233;volu&#233; vers un rejet de la notion traditionnelle de "separation of concerns" dans le HTML et le CSS, remettant en question cette dichotomie du tout noir ou tout blanc. Comme dirait certains : &#8220;It depends !&#8221;. </p><p>Inspir&#233; par les travaux de Nicolas Gallagher sur l'architecture front-end et la s&#233;mantique HTML, Wathan a d&#233;cid&#233; de prioriser la r&#233;utilisabilit&#233; du CSS, en &#233;vitant de cr&#233;er des classes bas&#233;es sur le contenu et en se concentrant sur des noms de classe r&#233;utilisables comme <code>.card</code>, <code>.btn</code>, et <code>.badge&#8203;&#8203;&#8203;&#8203;</code>.</p><p>Cette approche a conduit &#224; la phase finale de l'&#233;volution de sa pens&#233;e, o&#249; Wathan a combin&#233; des composants agnostiques au contenu avec des classes utilitaires, &#233;liminant la n&#233;cessit&#233; de cr&#233;er constamment de nouveaux noms de composants pour des propri&#233;t&#233;s CSS sp&#233;cifiques. Cette m&#233;thodologie a conduit au d&#233;veloppement de Tailwind CSS, un framework centr&#233; sur l'utilisation de classes utilitaires pour un style rapide et r&#233;utilisable.</p><p>Finalement, l&#224; o&#249; certains pensent que TailwindCSS est une alternative au CSS pour les d&#233;veloppeurs Backend, le framework s&#8217;adresse r&#233;ellement aux d&#233;veloppeurs frontend et a &#233;t&#233; d&#233;velopp&#233; apr&#232;s une m&#251;re r&#233;flexion pour r&#233;pondre &#224; un besoin pr&#233;cis.</p><p>Retrouvez l&#8217;article complet : <a href="https://adamwathan.me/css-utility-classes-and-separation-of-concerns/">https://adamwathan.me/css-utility-classes-and-separation-of-concerns/</a></p><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3>Coolify &#8212; l&#8217;alternative open source &#224; Vercel, Heroku et Netlify</h3><p><a href="https://coolify.io/">Coolify</a> est une plateforme open-source et auto-h&#233;bergeable offrant des fonctionnalit&#233;s similaires &#224; Heroku, Netlify et Vercel. Elle permet &#224; tout un chacun de provisionner n'importe quel serveur en moins d'une minute, sans frais et avec toutes les fonctionnalit&#233;s suivantes incluses&#8203;&#8203;&#8203;&#8203; : </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rPAr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rPAr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 424w, https://substackcdn.com/image/fetch/$s_!rPAr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 848w, https://substackcdn.com/image/fetch/$s_!rPAr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 1272w, https://substackcdn.com/image/fetch/$s_!rPAr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rPAr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp" width="1456" height="712" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:712,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Test de Coolify : un moyen de simplifier le d&#233;ploiement de site web &#8230; enfin  presque&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Test de Coolify : un moyen de simplifier le d&#233;ploiement de site web &#8230; enfin  presque" title="Test de Coolify : un moyen de simplifier le d&#233;ploiement de site web &#8230; enfin  presque" srcset="https://substackcdn.com/image/fetch/$s_!rPAr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 424w, https://substackcdn.com/image/fetch/$s_!rPAr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 848w, https://substackcdn.com/image/fetch/$s_!rPAr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 1272w, https://substackcdn.com/image/fetch/$s_!rPAr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b82d434-d9f9-4597-8f4b-38a20353d1a1_1920x939.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ol><li><p><strong>BYOS (Apportez Votre Propre Serveur)</strong> : Utilisez votre propre serveur de n'importe quel fournisseur cloud ou m&#234;me un serveur domestique. Vous avez besoin uniquement d'un acc&#232;s SSH. </p></li><li><p><strong>Automatisations de Serveur</strong> : Une fois votre serveur connect&#233;, Coolify commence &#224; le g&#233;rer et &#224; effectuer de nombreuses t&#226;ches administratives. Vous pouvez &#233;galement &#233;crire vos propres scripts pour automatiser la gestion de votre serveur.</p></li><li><p><strong>No Vendor Lock-in</strong> : Vous poss&#233;dez vos donn&#233;es. Toutes les configurations sont sauvegard&#233;es sur vos serveurs, donc si vous d&#233;cidez d'arr&#234;ter d'utiliser Coolify, vous pouvez continuer &#224; g&#233;rer vos ressources d&#233;ploy&#233;es.</p></li><li><p><strong>Monitoring</strong> : Coolify monitore automatiquement vos serveurs configur&#233;s et vos diff&#233;rentes ressources d&#233;ploy&#233;es. Il vous notifie si quelque chose ne va pas sur le canal de votre choix, comme Discord, Telegram, e-mail, et plein d&#8217;autres.</p></li><li><p><strong>Sauvegardes Automatiques</strong> : Vos bases de donn&#233;es sont automatiquement sauvegard&#233;es sur toute solution compatible S3. En cas de probl&#232;me, vous pouvez facilement restaurer vos donn&#233;es en quelques clics.</p></li><li><p><strong>API Puissante</strong> : D&#233;ployez, interrogez et g&#233;rez vos serveurs et ressources &#224; l&#8217;aide de scripts personnalis&#233;s &#224; travers l'API mise &#224; disposition. Int&#233;grez &#224; vos pipelines CI/CD ou cr&#233;ez vos propres int&#233;grations personnalis&#233;es.</p></li><li><p><strong>Push to Deploy</strong> : L'int&#233;gration Git est par d&#233;faut. Prise en charge les d&#233;p&#244;ts Git h&#233;berg&#233;s (github.com, gitlab.com) ou auto-h&#233;berg&#233;s (Github Enterprise, Gitlab).</p></li><li><p><strong>D&#233;ploiements de Pull Request</strong> : D&#233;ployez automatiquement les nouveaux commits et pull requests s&#233;par&#233;ment pour examiner rapidement les contributions et acc&#233;l&#233;rer le travail d'&#233;quipe !</p></li></ol><p>Retrouvez toutes les informations par ici : <a href="https://coolify.io/">https://coolify.io/</a></p><div><hr></div><p>Je suis Thomas Stocker, d&#233;veloppeur depuis plus de 10 ans, &#224; mon compte depuis plus de 5 ans. Je vous transmets ici ma veille tech/entrepreneuriale en vous r&#233;sumant quelques articles qui ont marqu&#233; ma semaine ! Je parlerai &#233;galement de mes aventures entrepreneuriales quand l&#8217;envie m&#8217;en prend !</p><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/entrepreneuriat-feuille-de-style?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/entrepreneuriat-feuille-de-style?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Posts et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Faire de la veille et ne pas être en veille]]></title><description><![CDATA[Mon passage &#224; l'action]]></description><link>https://stocki.substack.com/p/faire-de-la-veille-et-ne-pas-etre</link><guid isPermaLink="false">https://stocki.substack.com/p/faire-de-la-veille-et-ne-pas-etre</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Fri, 15 Dec 2023 13:01:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!oAhx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>J&#8217;ai &#233;crit cette lettre il y a plus d&#8217;un mois et je n&#8217;ai jamais eu le courage de la poster. C&#8217;est bien l&#224; un de mes plus gros probl&#232;mes. Commencer des choses et ne pas forc&#233;ment aller au bout. Cette newsletter, c&#8217;est &#224; la fois une veille que je vous partage de mani&#232;re hebdomadaire, et &#233;galement une mani&#232;re pour moi de me forcer &#224; publier du contenu r&#233;guli&#232;rement. </p><p>Ceux qui me connaissent ont surement d&#233;j&#224; vu mes 350 onglets chromes que je garde ouvert en esp&#233;rant trouver le temps de tout feuilleter (spoiler alert : j&#8217;ouvre plus d&#8217;onglets que je n&#8217;en ferme). Vous trouverez donc chaque semaine une s&#233;lection de ceux qui m&#8217;ont marqu&#233;. Et oui, je ferme d&#233;finitivement mes fen&#234;tres chaque weekend afin de lib&#233;rer mon esprit de cette charge que je ne saurais lire (certains se reconnaitront peut-&#234;tre dans ces quelques lignes).<br><br>Puisqu&#8217;il faut se lancer, j&#8217;&#233;cris ces quelques mots la veille de la publication de ce post. Voici mon premier post ! Le contenu sera dat&#233; d&#8217;un mois, mais qu&#8217;&#224; cela ne tienne, c&#8217;est un premier post qui m&#8217;engage pour la suite.<br><br>Bonne lecture ! </p><h2>Utilise l&#8217;index Luke !</h2><p>Cette semaine, je suis tomb&#233; sur ce <a href="https://www.linkedin.com/feed/update/urn:li:activity:7127633307625775105/">post</a> de <a href="https://www.linkedin.com/in/matsanchez/">Mathieu Sanchez</a> sur LinkedIn ou il explique comment il a r&#233;ussi &#224; optimiser le fonctionnement et les co&#251;ts de son SGBD Postgres sans succomber &#224; la facilit&#233; de basculer sur une BDD cloud manag&#233;e.</p><p>&#192; la fin de son post, il a partag&#233; la petite p&#233;pite de la semaine, qui l&#8217;a aid&#233; &#224; comprendre ce qu&#8217;il faisait et que je vais vous pr&#233;senter ici. Merci &#224; toi Mathieu !</p><p>Cette p&#233;pite c&#8217;&#8217;est tout simplement : "<a href="https://use-the-index-luke.com/">Use The Index, Luke</a>"</p><p>"<a href="https://use-the-index-luke.com/">Use The Index, Luke</a>" est une ressource en ligne gratuite qui sert de version web au livre "SQL Performance Explained". Le site vise &#224; &#233;duquer les d&#233;veloppeurs sur l'indexation SQL et l'optimisation des performances des bases de donn&#233;es sans s'encombrer des d&#233;tails administratifs. L'indexation y est pr&#233;sent&#233;e comme la m&#233;thode d'optimisation la plus efficace qui est souvent n&#233;glig&#233;e durant le d&#233;veloppement. Le contenu est con&#231;u pour &#234;tre agnostique de votre syst&#232;me de gestion de base de donn&#233;es. Il offre cependant des notes sp&#233;cifiques &#224; des produits comme DB2, MySQL, Oracle, PostgreSQL et SQL Server.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oAhx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oAhx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oAhx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oAhx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oAhx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oAhx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg" width="1200" height="510" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:510,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Classic Star Wars on X: \&quot;#StarWars #Luke tries to use the #Force to pull  his X-wing out of the swamp https://t.co/v0Uo0yzoma\&quot; / X&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Classic Star Wars on X: &quot;#StarWars #Luke tries to use the #Force to pull  his X-wing out of the swamp https://t.co/v0Uo0yzoma&quot; / X" title="Classic Star Wars on X: &quot;#StarWars #Luke tries to use the #Force to pull  his X-wing out of the swamp https://t.co/v0Uo0yzoma&quot; / X" srcset="https://substackcdn.com/image/fetch/$s_!oAhx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oAhx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oAhx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oAhx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62e50a1e-6bbc-4e1a-85c6-85ae6443ecae_1200x510.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Le site couvre une gamme compl&#232;te de sujets li&#233;s &#224; l'indexation SQL, allant de la compr&#233;hension de la structure d'un index et comment il fonctionne, &#224; des conseils sur l'am&#233;lioration des performances de recherche via la clause WHERE et l'utilisation des index pour des requ&#234;tes avec des op&#233;rateurs de comparaison ou des filtres comme LIKE. Il aborde &#233;galement les pi&#232;ges courants tels que l'indexation excessive, l'utilisation de variables li&#233;es pour la s&#233;curit&#233; et la performance, et la cr&#233;ation d'indexes partiels. </p><p>Sont par ailleurs propos&#233;s des services de formation et d'optimisation, et les lecteurs sont encourag&#233;s &#224; acheter le livre pour un approfondissement, ainsi qu'&#224; explorer d'autres ressources disponibles sur le site.</p><p>La plateforme propose &#233;galement une newsletter ainsi qu&#8217;un flux RSS pour maintenir une veille sur le sujet.</p><p>Lien vers la ressource : <a href="https://use-the-index-luke.com/">https://use-the-index-luke.com/</a></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Post et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>&#201;crivons plus de programmes &#8220;inutiles&#8221;</h2><p>Je suis tomb&#233; sur un article qui a attir&#233; mon attention rien qu&#8217;en lisant le titre : &#8220;<a href="https://ntietz.com/blog/write-more-useless-software/">Write more &#8216;useless&#8217; software</a>&#8221; de <em><a href="https://ntietz.com/">Nicole Tietz</a></em>. </p><p>L'article plaide pour l'&#233;criture de logiciels consid&#233;r&#233;s comme "inutiles" en tant qu'exercice de d&#233;couverte et de c&#233;l&#233;bration de la joie de l'informatique. L&#8217;autrice argumente que bien que les professionnels de la technologie se consacrent souvent &#224; la cr&#233;ation de solutions utiles, le v&#233;ritable plaisir de la programmation r&#233;side parfois dans l'exploration libre, sans les contraintes des obligations qui sont engendr&#233;es par votre job. Cela peut raviver la passion initiale qui a attir&#233; beaucoup d'entre nous vers l'ing&#233;nierie logicielle, une passion qui risque de s'estomper sous le poids des pressions quotidiennes associ&#233;es au travail obligatoire.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YU8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YU8-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!YU8-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!YU8-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!YU8-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YU8-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp" width="420" height="420" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:420,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A cartoonish, child-like drawing of a whimsical, imaginary software program. The program is personified with a cute, frowning face on a computer screen, oversized round eyes, and scribbled lines to show its confusion. There are colorful, nonsensical buttons and controls all over the interface, with labels like 'Do Nothing' and 'Error Maker'. It's surrounded by a jumble of wires leading nowhere, and there's a playful background of scribbles and stick figures indicative of a child's drawing.&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A cartoonish, child-like drawing of a whimsical, imaginary software program. The program is personified with a cute, frowning face on a computer screen, oversized round eyes, and scribbled lines to show its confusion. There are colorful, nonsensical buttons and controls all over the interface, with labels like 'Do Nothing' and 'Error Maker'. It's surrounded by a jumble of wires leading nowhere, and there's a playful background of scribbles and stick figures indicative of a child's drawing." title="A cartoonish, child-like drawing of a whimsical, imaginary software program. The program is personified with a cute, frowning face on a computer screen, oversized round eyes, and scribbled lines to show its confusion. There are colorful, nonsensical buttons and controls all over the interface, with labels like 'Do Nothing' and 'Error Maker'. It's surrounded by a jumble of wires leading nowhere, and there's a playful background of scribbles and stick figures indicative of a child's drawing." srcset="https://substackcdn.com/image/fetch/$s_!YU8-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!YU8-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!YU8-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!YU8-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc1c6c89c-ae5b-4671-ab5a-6c5926427631_1024x1024.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>L'autrice partage sa propre exp&#233;rience avec le d&#233;veloppement de projets personnels "inutiles", qui lui ont permis d'apprendre et de s'amuser en dehors du cadre plus strict du milieu professionnel. Elle s&#8217;est par exemple amus&#233;e &#224; d&#233;velopper un moteur d'&#233;checs (cribl&#233; de bugs), une base de donn&#233;es clef-valeur ou encore un programme permettant de faire du WOL (wake-on-lan). Ces petits projets lui ont permis d'explorer de nouvelles id&#233;es, de d&#233;couvrir diff&#233;rents aspects de la programmation, et surtout, de se divertir. </p><p>L&#8217;autrice encourage ce type de pratique comme un moyen d'exp&#233;rimenter les technologies qu&#8217;on n&#8217;a pas l&#8217;habitude d&#8217;utiliser et de retrouver le plaisir dans l'acte de cr&#233;ation.</p><p>Se lancer dans la cr&#233;ation de programmes "inutiles" permet &#233;galement de comprendre le fonctionnement interne des fonctionnalit&#233;s que nous employons au quotidien.</p><p>Retrouvez l&#8217;article complet : <a href="https://ntietz.com/blog/write-more-useless-software/">https://ntietz.com/blog/write-more-useless-software/</a></p><div><hr></div><h2>L&#8217;outil de la semaine</h2><h3>Plane &#8212; l&#8217;outil de gestion de projet open source</h3><p><a href="https://plane.so">Plane</a> est un outil de gestion de projet open source con&#231;u pour aider les &#233;quipes de d&#233;veloppement logiciel &#224; g&#233;rer efficacement les probl&#232;mes, les sprints et les feuilles de route des produits. Il offre une exp&#233;rience utilisateur simple, mais puissante, permettant une prise en main rapide et la personnalisation des flux de travail avec des options de visualisation comme les listes, les tableaux Kanban et les calendriers.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UF-5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UF-5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 424w, https://substackcdn.com/image/fetch/$s_!UF-5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 848w, https://substackcdn.com/image/fetch/$s_!UF-5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 1272w, https://substackcdn.com/image/fetch/$s_!UF-5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UF-5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;App screenshot&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="App screenshot" title="App screenshot" srcset="https://substackcdn.com/image/fetch/$s_!UF-5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 424w, https://substackcdn.com/image/fetch/$s_!UF-5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 848w, https://substackcdn.com/image/fetch/$s_!UF-5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 1272w, https://substackcdn.com/image/fetch/$s_!UF-5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff816cd2d-ac3d-486f-a495-06ab6d92655e_6912x3768.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Avec Plane, les &#233;quipes peuvent simplifier la transition vers des cadres de travail comme Waterfall ou Agile gr&#226;ce &#224; des fonctionnalit&#233;s telles que les Cycles et les Modules, qui favorisent une planification et une priorisation efficaces. De plus, Plane peut s'int&#233;grer &#224; d'autres outils favoris comme Slack et GitHub, am&#233;liorant ainsi la collaboration et la visibilit&#233;. </p><p>Plane se distingue &#233;galement par sa facilit&#233; de configuration et sa capacit&#233; &#224; &#234;tre auto-h&#233;berg&#233;, offrant ainsi une flexibilit&#233; accrue aux &#233;quipes de d&#233;veloppement. Vous pouvez l&#8217;installer en moins de cinq minutes &#224; l&#8217;aide du docker-compose qu&#8217;ils fournissent. Pour en savoir plus c&#8217;est par <a href="https://docs.plane.so/self-hosting">ici</a>.</p><div><hr></div><p>Tu as aim&#233; cette newsletter ? N&#8217;h&#233;site pas &#224; la partager autour de toi !</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/p/faire-de-la-veille-et-ne-pas-etre?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Partager&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://stocki.substack.com/p/faire-de-la-veille-et-ne-pas-etre?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Partager</span></a></p><p>Si tu souhaites voir plus de contenu, viens <a href="https://linktr.ee/stocki___">me suivre sur mes diff&#233;rents r&#233;seaux</a>.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://stocki.substack.com/subscribe?&quot;,&quot;text&quot;:&quot;S'abonner&quot;,&quot;language&quot;:&quot;fr&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Merci de lire La veille de Stocki ! Abonnez-vous gratuitement pour recevoir de nouveaux Post et soutenir mon travail.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Tapez votre e-mail&#8230;" tabindex="-1"><input type="submit" class="button primary" value="S'abonner"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Pourquoi faire de la veille ?]]></title><description><![CDATA[Un challenge au quotidien]]></description><link>https://stocki.substack.com/p/coming-soon</link><guid isPermaLink="false">https://stocki.substack.com/p/coming-soon</guid><dc:creator><![CDATA[Stocki]]></dc:creator><pubDate>Sat, 28 Oct 2023 09:32:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!CxO4!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4f5b646-6737-43f6-8edd-252a8917aa3b_1152x1152.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Dans un monde o&#249; la technologie &#233;volue &#224; la vitesse de la lumi&#232;re, rester &#224; jour est non seulement un atout, mais une n&#233;cessit&#233;. Pour nous, les d&#233;veloppeurs web, la veille technique n'est pas seulement une partie de notre travail, c'est le c&#339;ur m&#234;me de notre &#233;volution professionnelle. Pourquoi ? Premi&#232;rement, elle nous permet de rester comp&#233;titifs. Le domaine du d&#233;veloppement web est caract&#233;ris&#233; par une innovation constante et rapide. De nouvelles biblioth&#232;ques, frameworks, et outils &#233;mergents presque quotidiennement. Sans une veille technique r&#233;guli&#232;re, il est facile de se retrouver d&#233;pass&#233;, utilisant des technologies obsol&#232;tes qui ne r&#233;pondent plus aux standards actuels du march&#233;. Cela peut affecter non seulement la qualit&#233; de nos projets, mais aussi notre attractivit&#233; en tant que professionnels.</p><p>Ensuite, la veille technique est un catalyseur pour l'innovation et la cr&#233;ativit&#233;. En explorant les derni&#232;res tendances, nous d&#233;couvrons de nouvelles fa&#231;ons de r&#233;soudre des probl&#232;mes, d'optimiser nos codes, et d'am&#233;liorer l'exp&#233;rience utilisateur. Cela nous ouvre &#224; des perspectives qui vont au-del&#224; de notre zone de confort et nous pousse &#224; exp&#233;rimenter et &#224; innover. Par exemple, l'adoption de frameworks r&#233;actifs comme React ou Vue.js a r&#233;volutionn&#233; la fa&#231;on dont nous concevons les interfaces utilisateur, rendant les applications web plus interactives et performantes.</p><p>Enfin, la veille technique est essentielle pour notre d&#233;veloppement professionnel continu. Elle nous aide &#224; acqu&#233;rir de nouvelles comp&#233;tences, &#224; &#233;largir notre compr&#233;hension des technologies &#233;mergentes et &#224; rester pertinents dans un secteur en constante &#233;volution. En investissant du temps dans l'apprentissage et la mise &#224; jour de nos connaissances, nous augmentons non seulement notre valeur en tant que d&#233;veloppeurs, mais nous ouvrons &#233;galement la porte &#224; des opportunit&#233;s de carri&#232;re avanc&#233;es, que ce soit en termes de leadership technique, de sp&#233;cialisation, ou d'innovation.</p><p>En conclusion, la veille technique n'est pas un luxe, mais une composante essentielle de notre m&#233;tier. Elle nous permet de rester &#224; l'avant-garde de la technologie, d'innover et de progresser dans notre carri&#232;re. Alors, prenons le temps de nous informer, d'explorer et d'apprendre, ensemble, car c'est ainsi que nous continuerons &#224; grandir et &#224; exceller en tant que d&#233;veloppeurs web.</p>]]></content:encoded></item></channel></rss>