<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on perri.to</title>
    <link>https://perri.to/fr/post/</link>
    <description>Recent content in Posts on perri.to</description>
    <generator>Hugo</generator>
    <language>fr-FR</language>
    <lastBuildDate>Sun, 19 Jul 2026 16:55:30 +0200</lastBuildDate>
    <atom:link href="https://perri.to/fr/post/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Rêves de travail</title>
      <link>https://perri.to/fr/2026/05/reves-de-travail/</link>
      <pubDate>Wed, 06 May 2026 12:51:13 +0200</pubDate>
      <guid>https://perri.to/fr/2026/05/reves-de-travail/</guid>
      <description>&lt;figure class=&#34;d-block mx-auto text-center&#34;&gt;&lt;img src=&#34;https://perri.to/postmedia/dreams_of_labour/dream_job.png&#34; width=&#34;33%&#34;&gt;&lt;figcaption&gt;&#xA;&#x9;&#x9;&#x9;&lt;h4&gt;Dream Job, by Work Chronicles&lt;/h4&gt;&#xA;&#x9;&#x9;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Bande dessinée de &lt;a href=&#34;https://open.substack.com/pub/workchronicles/p/dream-job?utm_campaign=post-expanded-share&amp;amp;utm_medium=web&#34;&gt;Work Chronicles&lt;/a&gt; — &lt;a href=&#34;https://www.workchronicles.com/about&#34;&gt;un webcomic qui met en scène les joies et les frustrations du monde du travail&lt;/a&gt;. « Dream Job » m&amp;rsquo;a semblé une ouverture appropriée pour ce qui suit.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai passé une grande partie de ma vie à travailler dans des environnements où tout le monde était, comme le dirait un ami : « orienté fric ».&#xA;Une bonne partie de ma jeunesse, une fois passée l&amp;rsquo;obligatoire phase « logiciel libre », a été marquée par la mentalité classique de l&amp;rsquo;entreprise financée par du capital-risque.&#xA;J&amp;rsquo;ai fondé ma propre entreprise avec des amis. J&amp;rsquo;ai travaillé pour des startups et des entreprises à l&amp;rsquo;allure de startup.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Choisir le prochain outil</title>
      <link>https://perri.to/fr/2026/03/choisir-le-prochain-outil/</link>
      <pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://perri.to/fr/2026/03/choisir-le-prochain-outil/</guid>
      <description>&lt;p&gt;Professionnellement, si je devais le résumer en une seule phrase, je dirais ceci :&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai toujours choisi les outils que quelqu&amp;rsquo;un était prêt à me payer le plus cher pour les utiliser.&lt;/p&gt;&#xA;&lt;h3 id=&#34;tout-a-commencé-avec-visual-basic-6&#34;&gt;Tout a commencé avec Visual Basic 6.&lt;/h3&gt;&#xA;&lt;p&gt;À l&amp;rsquo;époque, du moins dans mon pays, c&amp;rsquo;était le langage dominant pour les applications de gestion. Cabinets comptables, entreprises de taille moyenne, systèmes de gestion internes : &lt;strong&gt;tout&lt;/strong&gt; tournait sous VB6. Je suis devenu très efficace avec lui. Pas seulement productif : j&amp;rsquo;ai appris comment il fonctionnait en profondeur, ses limites, ses bizarreries.&lt;/p&gt;</description>
    </item>
    <item>
      <title>L&#39;IA, le retour des outils sur mesure à usage unique</title>
      <link>https://perri.to/fr/2026/01/lia-le-retour-des-outils-sur-mesure-a-usage-unique/</link>
      <pubDate>Fri, 23 Jan 2026 08:40:00 +0100</pubDate>
      <guid>https://perri.to/fr/2026/01/lia-le-retour-des-outils-sur-mesure-a-usage-unique/</guid>
      <description>&lt;h3 id=&#34;lâge-dor-des-applications-sur-mesure&#34;&gt;L&amp;rsquo;âge d&amp;rsquo;or des applications sur mesure.&lt;/h3&gt;&#xA;&lt;p&gt;J&amp;rsquo;étais un enfant durant la période des années 80-90. Là où je vivais, les ordinateurs n&amp;rsquo;étaient pas vraiment une chose du foyer ordinaire avant mes 10 ans environ (93-95).&#xA;Ma ville était frappée par une très mauvaise récession économique : ma cité dépendait fortement de l&amp;rsquo;industrie liée au métal et le pays&#xA;venait de la tuer en autorisant les importations libres depuis la Chine. Je vivais aussi dans une région plutôt rurale d&amp;rsquo;un pays mal connecté, si bien que les avancées technologiques&#xA;ne nous parvenaient pas avant d&amp;rsquo;être devenues très courantes dans la capitale.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Utiliser les commentaires du Fédiverse</title>
      <link>https://perri.to/fr/2025/03/utiliser-les-commentaires-du-fediverse/</link>
      <pubDate>Sat, 08 Mar 2025 11:39:29 +0100</pubDate>
      <guid>https://perri.to/fr/2025/03/utiliser-les-commentaires-du-fediverse/</guid>
      <description>&lt;p&gt;J&amp;rsquo;ai décidé de me débarrasser de Disqus, sans raison particulière, j&amp;rsquo;ai simplement pensé que ce n&amp;rsquo;était pas la manière dont je voulais gérer mes commentaires.&lt;/p&gt;&#xA;&lt;p&gt;Pour cela, j&amp;rsquo;ai opté pour &lt;a href=&#34;https://andreas.scherbaum.la/post/2024-05-23_client-side-comments-with-mastodon-on-a-static-hugo-website/&#34;&gt;cette excellente suggestion d&amp;rsquo;Andreas Scherbaum&lt;/a&gt;. Je vais désormais mettre à jour mes billets avec un lien vers le fédiverse pour que les gens puissent commenter directement sur le toot mastodon.&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai aussi ajouté la prise en charge de BlueSky en me basant sur &lt;a href=&#34;https://kau.sh/blog/bluesky-comments-for-hugo/&#34;&gt;ce billet&lt;/a&gt; de Kaushik Gopal.&lt;/p&gt;</description>
    </item>
    <item>
      <title>À la poursuite de l&#39;alchimie à travers les threads</title>
      <link>https://perri.to/fr/2025/03/a-la-poursuite-de-lalchimie-a-travers-les-threads/</link>
      <pubDate>Thu, 06 Mar 2025 21:36:48 +0100</pubDate>
      <guid>https://perri.to/fr/2025/03/a-la-poursuite-de-lalchimie-a-travers-les-threads/</guid>
      <description>&lt;h2 id=&#34;comment-ça-a-commencé&#34;&gt;Comment ça a commencé&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;Avertissement :&lt;/strong&gt; Bien que ceci soit le résultat d&amp;rsquo;un problème professionnel, toutes les opinions sont les miennes ; mon employeur n&amp;rsquo;est pas impliqué et n&amp;rsquo;approuve en aucune manière cette publication, au-delà d&amp;rsquo;une autorisation implicite d&amp;rsquo;écrire publiquement sur des problèmes et des solutions techniques.&lt;/p&gt;&#xA;&lt;p&gt;Dans une discussion quotidienne avec quelques-uns de mes collègues chez &lt;a href=&#34;https://shiphero.com/&#34;&gt;ShipHero&lt;/a&gt;, quelqu&amp;rsquo;un a mentionné qu&amp;rsquo;un problème que nous avions (sans rapport avec ce billet) pourrait être causé par des &lt;a href=&#34;https://docs.sqlalchemy.org/en/20/orm/contextual.html&#34;&gt;sessions thread-local&lt;/a&gt; de sqlalchemy passées à un autre thread.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Trop vieux pour cette activité... parallèle</title>
      <link>https://perri.to/fr/2025/01/trop-vieux-pour-cette-activite...-parallele/</link>
      <pubDate>Sun, 19 Jan 2025 21:08:59 +0100</pubDate>
      <guid>https://perri.to/fr/2025/01/trop-vieux-pour-cette-activite...-parallele/</guid>
      <description>&lt;p&gt;J&amp;rsquo;ai presque arrêté de coder en dehors de mon travail. Voici pourquoi&amp;hellip;&lt;/p&gt;&#xA;&lt;h3 id=&#34;la-motivation-initiale&#34;&gt;La motivation initiale&lt;/h3&gt;&#xA;&lt;p&gt;Il y a quelques mois, un peu de burnout et un peu de désenchantement vis-à-vis du type de tâches qu&amp;rsquo;offraient les postes disponibles pour ma géographie et mon choix de stack technique m&amp;rsquo;ont amené à décider de changer.&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai quitté un poste où je faisais de l&amp;rsquo;architecture logicielle pour des systèmes basés sur &lt;a href=&#34;https://go.dev&#34;&gt;Go&lt;/a&gt; pour un poste qui utilise &lt;a href=&#34;https://python.org&#34;&gt;Python&lt;/a&gt;. Maintenant, Python ne m&amp;rsquo;est pas inconnu ; j&amp;rsquo;ai commencé à m&amp;rsquo;y plonger quand j&amp;rsquo;étais à l&amp;rsquo;université, vers 2004 ou 2005, j&amp;rsquo;ai travaillé avec, et j&amp;rsquo;ai même fondé une entreprise qui se concentrait principalement sur le développement en &lt;a href=&#34;https://python.org&#34;&gt;Python&lt;/a&gt;. Ce changement implique d&amp;rsquo;abandonner au quotidien une technologie &lt;em&gt;« à la mode »&lt;/em&gt; pour une autre un peu plus établie et pas tout à fait sur la crête de la vague.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Linux sur un ThinkPad X1 Gen4</title>
      <link>https://perri.to/fr/2023/12/linux-sur-un-thinkpad-x1-gen4/</link>
      <pubDate>Sat, 09 Dec 2023 16:17:49 +0100</pubDate>
      <guid>https://perri.to/fr/2023/12/linux-sur-un-thinkpad-x1-gen4/</guid>
      <description>&lt;h2 id=&#34;jai-eu-un-nouveau-vieux-portable&#34;&gt;J&amp;rsquo;ai eu un nouveau vieux portable&lt;/h2&gt;&#xA;&lt;p&gt;Ce portable est plutôt « vieux » comparé au matériel neuf et rutilant d&amp;rsquo;aujourd&amp;rsquo;hui, mais il coche toutes les cases pour moi.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Il était bon marché (pour moi, c&amp;rsquo;était du surplus d&amp;rsquo;une entreprise)&lt;/li&gt;&#xA;&lt;li&gt;Il a un bon processeur &lt;code&gt;11th Gen Intel(R) Core(TM) i7-11850H @ 2.50GHz&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Il a beaucoup de RAM (16G et un slot libre)&lt;/li&gt;&#xA;&lt;li&gt;Ce modèle, ou un modèle assez similaire, est certifié Ubuntu (cela signifie qu&amp;rsquo;une équipe chez Ubuntu a pris le temps de vérifier que chaque version de leur système fonctionne sur ces machines et a même apporté des modifications à leur noyau oem pour accommoder les bizarreries dues au fait que Lenovo prend trop de libertés avec l&amp;rsquo;interprétation des standards)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;live-usb&#34;&gt;Live USB&lt;/h2&gt;&#xA;&lt;p&gt;L&amp;rsquo;image Live d&amp;rsquo;Ubuntu est magnifique et fonctionne d&amp;rsquo;emblée avec tout ce que mon portable a à offrir (23.10 au moment où j&amp;rsquo;écris ceci).&#xA;Maintenant, c&amp;rsquo;est là que le plaisir commence.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Débianiser mon Macbook Pro 13&#34; 2017 (intel)</title>
      <link>https://perri.to/fr/2023/11/debianiser-mon-macbook-pro-13-2017-intel/</link>
      <pubDate>Thu, 09 Nov 2023 21:40:30 +0100</pubDate>
      <guid>https://perri.to/fr/2023/11/debianiser-mon-macbook-pro-13-2017-intel/</guid>
      <description>&lt;h1 id=&#34;débianiser-mon-macbook-pro-13-intel-macbookpro-142&#34;&gt;Débianiser mon MacBook Pro 13 (intel) (MacBookPro 14,2)&lt;/h1&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;https://perri.to/postmedia/debianize_mbp/IMG_2569.jpeg&#34; width=&#34;50%&#34;&gt;&lt;figcaption&gt;&#xA;&#x9;&#x9;&#x9;&lt;h4&gt;Macbook Pro with the keyboard I actually use it with&lt;/h4&gt;&#xA;&#x9;&#x9;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;h2 id=&#34;pourquoi-&#34;&gt;Pourquoi ?&lt;/h2&gt;&#xA;&lt;p&gt;Cela fait un moment que je voulais avoir un ordinateur portable sous linux. Comme je travaille quotidiennement sur macOS, mon seul ordinateur sous linux est un poste fixe.&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;essaie de ne pas passer plus de temps que mes heures de travail à mon bureau afin de préserver la séparation travail/vie personnelle.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rétro-ingénierie de mon bureau assis-debout kqueo, partie 1</title>
      <link>https://perri.to/fr/2022/12/retro-ingenierie-de-mon-bureau-assis-debout-kqueo-partie-1/</link>
      <pubDate>Thu, 29 Dec 2022 17:11:58 -0300</pubDate>
      <guid>https://perri.to/fr/2022/12/retro-ingenierie-de-mon-bureau-assis-debout-kqueo-partie-1/</guid>
      <description>&lt;h2 id=&#34;comment-tout-a-commencé&#34;&gt;Comment tout a commencé&lt;/h2&gt;&#xA;&lt;p&gt;Quand j&amp;rsquo;ai déménagé en France, j&amp;rsquo;ai dû reconstruire mon bureau à domicile. Pour mon bureau, j&amp;rsquo;ai opté pour une marque locale : &lt;a href=&#34;https://kqueo.fr/&#34;&gt;kqueo&lt;/a&gt;.&#xA;Je me suis dit qu&amp;rsquo;au mieux c&amp;rsquo;était un produit local, et au pire une simple remarque générique pour laquelle ils pourraient fournir des pièces au besoin.&#xA;J&amp;rsquo;ai choisi &lt;a href=&#34;https://kqueo.fr/products/active-120x80-bureau-assis-debout-2-moteurs-avec-plateau-120x80-cm-hauteur-reglable-de-75-a-122-cm&#34;&gt;ce modèle&lt;/a&gt; : deux moteurs, un boîtier&#xA;de commande central et un panneau avec 3 boutons pour la position mémoire, monter, descendre et M (pour enregistrer les positions), plus un afficheur à 3 chiffres.&lt;/p&gt;</description>
    </item>
    <item>
      <title>J&#39;ai échangé ma dette technique contre du crédit technique</title>
      <link>https://perri.to/fr/2022/04/jai-echange-ma-dette-technique-contre-du-credit-technique/</link>
      <pubDate>Sat, 09 Apr 2022 14:29:27 +0200</pubDate>
      <guid>https://perri.to/fr/2022/04/jai-echange-ma-dette-technique-contre-du-credit-technique/</guid>
      <description>&lt;h2 id=&#34;un-mode-de-vie&#34;&gt;Un mode de vie&lt;/h2&gt;&#xA;&lt;p&gt;Laissez-moi vous donner un peu de contexte ; au début, cela n&amp;rsquo;aura peut-être pas beaucoup de sens, mais soyez patients.&#xA;J&amp;rsquo;ai grandi dans un pays où l&amp;rsquo;inflation atteint les deux chiffres. Il y a une course continue entre les salaires et le coût de la vie. Il a connu plusieurs effondrements économiques. Et pourtant, les gens parviennent à mener une vie « normale » ou, du moins, une routine. La seule chose dans laquelle tout le monde dans mon pays est plutôt compétent, c&amp;rsquo;est la gestion de la dette. J&amp;rsquo;aborde la dette technique exactement de la même manière et je veux partager cela avec vous.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Générer des types go à partir de json</title>
      <link>https://perri.to/fr/2020/11/generer-des-types-go-a-partir-de-json/</link>
      <pubDate>Fri, 13 Nov 2020 00:21:26 +0000</pubDate>
      <guid>https://perri.to/fr/2020/11/generer-des-types-go-a-partir-de-json/</guid>
      <description>&lt;p&gt;L&amp;rsquo;un des obstacles les plus courants lorsqu&amp;rsquo;on programme des logiciels exposés à internet en Go est le parsing du JSON. En tant que langage typé, Go exige un destinataire correctement défini pour le JSON désérialisé. Un contournement courant est un arbre imbriqué à l&amp;rsquo;infini de &lt;code&gt;map[string]interface{}&lt;/code&gt; et un tas de type assertions récursives.&lt;/p&gt;&#xA;&lt;p&gt;En développant &lt;a href=&#34;https://github.com/ShiftLeftSecurity/atlassian-connect-go&#34;&gt;atlassian-connect-go&lt;/a&gt;, je me suis heurté au même mur : beaucoup des types d&amp;rsquo;Atlassian n&amp;rsquo;étaient définis que sous forme de JSON. J&amp;rsquo;ai fini par le régler en créant &lt;a href=&#34;https://github.com/perrito666/LAC&#34;&gt;LazyApiCoder&lt;/a&gt;, qui peut créer un ensemble complet de types go à partir soit d&amp;rsquo;un schéma swagger 3, soit d&amp;rsquo;un ensemble d&amp;rsquo;exemples JSON.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Créer des plugins JIRA cloud (atlassian connect) en Go</title>
      <link>https://perri.to/fr/2020/11/creer-des-plugins-jira-cloud-atlassian-connect-en-go/</link>
      <pubDate>Mon, 09 Nov 2020 17:27:06 +0000</pubDate>
      <guid>https://perri.to/fr/2020/11/creer-des-plugins-jira-cloud-atlassian-connect-en-go/</guid>
      <description>&lt;h2 id=&#34;quest-ce-quun-plug-in-pour-jira-cloud&#34;&gt;Qu&amp;rsquo;est-ce qu&amp;rsquo;un plug-in pour JIRA cloud&lt;/h2&gt;&#xA;&lt;p&gt;Atlassian accepte les plugins Cloud sous la forme d&amp;rsquo;applications du framework Atlassian Connect,&#xA;qui consistent en une série d&amp;rsquo;endpoints servant divers iframes affichés dans leur interface, ainsi que&#xA;quelques webhooks. Toutes les capacités d&amp;rsquo;un plug-in sont déclarées dans un fichier JSON utilisé par JIRA ou&#xA;leurs autres apps pour « installer » le plugin.&lt;/p&gt;&#xA;&lt;p&gt;Comme il s&amp;rsquo;agit principalement de servir du contenu, si notre infrastructure est déjà composée de services en Go,&#xA;nous voudrons naturellement ajouter le plug-in à cette même infrastructure existante.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Surface pro contre iPad pro</title>
      <link>https://perri.to/fr/2018/09/surface-pro-contre-ipad-pro/</link>
      <pubDate>Sat, 15 Sep 2018 10:36:51 -0300</pubDate>
      <guid>https://perri.to/fr/2018/09/surface-pro-contre-ipad-pro/</guid>
      <description>&lt;p&gt;Il y a quelque temps, lorsque Apple a lancé l&amp;rsquo;&lt;a href=&#34;https://en.wikipedia.org/wiki/IPad_Pro&#34;&gt;iPad pro&lt;/a&gt; de &lt;a href=&#34;https://www.apple.com/shop/buy-ipad/ipad-pro/10.5-inch-display-64gb-gold-wifi&#34;&gt;10,5 pouces&lt;/a&gt;, après avoir eu le temps d&amp;rsquo;en manipuler un, j&amp;rsquo;ai décidé que ce serait l&amp;rsquo;appareil capable de combler le vide entre mon ordinateur portable (qui appartient en réalité à mon travail) et mon PC de bureau.&lt;/p&gt;&#xA;&lt;p&gt;Attention spoiler : ce n&amp;rsquo;était pas le cas&lt;/p&gt;&#xA;&lt;p&gt;Mon idée de départ était que l&amp;rsquo;appareil serve à plusieurs usages différents :&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Comme tablette ; après tout, je possédais déjà un petit iPad et je l&amp;rsquo;utilisais surtout pour netflix et de petites choses mobiles quand je n&amp;rsquo;avais pas mon téléphone sous la main.&lt;/li&gt;&#xA;&lt;li&gt;Comme appareil léger pour coder, idéalement un terminal bête ou simplement un lanceur d&amp;rsquo;éditeur pour coder rapidement ; avoir un clavier était un gros plus car il me suffisait de replier la housse pour obtenir un ordinateur portable très léger.&lt;/li&gt;&#xA;&lt;li&gt;Comme moyen de développer mes photos numériques ; j&amp;rsquo;aime me balader avec un Sony Alpha 6k ou même mon téléphone ordinaire équipé d&amp;rsquo;une appli photo correcte, et la plupart des photos reçoivent un petit coup de lightroom.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Avec cela en tête, j&amp;rsquo;ai lu/regardé plusieurs tests de l&amp;rsquo;iPad pro et de la Surface Pro (les deux appareils disposant à l&amp;rsquo;époque d&amp;rsquo;une alternative clavier) et je n&amp;rsquo;ai trouvé&amp;hellip; rien ; la plupart des tests étaient faits par des artistes capables de tirer bien plus que moi de l&amp;rsquo;Apple pencil et&amp;hellip; de comment s&amp;rsquo;appelle celui de la surface.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Reflection et types embarqués</title>
      <link>https://perri.to/fr/2018/09/reflection-et-types-embarques/</link>
      <pubDate>Mon, 03 Sep 2018 21:39:17 -0300</pubDate>
      <guid>https://perri.to/fr/2018/09/reflection-et-types-embarques/</guid>
      <description>&lt;p&gt;Dans le cadre du développement de &lt;a href=&#34;https://github.com/ShiftLeftSecurity/gaum&#34;&gt;gaum&lt;/a&gt;, je me suis retrouvé avec le besoin de décomposer une instance d&amp;rsquo;un struct pour alimenter un appel à &lt;a href=&#34;https://golang.org/pkg/database/sql/#Row.Scan&#34;&gt;Scan&lt;/a&gt; avec les attributs de l&amp;rsquo;instance mappés sur les colonnes de la ligne sql.&lt;/p&gt;&#xA;&lt;p&gt;Lorsqu&amp;rsquo;on manipule un struct dans le code, c&amp;rsquo;est-à-dire :&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-go&#34; data-lang=&#34;go&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;// BaseType is a poorly name type that exemplifies a struct to be embedded&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kd&#34;&gt;type&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;BaseType&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kd&#34;&gt;struct&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;aField&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;int64&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kd&#34;&gt;type&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;OtherType&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kd&#34;&gt;struct&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;BaseType&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;anotherField&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;&lt;p&gt;Maintenant, dans votre code, vous devriez pouvoir simplement invoquer &lt;code&gt;aField&lt;/code&gt; sur une instance de &lt;code&gt;OtherType&lt;/code&gt; en le référençant directement ainsi :&lt;/p&gt;</description>
    </item>
    <item>
      <title>Créer un bot Telegram avec GoSparta</title>
      <link>https://perri.to/fr/2018/08/creer-un-bot-telegram-avec-gosparta/</link>
      <pubDate>Mon, 13 Aug 2018 23:40:01 -0300</pubDate>
      <guid>https://perri.to/fr/2018/08/creer-un-bot-telegram-avec-gosparta/</guid>
      <description>&lt;h2 id=&#34;vue-densemble&#34;&gt;Vue d&amp;rsquo;ensemble&lt;/h2&gt;&#xA;&lt;p&gt;Quand j&amp;rsquo;ai commencé, mon objectif principal était d&amp;rsquo;apprendre &lt;a href=&#34;https://aws.amazon.com/lambda/&#34;&gt;AWS Lambda&lt;/a&gt;. J&amp;rsquo;ai fait quelques recherches sur la meilleure approche : si vous vouliez utiliser &lt;a href=&#34;https://golang.org/&#34;&gt;go&lt;/a&gt;, c&amp;rsquo;était d&amp;rsquo;utiliser un framework, ce qui m&amp;rsquo;a donné une occasion supplémentaire, celle d&amp;rsquo;essayer &lt;a href=&#34;https://gosparta.io/&#34;&gt;go sparta&lt;/a&gt; de &lt;a href=&#34;https://twitter.com/mweagle&#34;&gt;mweagle&lt;/a&gt;, que je voulais tester depuis un bon moment (et pas seulement parce qu&amp;rsquo;il travaille avec moi).&lt;/p&gt;&#xA;&lt;p&gt;Le choix du sujet pour ce court exercice était aléatoire ; j&amp;rsquo;ai estimé que l&amp;rsquo;API webhook de Telegram convenait bien à un exemple piloté par une fonction lambda et je voulais faire un bot idiot pour voir à quel point ce serait difficile, donc une bonne occasion d&amp;rsquo;essayer les deux.&lt;/p&gt;</description>
    </item>
    <item>
      <title>S&#39;étirer quelques muscles du hobby du code</title>
      <link>https://perri.to/fr/2018/02/setirer-quelques-muscles-du-hobby-du-code/</link>
      <pubDate>Fri, 02 Feb 2018 11:06:26 -0300</pubDate>
      <guid>https://perri.to/fr/2018/02/setirer-quelques-muscles-du-hobby-du-code/</guid>
      <description>&lt;h1 id=&#34;sétirer-quelques-muscles-techniques&#34;&gt;S&amp;rsquo;étirer quelques muscles techniques.&lt;/h1&gt;&#xA;&lt;p&gt;Les moments de temps libre où j&amp;rsquo;essaie de faire quelque chose lié à la technologie se font de plus en plus rares avec le temps. Avant, je le regrettais en me disant que je stagnais en termes de compétences. Il m&amp;rsquo;a fallu pas mal de temps et d&amp;rsquo;échanges avec des gens intéressants pour réaliser que ce qui s&amp;rsquo;était réellement passé, c&amp;rsquo;est que j&amp;rsquo;avais pris une direction professionnelle qui me permet désormais de faire ce que j&amp;rsquo;aime dans mon travail, en laissant un peu de place à la vie personnelle, ce qui est très important et de plus en plus ignoré chez les gens de la tech. Néanmoins, de temps à autre, je m&amp;rsquo;adonne encore au bricolage technique en guise de hobby, et ceci en fut l&amp;rsquo;un de ces cas.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Protéger l&#39;installation électrique.</title>
      <link>https://perri.to/fr/2017/10/proteger-linstallation-electrique./</link>
      <pubDate>Tue, 03 Oct 2017 19:27:23 -0300</pubDate>
      <guid>https://perri.to/fr/2017/10/proteger-linstallation-electrique./</guid>
      <description>&lt;p&gt;Si vous vivez en Argentine, comme c&amp;rsquo;est mon cas, il est quasiment certain que votre fournisseur d&amp;rsquo;énergie électrique est catastrophique ; dans mon cas c&amp;rsquo;est &lt;a href=&#34;https://www.epec.com.ar/&#34;&gt;E.P.E.C&lt;/a&gt; et il est fréquent d&amp;rsquo;avoir :&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Des chutes de tension.&lt;/li&gt;&#xA;&lt;li&gt;De la surtension.&lt;/li&gt;&#xA;&lt;li&gt;Des coupures de courant à répétition.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Certaines de ces situations sont exacerbées lorsqu&amp;rsquo;il y a des conditions climatiques défavorables (je ne parle pas d&amp;rsquo;ouragans, des vents réguliers à forts suffisent) étant donné que l&amp;rsquo;installation est encore faite de câble sur poteau de quebracho et que les conceptions des transformateurs et autres équipements auxiliaires ne sont, presque entièrement, qu&amp;rsquo;une simple remise au goût du jour de conceptions anciennes.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Les plugins Go et la distribution de contenu</title>
      <link>https://perri.to/fr/2017/03/les-plugins-go-et-la-distribution-de-contenu/</link>
      <pubDate>Mon, 13 Mar 2017 08:28:14 -0300</pubDate>
      <guid>https://perri.to/fr/2017/03/les-plugins-go-et-la-distribution-de-contenu/</guid>
      <description>&lt;h4 id=&#34;nouvelle-fonctionnalité&#34;&gt;Nouvelle fonctionnalité&lt;/h4&gt;&#xA;&lt;p&gt;La dernière version de go (&lt;a href=&#34;https://golang.org/doc/go1.8&#34;&gt;1.8&lt;/a&gt;) apporte une fonctionnalité que&#xA;j&amp;rsquo;attendais depuis très longtemps, les &lt;a href=&#34;https://golang.org/pkg/plugin/#Plugin.Lookup&#34;&gt;plugins&lt;/a&gt;.&#xA;Ceci dit, cette fonctionnalité a pour l&amp;rsquo;instant quelques limitations, présentes dans la documentation :&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Elle ne fonctionne que sous Linux (ce qui me convient très bien, vu ce que je veux faire)&lt;/li&gt;&#xA;&lt;li&gt;Un plugin n&amp;rsquo;est initialisé qu&amp;rsquo;une seule fois et ne peut pas être fermé.&lt;/li&gt;&#xA;&lt;li&gt;Il doit s&amp;rsquo;agir d&amp;rsquo;un paquet main.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Et j&amp;rsquo;ai aussi découvert par moi-même quelques petits désagréments :&lt;/p&gt;</description>
    </item>
    <item>
      <title>Juju Rechargé</title>
      <link>https://perri.to/fr/2016/11/juju-recharge/</link>
      <pubDate>Tue, 01 Nov 2016 12:00:59 -0300</pubDate>
      <guid>https://perri.to/fr/2016/11/juju-recharge/</guid>
      <description>&lt;h2 id=&#34;juju-rechargé&#34;&gt;Juju Rechargé&lt;/h2&gt;&#xA;&lt;p&gt;La semaine dernière, une nouvelle version de &lt;a href=&#34;https://jujucharms.com/&#34;&gt;juju&lt;/a&gt; a vu le jour et je pense qu&amp;rsquo;il est temps de faire&#xA;un petit compte rendu de ce que j&amp;rsquo;aime chez lui.&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai commencé à travailler chez &lt;a href=&#34;http://www.canonical.com/&#34;&gt;Canonical&lt;/a&gt; il y a presque trois ans,&#xA;dans l&amp;rsquo;équipe &lt;a href=&#34;https://jujucharms.com/&#34;&gt;juju&lt;/a&gt;. Ce qui m&amp;rsquo;a poussé vers ce poste, ce n&amp;rsquo;était pas l&amp;rsquo;entreprise, même si&#xA;elle a un long historique de travail lié au FLOSS.&lt;/p&gt;&#xA;&lt;p&gt;Deux aspects m&amp;rsquo;ont attiré à l&amp;rsquo;origine chez &lt;a href=&#34;https://jujucharms.com/&#34;&gt;juju&lt;/a&gt; :&lt;/p&gt;</description>
    </item>
    <item>
      <title>Une balade typique au pays de goworkon</title>
      <link>https://perri.to/fr/2016/10/une-balade-typique-au-pays-de-goworkon/</link>
      <pubDate>Fri, 21 Oct 2016 20:42:43 -0300</pubDate>
      <guid>https://perri.to/fr/2016/10/une-balade-typique-au-pays-de-goworkon/</guid>
      <description>&lt;h3 id=&#34;une-balade-typique-au-pays-de-goworkon&#34;&gt;Une balade typique au pays de goworkon&lt;/h3&gt;&#xA;&lt;p&gt;Après quelques semaines à travailler dessus et avec lui aussi, j&amp;rsquo;ai éliminé la plupart&#xA;des irritants urgents de &lt;a href=&#34;https://github.com/perrito666/goworkon&#34;&gt;goworkon&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Alors, maintenant que je me suis débarrassé de ça, je peux faire un petit tour d&amp;rsquo;horizon de la façon&#xA;d&amp;rsquo;utiliser &lt;a href=&#34;https://github.com/perrito666/goworkon/tree/v0.1alpha1&#34;&gt;goworkon v0.1alpha1&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h4 id=&#34;démarrage&#34;&gt;Démarrage&lt;/h4&gt;&#xA;&lt;p&gt;Le démarrage est encore un peu cahoteux, mais loin d&amp;rsquo;être pénible.&lt;/p&gt;&#xA;&lt;p&gt;En supposant que vous avez installé &lt;strong&gt;goworkon&lt;/strong&gt; (dans mon cas, j&amp;rsquo;ai simplement utilisé l&amp;rsquo;un de mes environnements de l&amp;rsquo;époque&#xA;et j&amp;rsquo;ai juste lancé &lt;code&gt;go get -u github.com/perrito666/goworkon&lt;/code&gt; et voilà.) vous devrez&#xA;ajouter quelque chose à votre &lt;strong&gt;~/.bashrc&lt;/strong&gt; (vous utilisez peut-être un autre shell, je ne peux pas garantir que cela&#xA;fonctionne là-bas.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Les snaps, c&#39;est facile</title>
      <link>https://perri.to/fr/2016/10/les-snaps-cest-facile/</link>
      <pubDate>Fri, 14 Oct 2016 19:40:13 -0300</pubDate>
      <guid>https://perri.to/fr/2016/10/les-snaps-cest-facile/</guid>
      <description>&lt;h2 id=&#34;les-snaps-cest-facile-et-jaime-ça&#34;&gt;Les snaps, c&amp;rsquo;est facile et j&amp;rsquo;aime ça.&lt;/h2&gt;&#xA;&lt;p&gt;Bon, je sais ce que tu penses : ce type travaille pour Canonical, il est&#xA;partial. Mais si tu demandes autour de toi, tu apprendras qu&amp;rsquo;en réalité je ne le&#xA;suis pas ; j&amp;rsquo;ai été très critique envers Canonical par le passé et je suis le premier&#xA;à l&amp;rsquo;admettre. Par exemple, même si j&amp;rsquo;aime les ppas, je déteste launchpad.&lt;/p&gt;&#xA;&lt;p&gt;Il y a quelque temps, j&amp;rsquo;ai décidé que je voulais essayer &lt;a href=&#34;https://caddyserver.com/&#34;&gt;caddy&lt;/a&gt; et que&#xA;la meilleure façon de le faire, comme tout le reste sur mon serveur, était « à la manière de debian »™,&#xA;alors &lt;a href=&#34;https://perri.to/fr/2016/04/construire-un-ppa-pour-caddy/&#34;&gt;je me suis lancé dans la pénible tâche de l&amp;rsquo;empaquetage&lt;/a&gt; et&#xA;il a fallu laisser couler pas mal d&amp;rsquo;eau sous les ponts avant d&amp;rsquo;en arriver à la tâche de le maintenir.&#xA;Récemment, &lt;a href=&#34;https://perri.to/fr/2016/10/premiere-version-de-goworkon/&#34;&gt;j&amp;rsquo;ai écrit un outil&lt;/a&gt; qui me permet&#xA;d&amp;rsquo;avoir un environnement facilement isolé pour caddy et donc de générer la base de code dont j&amp;rsquo;ai besoin pour publier&#xA;chaque version comme nouvelle source du fichier deb.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Première version de GoWorkOn</title>
      <link>https://perri.to/fr/2016/10/premiere-version-de-goworkon/</link>
      <pubDate>Thu, 13 Oct 2016 18:21:54 -0300</pubDate>
      <guid>https://perri.to/fr/2016/10/premiere-version-de-goworkon/</guid>
      <description>&lt;h2 id=&#34;gratter-la-démangeaison&#34;&gt;Gratter la démangeaison&lt;/h2&gt;&#xA;&lt;p&gt;Cette démangeaison particulière était une que j&amp;rsquo;avais depuis que j&amp;rsquo;ai quitté python, dans ma vie de développeur précédente,&#xA;où, en tant que gars de python, j&amp;rsquo;étais un utilisateur assidu de &lt;a href=&#34;https://virtualenvwrapper.readthedocs.io&#34;&gt;Virtualenv Wrapper&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Virtualenv, pour ceux qui n&amp;rsquo;ont pas eu le plaisir, vient résoudre le problème côté utilisateur du vendoring.&lt;/p&gt;&#xA;&lt;p&gt;Quand on travaille sur plusieurs projets, chacun avec son propre ensemble de dépendances versionnées, on risque de contaminer&#xA;ses autres projets par l&amp;rsquo;inclusion de versions différentes de paquets python, ce qui peut devenir vraiment&#xA;pénible, surtout parce qu&amp;rsquo;on n&amp;rsquo;a pas de compilateur pour vous signaler des choses comme « ta signature a changé ».&lt;/p&gt;</description>
    </item>
    <item>
      <title>Construire un PPA pour caddy</title>
      <link>https://perri.to/fr/2016/04/construire-un-ppa-pour-caddy/</link>
      <pubDate>Fri, 01 Apr 2016 09:31:35 -0300</pubDate>
      <guid>https://perri.to/fr/2016/04/construire-un-ppa-pour-caddy/</guid>
      <description>&lt;h2 id=&#34;comment-sest-passée-lexpérience&#34;&gt;Comment s&amp;rsquo;est passée l&amp;rsquo;expérience&lt;/h2&gt;&#xA;&lt;p&gt;La semaine dernière, j&amp;rsquo;étais en vacances et, à cause d&amp;rsquo;un concours de circonstances, je ne suis parti nulle part.&#xA;Avec le temps que j&amp;rsquo;avais sous la main, j&amp;rsquo;ai décidé d&amp;rsquo;essayer &lt;a href=&#34;https://caddyserver.com/&#34;&gt;caddy server&lt;/a&gt;, qui est un joli petit serveur écrit en go avec l&amp;rsquo;intégration de &lt;a href=&#34;https://letsencrypt.org/&#34;&gt;lets encrypt&lt;/a&gt;, écrit en &lt;a href=&#34;https://golang.org/&#34;&gt;Go&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Or, le résultat final est que je n&amp;rsquo;ai pas réussi à le mettre sur mon serveur, mais la raison n&amp;rsquo;est pas le logiciel lui-même.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Nouvelle section Tutoriels</title>
      <link>https://perri.to/fr/2016/02/nouvelle-section-tutoriels/</link>
      <pubDate>Mon, 29 Feb 2016 20:56:34 -0300</pubDate>
      <guid>https://perri.to/fr/2016/02/nouvelle-section-tutoriels/</guid>
      <description>&lt;p&gt;Après avoir un peu réfléchi à la façon de parler de la reflection en go&#xA;et peut-être de quelques autres sujets intéressants sur lesquels j&amp;rsquo;aimerais écrire&#xA;en détail, j&amp;rsquo;ai décidé d&amp;rsquo;ajouter une section &lt;strong&gt;Tutoriels&lt;/strong&gt; à ce site.&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai aussi dû changer le thème du site parce que le précédent était uniquement pour le blog.&lt;/p&gt;&#xA;&lt;p&gt;Donc un grand merci à l&amp;rsquo;auteur de &lt;a href=&#34;https://github.com/spf13/herring-cove&#34;&gt;herring cove&lt;/a&gt; pour ce qui est mon nouveau thème.&lt;/p&gt;&#xA;&lt;p&gt;Et voici la &lt;a href=&#34;https://perri.to/tutorials/quick_reflection_tutorial/&#34;&gt;toute nouvelle section &lt;strong&gt;Tutoriels&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Le printemps</title>
      <link>https://perri.to/fr/2015/09/le-printemps/</link>
      <pubDate>Sun, 27 Sep 2015 16:06:16 -0300</pubDate>
      <guid>https://perri.to/fr/2015/09/le-printemps/</guid>
      <description>&lt;h3 id=&#34;le-printemps-est-là&#34;&gt;Le printemps est là&lt;/h3&gt;&#xA;&lt;p&gt;Le printemps réveille toujours mon âme de photographe (ne te fais pas d&amp;rsquo;illusions,&#xA;c&amp;rsquo;est plus une âme qu&amp;rsquo;autre chose).&#xA;Aujourd&amp;rsquo;hui est l&amp;rsquo;une des premières journées vraiment agréables, après une pluie fine&#xA;toute la nuit, et les plantes sont vivantes et épanouies, alors voici quelques photos.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a data-flickr-embed=&#34;true&#34;  href=&#34;https://www.flickr.com/photos/perrito667/albums/72157656841928154&#34; title=&#34;Primavera 2015 - 2016&#34;&gt;&lt;img src=&#34;https://farm1.staticflickr.com/680/21575486128_89c6c93785_z.jpg&#34; width=&#34;428&#34; height=&#34;640&#34; alt=&#34;Primavera 2015 - 2016&#34;&gt;&lt;/a&gt;&lt;script async src=&#34;//embedr.flickr.com/assets/client-code.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt;&lt;/p&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai aussi fait cuire un peu de pain puisque j&amp;rsquo;en avais envie (et que je n&amp;rsquo;avais plus de pain)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mon premier snippet emacs (afficher le nom de fichier du buffer courant)</title>
      <link>https://perri.to/fr/2015/09/mon-premier-snippet-emacs-afficher-le-nom-de-fichier-du-buffer-courant/</link>
      <pubDate>Fri, 04 Sep 2015 20:32:13 -0300</pubDate>
      <guid>https://perri.to/fr/2015/09/mon-premier-snippet-emacs-afficher-le-nom-de-fichier-du-buffer-courant/</guid>
      <description>&lt;h3 id=&#34;cest-peut-être-moche-mais-cest-le-mien&#34;&gt;C&amp;rsquo;est peut-être moche, mais c&amp;rsquo;est le mien.&lt;/h3&gt;&#xA;&lt;p&gt;Je suis un gars de la console, j&amp;rsquo;aime faire beaucoup de choses dans la console même si&#xA;elles pourraient très probablement passer par mon éditeur (honnêtement, le truc pourrait&#xA;facilement faire tourner son propre serveur X si on le laissait faire, j&amp;rsquo;en suis sûr).&lt;/p&gt;&#xA;&lt;p&gt;Actuellement je me retrouve à travailler&#xA;en &lt;a href=&#34;https://golang.org/&#34;&gt;&lt;em&gt;golang&lt;/em&gt;&lt;/a&gt; qui, dans des projets suffisamment grands, comporte beaucoup&#xA;de fichiers aux noms similaires. Les noms similaires dans les fichiers go ne sont pas une mauvaise&#xA;chose, le chemin qui aboutit au paquet finit par être très descriptif,&#xA;comme &lt;strong&gt;github.com/myproject/web/api.go&lt;/strong&gt; et &lt;strong&gt;github.com/myproject/ssh/api.go&lt;/strong&gt;&#xA;qui forment un joli nom descriptif en contexte (et dans le code cela peut finir par donner&#xA;des choses comme &lt;strong&gt;web.API&lt;/strong&gt; et &lt;strong&gt;web.API.Endpoint&lt;/strong&gt; et &lt;strong&gt;ssh.API&lt;/strong&gt;) mais dans mon éditeur,&#xA;quand j&amp;rsquo;ai besoin de savoir de quel fichier il s&amp;rsquo;agit pour faire quelque chose d&amp;rsquo;amusant avec dans la console&#xA;(ou pour n&amp;rsquo;importe quelle autre raison) je n&amp;rsquo;ai trouvé aucun moyen pratique de retrouver le nom, si ce n&amp;rsquo;est&#xA;d&amp;rsquo;ouvrir la sélection des buffers, que je n&amp;rsquo;utilise pas beaucoup puisque j&amp;rsquo;utilise &lt;a href=&#34;http://emacswiki.org/emacs/TabBarMode&#34;&gt;tabbar&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>De retour à emacs</title>
      <link>https://perri.to/fr/2015/09/de-retour-a-emacs/</link>
      <pubDate>Fri, 04 Sep 2015 20:04:46 -0300</pubDate>
      <guid>https://perri.to/fr/2015/09/de-retour-a-emacs/</guid>
      <description>&lt;p&gt;Oui je sais, je ferais mieux de parler de religion, de politique, de guerre&#xA;ou de n&amp;rsquo;importe quel autre sujet moins sensible pour les développeurs du monde entier.&lt;/p&gt;&#xA;&lt;h3 id=&#34;un-peu-de-contexte&#34;&gt;Un peu de contexte.&lt;/h3&gt;&#xA;&lt;p&gt;J&amp;rsquo;ai été pendant de nombreuses années (une dizaine si je compte bien) un utilisateur de Vi, mais&#xA;cela n&amp;rsquo;a pas toujours été le cas. Comme la plupart des devs de mon âge, j&amp;rsquo;ai commencé en utilisant l&amp;rsquo;éditeur&#xA;Turbo* (Turbo C dans mon cas), qui avait très probablement un nom, mais je ne me suis jamais&#xA;donné la peine de l&amp;rsquo;apprendre.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Je vends un iPhone 5C (rose) débloqué</title>
      <link>https://perri.to/fr/2015/08/je-vends-un-iphone-5c-rose-debloque/</link>
      <pubDate>Sun, 30 Aug 2015 17:38:48 -0300</pubDate>
      <guid>https://perri.to/fr/2015/08/je-vends-un-iphone-5c-rose-debloque/</guid>
      <description>&lt;h2 id=&#34;il-a-un-peu-plus-dun-an-il-est-débloqué&#34;&gt;Il a un peu plus d&amp;rsquo;un an, il est débloqué.&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;AR$6000&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;C&amp;rsquo;est un iPhone 5C de 16G, débloqué d&amp;rsquo;usine.&lt;/li&gt;&#xA;&lt;li&gt;Couleur rose.&lt;/li&gt;&#xA;&lt;li&gt;Protection d&amp;rsquo;origine.&lt;/li&gt;&#xA;&lt;li&gt;Chargeur avec prise US :&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;https://perri.to/postmedia/vendo_iphone_5c/adapter.jpg&#34;&gt;&lt;figcaption&gt;&#xA;&#x9;&#x9;&#x9;&lt;h4&gt;US power plug.&lt;/h4&gt;&#xA;&#x9;&#x9;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;h3 id=&#34;si-ça-vous-intéresse-envoyez-moi-un-dm-une-mention-ou-similaire--voici-quelques-photos-réelles-du-téléphone&#34;&gt;Si ça vous intéresse, envoyez-moi un dm, une mention ou similaire ; voici quelques photos réelles du téléphone.&lt;/h3&gt;&#xA;&lt;p&gt;&lt;figure&gt;&lt;img src=&#34;https://perri.to/postmedia/vendo_iphone_5c/iphone_front.jpg&#34;&gt;&lt;figcaption&gt;&#xA;&#x9;&#x9;&#x9;&lt;h4&gt;De frente&lt;/h4&gt;&#xA;&#x9;&#x9;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;figure&gt;&lt;img src=&#34;https://perri.to/postmedia/vendo_iphone_5c/iphone_rear.jpg&#34;&gt;&lt;figcaption&gt;&#xA;&#x9;&#x9;&#x9;&lt;h4&gt;De atras&lt;/h4&gt;&#xA;&#x9;&#x9;&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tester en go, avec go check</title>
      <link>https://perri.to/fr/2015/08/tester-en-go-avec-go-check/</link>
      <pubDate>Fri, 28 Aug 2015 00:00:00 +0000</pubDate>
      <guid>https://perri.to/fr/2015/08/tester-en-go-avec-go-check/</guid>
      <description>&lt;h2 id=&#34;avertissement--ceci-est-principalement-destiné-à-servir-de-ma-propre-autodocumentation&#34;&gt;Avertissement : ceci est principalement destiné à servir de ma propre autodocumentation.&lt;/h2&gt;&#xA;&lt;p&gt;Tester en go est assez simple, comme vous pouvez le voir dans &lt;a href=&#34;http://golang.org/pkg/testing/&#34;&gt;la documentation&lt;/a&gt;&#xA;Une structure de base, un paquet simple :&lt;/p&gt;&#xA;&lt;p&gt;Un fichier nommé &lt;strong&gt;sample.go&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-go&#34; data-lang=&#34;go&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;package&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;sample&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kd&#34;&gt;func&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;sampleFunction&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;sampleSlice&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[]&lt;/span&gt;&lt;span class=&#34;kt&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;sampleSlice&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;append&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;sampleSlice&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;&amp;#34;called&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;&lt;p&gt;En ce qui concerne go, ceci est un paquet et si vous faites &lt;strong&gt;go build&lt;/strong&gt; dessus, il compilera.&#xA;Ajouter des tests à ce paquet est aussi simple qu&amp;rsquo;ajouter un fichier se terminant par &lt;strong&gt;_test.go&lt;/strong&gt;&#xA;Tout ce qui porte le nom mentionné ci-dessus sera interprété comme un fichier de test et donc&#xA;compilé uniquement au moment des tests.&#xA;À toutes fins pratiques, pendant les tests, votre fichier sera considéré comme faisant partie du&#xA;paquet dont le nom est déclaré dans la section &lt;strong&gt;package&lt;/strong&gt; du &lt;strong&gt;_test.go&lt;/strong&gt;.&#xA;Malheureusement, c&amp;rsquo;est là que s&amp;rsquo;arrête l&amp;rsquo;aide que go nous apporte pour faire des tests ; si vous lisez la documentation, vous&#xA;trouverez qu&amp;rsquo;il n&amp;rsquo;existe pas d&amp;rsquo;outillage intégré pour des choses comme les assertions et les suites.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Le locro à ma façon</title>
      <link>https://perri.to/fr/2014/05/le-locro-a-ma-facon/</link>
      <pubDate>Sun, 25 May 2014 00:00:00 +0000</pubDate>
      <guid>https://perri.to/fr/2014/05/le-locro-a-ma-facon/</guid>
      <description>&lt;h1 id=&#34;cette-recette&#34;&gt;Cette recette&lt;/h1&gt;&#xA;&lt;p&gt;Ce locro est à peu près celui que je préfère. La recette qui suit est née du mélange de plusieurs recettes différentes et a été modifiée pendant plusieurs années jusqu&amp;rsquo;à convenir au goût des convives les plus habituels de sa préparation annuelle.&lt;/p&gt;&#xA;&lt;h1 id=&#34;ingrédients&#34;&gt;Ingrédients&lt;/h1&gt;&#xA;&lt;h2 id=&#34;pour-le-locro&#34;&gt;Pour le locro&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;1 kg de Maïs Egran (-30%)&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;0.5 kg de Haricots Egran (-30%) (Haricots blancs)&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;1.5 kg de Courge pour locro&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;0.3 kg de Poitrine de porc (panceta)&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
