Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.html 97KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892
  1. <!doctype html><!-- This is a valid HTML5 document. -->
  2. <!-- Screen readers, SEO, extensions and so on. -->
  3. <html lang="fr">
  4. <!-- Has to be within the first 1024 bytes, hence before the `title` element
  5. See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
  6. <meta charset="utf-8">
  7. <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
  8. <!-- The viewport meta is quite crowded and we are responsible for that.
  9. See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
  10. <meta name="viewport" content="width=device-width,initial-scale=1">
  11. <!-- Required to make a valid HTML5 document. -->
  12. <title>Tag #incompétence — David Larlet</title>
  13. <meta name="description" content="Publications relatives au tag #incompétence">
  14. <!-- That good ol' feed, subscribe :). -->
  15. <link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/">
  16. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  17. <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png">
  18. <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png">
  19. <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png">
  20. <link rel="manifest" href="/static/david/icons2/site.webmanifest">
  21. <link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c">
  22. <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
  23. <meta name="msapplication-TileColor" content="#f7f7f7">
  24. <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
  25. <meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)">
  26. <meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)">
  27. <!-- Documented, feel free to shoot an email. -->
  28. <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
  29. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  30. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  31. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  32. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  33. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  34. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  35. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  36. <script>
  37. function toggleTheme(themeName) {
  38. document.documentElement.classList.toggle(
  39. 'forced-dark',
  40. themeName === 'dark'
  41. )
  42. document.documentElement.classList.toggle(
  43. 'forced-light',
  44. themeName === 'light'
  45. )
  46. }
  47. const selectedTheme = localStorage.getItem('theme')
  48. if (selectedTheme !== 'undefined') {
  49. toggleTheme(selectedTheme)
  50. }
  51. </script>
  52. <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all">
  53. <header>
  54. <h1>Publications relatives au tag #incompétence</h1>
  55. </header>
  56. <nav>
  57. <p class="center">
  58. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  59. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
  60. </svg> Accueil</a>
  61. • <a rel="tags" href="/david/#tags" title="Liste de toutes les étiquettes"><svg class="icon icon-tags">
  62. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-tags"></use>
  63. </svg> Étiquettes</a>
  64. </p>
  65. </nav>
  66. <hr>
  67. <main>
  68. <p>Liste des publications en ordre chronologique :</p>
  69. <h2><a href="/david/2021/01/03/" title="Lien permanent vers cet article">Vaccina(c)tion</a> (2021-01-03)</h2>
  70. <details>
  71. <summary>Déplier pour lire le contenu de l’article</summary>
  72. <blockquote>
  73. <p>Il existe une limite à la force que les plus puissants eux-mêmes ne sauraient atteindre sans se détruire. L’art véritable de tout gouvernement est <mark>d’évaluer cette limite</mark>. Le mauvais usage du pouvoir constitue le péché fatal. La loi ne peut être un outil de vengeance, pas plus qu’un otage ou une barrière contre les martyrs qu’elle a pu créer. On ne peux menacer un individu et se soustraire aux conséquences.</p>
  74. <p><cite><em>Muad’Dib et la Loi</em>, extrait des <em>Commentaires de Stilgar</em> (<a href="/david/2020/12/21/#dune">Dune</a> II. Le messie de Dune)</cite></p>
  75. </blockquote>
  76. <p>J’ai les yeux rivés sur les courbes de vaccination et j’ai beau refaire mes calculs il n’y a aucune chance que le «&nbsp;<a href="https://inessential.com/2020/12/31/when_are_we_back_to_normal">retour à l’anormal</a> (<a href="/david/cache/2021/c8678419b1c96d90ea066a3f6f6e3479/">cache</a>)&nbsp;» soit pour cet été. Après une année de pandémie, je suis dans l’incompréhension totale. Il suffisait pourtant de regarder <a href="/david/2020/12/15/#contagion">Contagion</a>…</p>
  77. <p>Puisque le gouvernement ne fait clairement pas le boulot, voici quelques sites permettant de vous y retrouver au niveau de la vaccination&nbsp;:</p>
  78. <ul>
  79. <li><a href="https://art-bd.shinyapps.io/covid19canada/">pour le Canada</a> (onglet VaxView)&#8239;;</li>
  80. <li><a href="https://covidtracker.fr/vaccintracker">pour la France</a>&#8239;;</li>
  81. <li><a href="https://apps.clinicalepidemio.fr/vaccine/">pour l’analyse coûts/bénéfices</a>&#8239;;</li>
  82. <li><a href="https://twitter.com/VieDeCarabin/status/1346235405394472966">pour une version illustrée</a>&#8239;;</li>
  83. <li><a href="https://ourworldindata.org/covid-vaccinations">pour le monde</a>&#8239;;</li>
  84. <li>pour comprendre <a href="https://tanialouis.fr/2020/12/27/le-compromis-de-la-vulgarisation/">le compromis de la vulgarisation</a> (<a href="/david/cache/2021/3d37e77a601b6dd7043bbb17a4a2d199/">cache</a>)&#8239;;</li>
  85. <li>pour analyser <a href="https://berthub.eu/articles/posts/reverse-engineering-source-code-of-the-biontech-pfizer-vaccine/">le code source</a> (<a href="/david/cache/2021/66ef8e7fa0942fc975723f7df4d932e9/">cache</a>) du vaccin&#8239;;</li>
  86. <li><a href="https://www.ansm.sante.fr/S-informer/Points-d-information-Points-d-information">les points réguliers de l’ANSM</a> sont détaillés et pertinents.</li>
  87. </ul>
  88. <p><strong>Je ne sais pas comment est-ce que l’on peut en arriver à une telle incurie.</strong> C’est sidérant. Et triste, tellement triste.</p>
  89. <blockquote lang="en">
  90. <p>When systems are built to last for decades, we often don’t see the disaster unfolding until the people who cared for those systems have been gone for quite some time. The blessing and the curse of good infrastructure is that <mark>when it works, it is invisible</mark>: which means that too often, we don’t devote much care to it until it collapses.</p>
  91. <p><cite><em><a href="https://logicmag.io/care/built-to-last/">Built to Last</a></em> (<a href="/david/cache/2021/f1df3d5f1720e137130581d5a2b8549f/">cache</a>)</cite></p>
  92. </blockquote>
  93. </details>
  94. <h2><a href="/david/2021/01/17/" title="Lien permanent vers cet article">Finesse</a> (2021-01-17)</h2>
  95. <details>
  96. <summary>Déplier pour lire le contenu de l’article</summary>
  97. <blockquote>
  98. <p>Une <strong>espace fine insécable</strong> est un caractère typographique dont l’espace est un peu plus fine que l’espace insécable (une espace que l’on intercale entre deux parties qui ne doivent pas être séparées par un éventuel retour à la ligne automatique). Le code typographique français recommande une espace fine insécable devant les signes de ponctuation doubles sauf deux-points (point-virgule, point d’interrogation, point d’exclamation), et à l’intérieur des guillemets français pour les séparer du texte mis en exergue. Pour les nombres de quatre chiffres, l’espace fine insécable est préférable. On ne sépare pas les chiffres en tranches de trois pour un ordinal ou un numéro.</p>
  99. <p><cite><a href="https://fr.wikipedia.org/wiki/Espace_fine_ins%C3%A9cable">Espace fine insécable</a>, sur Wikipedia</cite></p>
  100. </blockquote>
  101. <p>Il y a depuis peu des espaces insécables <em>fine</em> sur cet espace (en plus des insécables classiques lorsque j’y pensais). C’est un détail mais j’arrive à faire la distinction entre les deux maintenant que j’ai pris conscience de cette différence.</p>
  102. <p><strong>Un petit pas de plus dans ma compréhension de ce domaine.</strong> Limite <em>snob</em> mais j’assume. Le plus difficile étant de faire la part des choses entre les différentes ressources à ce sujet qui ont tendance à se contre-dire (et je ne parle même pas des différences au sein de la francophonie…). Des choix — futiles donc indispensables — à faire, des affirmations à défaire, des raisonnements à refaire. C’est peut-être la définition de mon activité&#8239;!</p>
  103. <blockquote>
  104. <p>L’hypothèse selon laquelle le fonctionnement d’un système peut être amélioré par une intervention brutale sur ses éléments conscients traduit une <mark>dangereuse ignorance</mark>. Cette attitude fut trop longtemps celle des esprits qui se qualifient des épithètes de «&nbsp;scientifique&nbsp;» et de «&nbsp;technologues&nbsp;».</p>
  105. <p><cite><em>Le Jihad Butlérien</em>, par Harq al-Ada (<a href="/david/2020/12/21/#dune">Dune</a> III. Les enfants de Dune)</cite></p>
  106. </blockquote>
  107. </details>
  108. <h2><a href="/david/2021/02/02/" title="Lien permanent vers cet article">Complexité</a> (2021-02-02)</h2>
  109. <details>
  110. <summary>Déplier pour lire le contenu de l’article</summary>
  111. <blockquote lang="en">
  112. <p>As much as we talk about avoiding complexity <em>in</em> our programs, we seem to love the complexity of the tooling <em>around</em> our programs. As Ousterhout notes, <mark>every time you add a tool or configuration to a project, you’re adding an element that developers must learn</mark>, be aware of, or at minimum be exposed to. So while we think we’re lowering the bar of contributing and collaborating on a project — which may be true for <em>some</em> people — it’s possible we’re actually excluding people from contribution and collaboration because of the overwhelming complexity of our team of robots.</p>
  113. <p><cite><em><a href="https://blog.jim-nielsen.com/2021/codbase-collaboration-between-humans-and-robots/">Codebase Collaboration Between Humans and Robots</a></em> (<a href="/david/cache/2021/321b85630164ca075bd3be265f23aed5/">cache</a>)</cite></p>
  114. </blockquote>
  115. <p><a href="/david/2021/02/01/" title="Software">Suite</a> de mes réflexions sur le sujet (et en fait il s’agit d’un truc autour duquel je tourne depuis <a href="/david/blog/2014/gaspillage-numerique/">pas mal de temps</a>), je doute de plus en plus de la pertinence de ces enchaînements d’étapes à chaque <em>commit/push</em>. Ma difficulté actuelle est de faire la distinction entre les moments où c’est important et ceux où ça peut être facultatif (et potentiellement le rendre désactivable). On peut rapidement être <a href="https://osd.ovh/index.php?article10/nostalgie-de-lancien-web">nostalgique</a> (<a href="/david/cache/2021/59bd3fea3b3b370bd6b116e77effb69e/">cache</a>) d’un temps où l’on n’avait pas tout ça mais je me rappelle aussi du renommage des fichiers en direct sur le serveur et des conflits ou des oublis lorsqu’on travaille à plusieurs dessus, etc. C’était l’enfer et c’est bien pour cela que l’on s’est outillé un minimum depuis.</p>
  116. <p>Il y a probablement un entre-deux plus sain à trouver. Et en fait <em>plusieurs</em> en fonction du contexte. Je regrette parfois d’avoir lâché du lest sur certains aspects, j’en apprécie d’autres au quotidien. Une histoire de compromis.</p>
  117. <blockquote lang="en">
  118. <p>The technology stack was not the limit we faced in this project over the years. It was rather the <mark>abstractions</mark> we created our own that got in our way.</p>
  119. <p><cite><em><a href="https://9elements.com/blog/maintaining-javascript-applications-in-the-long-term/">Maintaining JavaScript applications in the long term</a></em> (<a href="/david/cache/2021/6d16a2f955aeaa4f23c239373824143f/">cache</a>)</cite></p>
  120. </blockquote>
  121. </details>
  122. <h2><a href="/david/2021/02/08/" title="Lien permanent vers cet article">Niveaux</a> (2021-02-08)</h2>
  123. <details>
  124. <summary>Déplier pour lire le contenu de l’article</summary>
  125. <blockquote lang="en">
  126. <p>Pick a foundational web development concept (e.g. HTML, CSS, JavaScript, etc.) and explain it at two levels: first as you would to a colleague who’s not a software developer, like a designer or product manager; next, as you would to a peer.</p>
  127. <p><cite><em><a href="https://jacobian.org/2021/feb/8/interview-questions-explain-a-topic/">“Explain a Topic At Multiple Levels…”</a></em> (<a href="/david/cache/2021/c9fad8039837ef9a671e1fb52cbbeb35/">cache</a>)</cite></p>
  128. </blockquote>
  129. <p>J’aime bien la simplicité de la question qui rend visibles plusieurs choses. À commencer par la capacité à savoir vulgariser des concepts non triviaux mais qui font pourtant partie de notre quotidien. Je me risque à la métaphore que cela m’a inspiré&nbsp;:</p>
  130. <blockquote>
  131. <p>HTTP est le carton dans lequel votre meuble IKEA vient d’être livré (HTTPS si vous avez dû signer un reçu), vous découvrez dedans des morceaux de HTML. La façon dont vous allez les agencer pour construire un meuble, c’est ce que fait CSS avec les pages web pour leur donner forme. C’est ce qui va donner une structure/du volume à ces pièces détachées. Et JavaScript&#8239;? C’est la charnière de la porte que vous montez de travers et qui va grincer pendant toute la durée de vie de ce meuble 🚎. S’il reste une cheville à la fin… on la met dans le <em>footer</em>.</p>
  132. </blockquote>
  133. <p>Entre temps, <a href="https://www.la-grange.net/karl/">Karl</a> me pointe une pratique de Shopify qui se rapproche des mes <a href="/david/2021/01/26/" title="Conférences">questionnements sur le mentorat</a>, à expérimenter&nbsp;:</p>
  134. <blockquote lang="en">
  135. <p>In advance of the first meeting, mentees are asked to identify technical skills gaps they want to improve. During their first meeting, mentees and mentors work together building a tangible goal that they can work towards over the course of the six weeks. Goals often change and that’s expected.</p>
  136. <p>Through the initial kickoff meeting and weekly check-ins via Slack, we reinforce and reiterate throughout the program that <mark>the goal itself is never the goal</mark>, but an opportunity to work towards a moving target.</p>
  137. <p><cite><em><a href="https://shopify.engineering/technical-mentorship-reimagined">Technical Mentorship Reimagined: Time-bound and No Awkward Asks Necessary</a></em> (<a href="/david/cache/2021/7b8d925b24ca7a4777becd5cc212d11a/">cache</a>)</cite></p>
  138. </blockquote>
  139. </details>
  140. <h2><a href="/david/2021/02/28/" title="Lien permanent vers cet article">Constance</a> (2021-02-28)</h2>
  141. <details>
  142. <summary>Déplier pour lire le contenu de l’article</summary>
  143. <p>L’une des choses que me procure l’écriture quotidienne (et que j’avais oubliée) c’est de réduire drastiquement la pression au niveau de la qualité de ce qui est partagé. Sur un tel flux, il y a forcément des inégalités de pertinence et je ne peux que l’accepter — ou renoncer. C’est un excellent moyen de lâcher prise sur l’un de mes principaux blocages liés à l’écriture, en ajoutant ce qu’il faut de bruit je me crée un espace vivant, en <a href="/david/2021/01/24/" title="Négativité">retranchant</a> ce qu’il faut d’attention pour ne pas créer une bulle mortifère.</p>
  144. <blockquote>
  145. <p>Dans une telle cacophonie informationnelle qui nous plonge, bon gré mal gré, dans une situation de cocktail mondial, qu’est-ce qui va retenir notre attention&#8239;? Quelles sont les propositions qui vont capter notre précieux temps de cerveau disponible&#8239;? Quels sont les produits cognitifs qui auront un avantage concurrentiel sur ce marché de l’information devenu métastasé&#8239;?</p>
  146. <p><cite><em><a href="https://theconversation.com/bonnes-feuilles-apocalypse-cognitive-155247">Bonnes feuilles&nbsp;: «&nbsp;Apocalypse cognitive&nbsp;»</a></em> (<a href="/david/cache/2021/127326e70c4f151132af72e4b0a5827b/">cache</a>)</cite></p>
  147. </blockquote>
  148. </details>
  149. <h2><a href="/david/2021/03/03/" title="Lien permanent vers cet article">Vivre avec</a> (2021-03-03)</h2>
  150. <details>
  151. <summary>Déplier pour lire le contenu de l’article</summary>
  152. <blockquote>
  153. <p>Chaque jour de «&nbsp;vivre avec&nbsp;», les différents variants du virus circulent. Plus ils circulent, plus la probabilité de nouveaux variants augmente. En décembre, quand les médias ont commencé à parler de variants, les bavards ont joué les étonnés&nbsp;: Des variants&#8239;? Il y a des variants&#8239;? Quelle surprise&#8239;! Bah oui&#8239;! Des mutations. Des branches. Des variétés. Biologie élémentaire. Plus on laisse tourner cette saloperie, plus on risque de voir émerger des variants. C’est ça aussi, le «&nbsp;vivre avec&nbsp;». Ça veut dire jouer avec le feu. Ça veut dire laisser brûler un immeuble, puis un quartier, voire toute une ville, en espérant que le feu en se propageant ne va pas atteindre une bonbonne de gaz, un bidon d’essence, ou un entrepôt de produits chimiques.</p>
  154. <p>Chaque jour de «&nbsp;vivre avec&nbsp;», la peur fait son chemin. <mark>Chaque jour de «&nbsp;vivre avec&nbsp;», les esprits sont usés par les situations absurdes, les mensonges officiels, les injonctions contradictoires.</mark> Chaque jour de «&nbsp;vivre avec&nbsp;», les habitants de ce pays prennent conscience qu’ils ne peuvent plus compter sur leur pays. Chaque jour de «&nbsp;vivre avec&nbsp;», on rend les gens un peu plus fous – y compris l’auteur de ces lignes.</p>
  155. <p><cite><em><a href="https://prototypekblog.wordpress.com/2021/03/02/vivre-avec-les-fleaux/">Vivre avec les fléaux</a></em> (<a href="/david/cache/2021/f9327416703abe2963573a84d1d0a39e/">cache</a>)</cite></p>
  156. </blockquote>
  157. <p>Je ne vous cache pas qu’il m’est de plus en plus difficile de communiquer/implémenter quotidiennement la doctrine gouvernementale. Faire un tel suivi me met <a href="/david/2020/05/26/">chaque jour depuis 9&nbsp;mois</a> aux premières loges des incohérences et autres revirements de situation. Le pire étant de faire le constat de l’accouchement, en un mot&nbsp;: douloureux. On attend toujours les doses de péridurale…</p>
  158. <p>J’ai vraiment de l’empathie pour les 68&nbsp;millions de français·es qui n’y comprennent rien aux directives et c’est la raison pour laquelle je continue à faire mon travail de vulgarisation/simplification mais je sais que je suis en train d’y laisser des plumes. Ne serait-ce que par le fait de <em>vivre avec</em> ce doute oppressant&nbsp;: suis-je vraiment en train de faire le moins de dégâts possible&#8239;?!</p>
  159. </details>
  160. <h2><a href="/david/2021/03/16/" title="Lien permanent vers cet article">Confort</a> (2021-03-16)</h2>
  161. <details>
  162. <summary>Déplier pour lire le contenu de l’article</summary>
  163. <blockquote lang="en">
  164. <p>Developers, particularly in Silicon Valley firms, are definitionally wealthy and enfranchised by world-historical standards. Like upper classes of yore, comfort (&quot;DX&quot;) comes with courtiers happy to declare how important comfort must surely be. It’s bunk, or at least most of it is.</p>
  165. <p>As frontenders, <mark>our task is to make services that work well for all, not just the wealthy</mark>. If improvements in our tools or our comfort <em>actually</em> deliver improvements in that direction, so much the better. But we must never forget that measurable improvement for <em>users</em> is the yardstick.</p>
  166. <p><cite><em><a href="https://infrequently.org/2021/03/the-performance-inequality-gap/">The Mobile Performance Inequality Gap, 2021</a></em> (<a href="/david/cache/2021/d3a653c926aa97707653300947b65ab5/">cache</a>)</cite></p>
  167. </blockquote>
  168. <p>Pour résumer, le budget réactualisé de la décence serait de <q>~100KiB (gzipped) of HTML/CSS/fonts and 300-350KiB of JavaScript on the wire (compressed)</q>. Un demi méga-octet transféré et si on a bien fait son travail on espère que ça ne donne pas une expérience trop fastidieuse en-deçà du 75<sup>e</sup> centile.</p>
  169. <p>Je viens de vérifier et on est à 469&#8239;Ko sur <a href="https://mesconseilscovid.sante.gouv.fr/">MesConseilsCovid</a>. On a dû faire des choix assez drastiques pour cela&nbsp;: pas de <em>framework</em>, des dépendances limitées, etc. Est-ce que c’est inconfortable pour autant&#8239;? Parfois, et dans ces moments je me rappelle que mon «&nbsp;inconfort&nbsp;» est au service de l’accessibilité du produit pour lequel je travaille.</p>
  170. <p>Et j’y accorde davantage d’importance.</p>
  171. <blockquote lang="en">
  172. <p>Getting there involves no small amount of class traitorship; <mark>the frontend community will need to value the commons over personal comfort</mark> for a little while longer to ease our ecosystem back toward health. The past 6&nbsp;years of consulting with partner teams has felt like a dark remake of Groundhog Day, with a constant parade of sites failing from the get-go thanks to Framework + Bundler + SPA architectures that are mismatched to the tasks and markets at hand. Time (and chips) can heal these wounds if we only let it. We only need to hold the line on script bloat for a few years for devices and networks to overtake the extreme, unconscionable excesses of the 2010’s.</p>
  173. <p><cite><em>Ibid.</em></cite></p>
  174. </blockquote>
  175. </details>
  176. <h2><a href="/david/2021/03/23/" title="Lien permanent vers cet article">Recrutement</a> (2021-03-23)</h2>
  177. <details>
  178. <summary>Déplier pour lire le contenu de l’article</summary>
  179. <blockquote>
  180. <p>À chaque étape la ques­tion est essen­tiel­le­ment «&nbsp;<mark>Est-ce qu’on veut travailler ensemble &#8239;?</mark> pourquoi &#8239;? qu’est-ce qui pour­rait coin­cer &#8239;?&nbsp;». À l’en­tre­tien tech­nique on peut éven­tuel­le­ment ajou­ter «&nbsp;Où posi­tion­ner le candi­dat par rapport aux sala­riés actuels au niveau compé­tences et rému­né­ra­tion &#8239;?&nbsp;». Le reste c’est de la litté­ra­ture.</p>
  181. <p><cite><em><a href="https://n.survol.fr/n/longueur-du-processus-de-recrutement">Longueur du processus de recrutement</a></em> (<a href="/david/cache/2021/b50e973ef4e131098b91c9d99cb69a5a/">cache</a>)</cite></p>
  182. </blockquote>
  183. <p>Ma ligne de temps pour une candidature au <abbr title="Canadian Digital Service">CDS</abbr>-<abbr title="Service Numérique Canadien">SNC</abbr>&nbsp;:</p>
  184. <ul>
  185. <li><a href="/david/2021/01/22/" title="Tentation">22&nbsp;janvier</a>&nbsp;: Yannick poste <a href="https://numerique.canada.ca/join-our-team/positions/d%C3%A9veloppeur-de-logiciel-senior-principal-e-python/">un lien</a> (<a href="/david/cache/2021/b7829aa5073173cca4ed3f4ea23e767f/">cache</a>) sur le chat interne de <a href="http://scopyleft.fr/">Scopyleft</a>&#8239;;</li>
  186. <li>25&nbsp;janvier&nbsp;: j’applique (en bon québécois) après 5&nbsp;années d’hésitations pour de nombreuses raisons — je suis rappelé dès le lendemain&#8239;;</li>
  187. <li>27&nbsp;janvier&nbsp;: rencontre avec la personne dédiée à mon recrutement (30&#8239;min), on échange un peu sur mon parcours et sur ce que je pourrais faire au <a href="https://digital.canada.ca/">CDS</a>-<a href="https://numerique.canada.ca/">SNC</a>, je me rends compte que je n’ai jamais passé d’entretien de recrutement à proprement parler — je suis rappelé le 2&nbsp;février&#8239;;</li>
  188. <li><a href="/david/2021/02/04/" title="Chance">4&nbsp;février</a>&nbsp;: rencontre en anglais (1&#8239;h) avec deux personnes sur les <em>Core Values</em>, j’apprécie beaucoup que ces sujets soient abordés avant même de parler de technique, on parle d’humanité, d’empathie, d’inclusion — je suis rappelé le 16&nbsp;février&#8239;;</li>
  189. <li>17&nbsp;février&nbsp;: rencontre en anglais (1&#8239;h 30&#8239;min) avec deux personnes sur les <em>Technical Skills</em>, je raconte certaines expériences, on évoque des scénarios, c’est relativement équilibré comme discussion et je ne peux m’empêcher de voir des parallèles avec ce qui se fait (ou pas) chez <a href="https://beta.gouv.fr/">betagouv</a> — je suis rappelé le 1<sup>er</sup> mars&#8239;;</li>
  190. <li>10&nbsp;mars&nbsp;: rencontre en français (1&#8239;h 30&#8239;min) avec deux personnes sur les <em>Technical Skills</em> encore une fois, j’apprécie le fait que ce ne soit <a href="https://medium.com/swlh/why-senior-engineers-hate-coding-interviews-d583d2855757">pas un test technique</a> (<a href="/david/cache/2021/cfe6353c663f062eb2e6ccfcace889ef/">cache</a>) mais un échange horizontal sur des situations plus ou moins fictives et les pistes de résolution associées&#8239;;</li>
  191. <li>23&nbsp;mars&nbsp;: courriel m’indiquant que je ne suis finalement pas retenu.</li>
  192. </ul>
  193. <p>Ce qui n’est pas explicite avec ces dates, c’est le stress diffus avec de gros <em>gros</em> pics sur une période de plusieurs mois. C’est l’incapacité à travailler lorsque j’ai un entretien dans la journée. Ce sont les doutes entre chaque session avant d’attendre un retour qui arrive plusieurs jours après. Ce sont les questionnements au moment de la préparation, les remises en question de mes capacités.</p>
  194. <p>Je comprends l’intérêt de tester la motivation dans la durée mais je me demande aussi si un tel processus ne ferme pas la porte à des personnes moins privilégiées, moins en confiance, dans une situation moins stable.</p>
  195. <p>Au cours de ce processus, la <a href="https://jacobian.org/series/unpacking-interview-questions/">série de billets</a> de Jacob m’a été d’une grande aide. Le <a href="https://eng-hiring.18f.gov/">guide de 18F</a> m’a beaucoup rassuré aussi pour avoir une idée du potentiel enchainement au complet. Et bien sûr, le <a href="https://cds-snc.github.io/technical-playbook-manuel-technique/">Technical Playbook</a> (<a href="https://cds-snc.github.io/technical-playbook-manuel-technique/fr/">version française</a>) du CDS-SNC lui-même.</p>
  196. <p>Sur une note positive, j’aurais beaucoup appris au cours de ce parcours, surtout sur moi. La relation au stress, à la confiance en moi mais aussi des réflexions sur le plus long terme. <strong>Ce que je suis prêt à changer dans ma vie</strong>, la dose de liberté que je peux/veux réduire, les libérations et les contraintes que cela m’apporterait. Au fil du temps, j’ai pu affiner mes questions/attentes aussi, afin de mieux connaître la structure et les façons de fonctionner. Je suis reconnaissant des personnes qui ont pris le temps de s’intéresser à ma candidature et qui ont été vraiment bienveillantes durant ce parcours.</p>
  197. <p>En bonus, je crois que ça me permet de travailler mon acceptation de l’échec… et du contentement. J’espère néanmoins que ce sera le premier <em>et</em> le dernier parcours de recrutement de ce type que j’aurais à faire dans ma vie. Sans aigreur, ce n’est pas un processus qui me semble être adapté à ma façon de rejoindre une structure/équipe. Je crois que j’ai besoin de <em>faire</em> et d’<em>être</em> avec les personnes car l’hypothétique résiste rarement à l’épreuve du réel. Mais peut-être que cette démarche prend trop de temps&#8239;?</p>
  198. <blockquote lang="en">
  199. <p>How many hours does it take to hire someone, from approval of the open position to their first day? It takes <strong>about 100&nbsp;person-hours</strong>, and that’s about a best-case scenario.</p>
  200. <p><cite><em><a href="https://jacobian.org/2021/mar/11/hours-to-hire/">How Long Does It Take to Hire Someone?</a></em> (<a href="/david/cache/2021/e7dd6d41e04bcbf69d3bf09bce827e4c/">cache</a>)</cite></p>
  201. </blockquote>
  202. </details>
  203. <h2><a href="/david/2021/03/29/" title="Lien permanent vers cet article">Évaluation</a> (2021-03-29)</h2>
  204. <details>
  205. <summary>Déplier pour lire le contenu de l’article</summary>
  206. <blockquote>
  207. <p>Alas, many developers don’t build with this mindset. I mean, I understand why: <mark>it means thinking about users with the most boring, least powerful technology</mark>. It’s simpler and more exciting to assume that everyone’s got a shared baseline of newer technology. But by doing that, you’re missing out on one of the web’s superpowers: that something served up at the same URL with the same underlying code can simultaneously serve people with older technology <em>and</em> also provide a whizz-bang experience to people with the latest and greatest technology.</p>
  208. <p><cite><em><a href="https://adactio.com/journal/17987">The principle of most availability</a></em> (<a href="/david/cache/2021/15d4f93dba253e3194c8dba52d0e8ee6/">cache</a>)</cite></p>
  209. </blockquote>
  210. <p><em>Pensée du jour suite à un retour interne (merci&#8239;!) relatif à mon <a href="/david/2021/03/23/" title="Recrutement">non-recrutement</a>. Comme un besoin de déconstruire le refus pour pouvoir me reconstruire…</em></p>
  211. <p>Lorsqu’on est évalué pour un nouveau poste, on essaye de connaître la situation technique la plus complexe à laquelle on a été confrontée. Et cela a tendance à me rappeler d’une certaine manière le <a href="/david/stream/2015/12/29/">Principe d’Aurélien</a>. Ce qui me semblerait intéressant serait d’évaluer les choix qui ont été réalisés pour <em>ne pas</em> arriver à ce niveau de complexité.</p>
  212. <p>Comment est-ce que vous avez réussi à garder une équipe à taille humaine&#8239;? Quelles mesures avez-vous mis en place pour conserver un ensemble technologique cohérent, compréhensible et maintenable&#8239;? Quelles sont les plus faibles compétences requises pour modifier les données sur ce produit&#8239;? Qu’est-ce qui a été automatisé et délégué, pourquoi&#8239;? Seriez-vous à l’aise pour transmettre cette application, à qui&#8239;? Qu’est-ce qui vous empêche de dormir la nuit à son sujet&#8239;?</p>
  213. <p>Il est certain qu’en créant une usine à gaz on acquiert tout un lot de compétences. Mais ce ne sont <a href="/david/2021/03/28/" title="Smolstack">pas celles qui m’attirent</a> (et je ne parle même pas d’humain). Il est des moments où <a href="/david/stream/2015/06/06/">relire ses archives</a> fait du bien.</p>
  214. <blockquote>
  215. <p>Je vous développe une application complexe parce que je n’ai pas l’expérience pour en écrire une moins sophistiquée.</p>
  216. <p><cite><em>Blaise Pascal fait du développement web</em>, Les dépendenciales (2021)</cite></p>
  217. </blockquote>
  218. </details>
  219. <h2><a href="/david/2021/04/25/" title="Lien permanent vers cet article">Complot</a> (2021-04-25)</h2>
  220. <details>
  221. <summary>Déplier pour lire le contenu de l’article</summary>
  222. <blockquote>
  223. <p>Il y a un effet de dévoilement lié à la réalisation d’une prédiction, qui produit une forme de jubilation n’ayant pas grand-chose à voir avec la vérité. Car ce qui intéresse les complotistes, c’est <mark>l’euphorie d’avoir eu raison</mark>, d’avoir été prophétique. Il faut séparer ce sentiment des discussions scientifiques en cours, qui sont légitimes en démocratie.</p>
  224. <p><cite><em><a href="https://www.lemonde.fr/les-decodeurs/article/2021/04/25/on-avait-raison-chez-les-complotistes-l-art-du-triomphalisme-selectif_6077975_4355770.html">«&nbsp;On avait raison&nbsp;»&nbsp;: chez les complotistes, l’art du triomphalisme sélectif</a></em> (<a href="/david/cache/2021/246f7c9e777e8403db950c0ed7a5d93b/">cache</a>)</cite></p>
  225. </blockquote>
  226. <p>Bon, la communication du gouvernement français — teintée d’arrogances et de certitudes — n’aide <strong>vraiment</strong> pas dans le contexte scientifique qui est celui de l’impermanence et du doute. Vaccins, mutants, propagation, après un an on ne sait finalement pas grand chose même s’il y a des espoirs qui se dessinent ici et là. Ma seule croyance c’est qu’une situation incompréhensible et anxiogène mène a davantage de clivages et augmente la polarité au sein d’une population.</p>
  227. <p>Dans un contexte chaotique, la «&nbsp;sachance&nbsp;» est une bénédiction. Elle offre des vérités rassurantes là où il n’y en a aucunes et j’envie presque les personnes qui pensent avoir raison dans cette gigantesques inconnue qu’est une pandémie à notre époque. Sans condescendance.</p>
  228. </details>
  229. <h2><a href="/david/2021/04/28/" title="Lien permanent vers cet article">Politique</a> (2021-04-28)</h2>
  230. <details>
  231. <summary>Déplier pour lire le contenu de l’article</summary>
  232. <blockquote>
  233. <p><strong>No more societal and political discussions on our company Basecamp account.</strong> Today’s social and political waters are especially choppy. Sensitivities are at 11, and every discussion remotely related to politics, advocacy, or society at large quickly spins away from pleasant. You shouldn’t have to wonder if staying out of it means you’re complicit, or wading into it means you’re a target. These are difficult enough waters to navigate in life, but significantly more so at work. It’s become too much. <mark>It’s a major distraction.</mark> It saps our energy, and redirects our dialog towards dark places. It’s not healthy, it hasn’t served us well. And we’re done with it on our company Basecamp account where the work happens. People can take the conversations with willing co-workers to Signal, Whatsapp, or even a personal Basecamp account, but it can’t happen where the work happens anymore.</p>
  234. <p><cite><em><a href="https://world.hey.com/jason/changes-at-basecamp-7f32afc5">Changes at Basecamp</a></em> (<a href="/david/cache/2021/c6a317213165bc069aabb49c53184a7f/">cache</a>)</cite></p>
  235. </blockquote>
  236. <p>Voilà une décision assez surprenante et qui a produit pas mal de réactions dans ma bulle. J’ai tendance à penser que tout peut devenir politique, de l’endroit où on choisit (parfois) de respirer notre air à l’eau plus ou moins embouteillée et propre que l’on boit, en passant par le bruit que l’on supporte/endure, etc. L’ensemble de nos stimuli et choix est politique si l’on en a conscience. Si l’on en <em>prend</em> conscience.</p>
  237. <p>Ce à quoi l’on consacre notre force de travail est de fait éminemment politique. Autant dire que pour ne pas se laisser <q>distraire</q> par la politique, il faudrait ne plus rien faire au travail. Et encore, même ceci est une contre-action motivée. Le rêve du libertarien est probablement cet ingénieur a-politique, a-cérébré, qui n’est qu’un pion analytique dans cette immense machine à fric.</p>
  238. <p>Et en même temps, je conçois que l’on ne puisse pas être en accord avec de trop nombreuses personnes. Et si cela affecte la productivité d’une équipe, il reste à définir ce que l’on souhaite <em>produire</em> en travaillant ensemble. Pour ma part, la réponse actuelle est simple&nbsp;:</p>
  239. <p>Une pensée critique. <strong>Et donc politique.</strong></p>
  240. <p><mark>Note avant publication&nbsp;:</mark> je choisis finalement de publier ce billet après de nombreux doutes au cours de la semaine, notamment car les <a href="https://marker.medium.com/the-pyramid-of-hate-that-brought-down-basecamp-838b63ca27e">récents</a> (<a href="/david/cache/2021/c92f91f646dd606f81a329fe2c91d733/">cache</a>) <a href="https://www.platformer.news/p/-how-basecamp-blew-up">rebondissements</a> (<a href="/david/cache/2021/413c4ae36b9d7f577768dcc991561268/">cache</a>) sont <a href="https://www.baldurbjarnason.com/2021/you-are-what-you-do/">extrêmement</a> (<a href="/david/cache/2021/a52987d5a3fe3c1e6f3a267a20d43d52/">cache</a>) préoccupants.</p>
  241. </details>
  242. <h2><a href="/david/2021/05/05/" title="Lien permanent vers cet article">Accessibilité</a> (2021-05-05)</h2>
  243. <details>
  244. <summary>Déplier pour lire le contenu de l’article</summary>
  245. <p>Aujourd’hui, on a reçu le rapport d’un audit d’accessibilité. Cela fait maintenant <a href="/david/2020/05/26/">un an</a> que nous travaillons sur <a href="https://mesconseilscovid.sante.gouv.fr/">MesConseilsCovid</a> et c’est intéressant d’avoir des <a href="https://access42.net/?lang=fr">personnes tierces et expertes</a> qui viennent analyser tout cela avec un peu de recul. Je pensais que l’on n’était pas trop mauvais·es et nous étions en fait <a href="https://github.com/Delegation-numerique-en-sante/mesconseilscovid/labels/rgaa">assez loin</a> du compte&#8239;! Une belle leçon d’humilité, même en pensant faire attention à ces aspects.</p>
  246. <p>La difficulté — une fois les erreurs corrigées à l’instant <code>t</code> — est de rester accessibles à l’instant <code>t + 1</code>.</p>
  247. </details>
  248. <h2><a href="/david/2021/05/16/" title="Lien permanent vers cet article">Aération</a> (2021-05-16)</h2>
  249. <details>
  250. <summary>Déplier pour lire le contenu de l’article</summary>
  251. <blockquote>
  252. <p>Malgré tous les efforts mis en œuvre, l’épidémie de COVID-19&nbsp;se poursuit et les phases de confinement – déconfinement – reconfinement s’enchaînent. Le coronavirus se transmet principalement par des gouttelettes et aérosols contenant des particules de SARS-CoV-2. Les aérosols sont des micro-gouttelettes produites lorsque l’on respire. Dans les lieux clos, ils se retrouvent en suspension dans l’air jusqu’à plusieurs mètres de la personne qui les a produites, et peuvent y rester pendant plusieurs heures.</p>
  253. <p>Le masque filtre une partie des aérosols, mais il devient moins efficace si la quantité d’aérosols est trop importante. Une autre mesure, très efficace pour limiter la transmission de virus transmis par aérosols, est de <mark>réduire la concentration d’aérosols en les diluant.</mark> Pour diminuer la concentration des aérosols dans une pièce, il suffit d’aérer avec de l’air extérieur&#8239;! Il faut alors ouvrir grand les fenêtres pour renouveler complètement l’air de la pièce.</p>
  254. <p><cite><em><a href="https://www.adioscorona.org/questions-reponses/2021-04-15-mesurer-taux-co2-pour-lutter-contre-covid19.html">Pourquoi mesurer le taux de CO2&nbsp;peut-il nous aider à lutter contre la COVID-19&#8239;?</a></em> (<a href="/david/cache/2021/22b380308edae42dce43930916bc6375/">cache</a>)</cite></p>
  255. </blockquote>
  256. <p>Si vous préférez une <a href="https://www.youtube-nocookie.com/embed/8b3lhDyVqgk">explication détaillée en vidéo</a> (lien Google Youtube) avec <a href="https://scienceetonnante.com/2021/04/30/covid-aerosols/">ses sources</a> (<a href="/david/cache/2021/d73bc89a90d59a754d1aef48251da90a/">cache</a>) et notamment <a href="https://www.pnas.org/content/pnas/118/17/e2018995118.full.pdf">celle-ci</a> (<a href="/static/david/2021/article-guideline-to-limit-indoor-airborne-transmission-covid.pdf">cache PDF - 1,5&#8239;Mo</a>). Il y aussi <a href="https://indoor-covid-safety.herokuapp.com/">un simulateur</a> pour vous aider à faire le calcul en fonction des conditions de votre contexte. Il y aurait des moyens de réduire mes <a href="/david/2021/05/15/" title="Inquiétude">inquiétudes</a>, des <a href="http://nousaerons.fr/">sites</a> <a href="https://projetco2.fr/">dédiés</a> existent et n’attendent qu’un peu de publicité pour une communication claire et des moyens associés, notamment dans les salles de classes.</p>
  257. <p>Pour cela, il faudrait admettre que l’<a href="/david/2021/04/25/" title="Complot">on s’est trompé</a>, adapter la doctrine gouvernementale pour qu’elle reflète l’état actuel des connaissances scientifiques, se concentrer sur les 20&#8239;% des mesures barrières qui produisent 80&#8239;% de l’efficacité connue. <strong>La complexité dans cette démarche est de transmettre une connaissance plus qu’une doctrine.</strong> Mettre en capacité de comprendre qu’une tablée de 10&nbsp;en plein vent c’est moins problématique qu’une de 4&nbsp;dans un petit restaurant mal ventilé. Rendre les personnes autonomes en leur permettant de faire des choix éclairés en conscience.</p>
  258. <p>Le retour de bâton serait qu’elles puissent faire d’autres choix éclairants si elles prenaient conscience de leur force. Ce n’est <a href="/david/2021/04/20/" title="Remote">pas forcément envisageable</a> par le pouvoir en place…</p>
  259. <blockquote>
  260. <p>La civilisation est en grande partie fondée sur la couardise. Il est si simple de civiliser en enseignant à être lâche. Étouffez les critères qui conduiraient au courage. Limitez l’exercice de la volonté. Égalisez les appétits. Bouchez les horizons. Décrétez une loi pour chaque mouvement. <mark>Niez l’existence du chaos.</mark> Apprenez même aux enfants à respirer lentement. Domptez.</p>
  261. <p><cite><em>Les Mémoires Volés</em> dans <em><a href="/david/2020/12/21/#dune">Dune</a> IV. L’Empereur-Dieu de Dune</em>, Frank Herbert</cite></p>
  262. </blockquote>
  263. <p><mark>Ajouté avant publication&nbsp;:</mark></p>
  264. <blockquote>
  265. <p>Or, il est de plus en plus clair aujourd’hui que la contamination par aérosols domine, comme le clament depuis un an les spécialistes des aérosols, qui ont dû lutter pour faire entendre leur voix, et s’appuient sur de nombreuses études d’événement de propagation du SARS-CoV-2. Les mesures proposées au départ étaient, donc, très insuffisantes.</p>
  266. <p><cite><em><a href="https://ducotedelascience.org/3937-2/">La contamination par aérosols&nbsp;: les clés, les sources et les avancées règlementaires</a></em> (<a href="/david/cache/2021/4a053a8bc34cadde5b46d59f01f9a8c8/">cache</a>)</cite></p>
  267. </blockquote>
  268. </details>
  269. <h2><a href="/david/2021/05/25/" title="Lien permanent vers cet article">Mérite</a> (2021-05-25)</h2>
  270. <details>
  271. <summary>Déplier pour lire le contenu de l’article</summary>
  272. <blockquote>
  273. <p><strong>D’une part il s’agit de faire reculer à l’arrière plan et si possible d’effacer le récit d’un naufrage.</strong> Naufrage qui est celui de la gestion «&nbsp;technique&nbsp;» des données de la pandémie et de la capacité des services de l’état à produire des applications et des services à la hauteur de la crise et des urgences. […] Plus on parlera de la réussite des outils déployés par Guillaume Rozier et plus on pourra souligner de manière opportune à quel point les services de l’état, à défaut d’être en capacité d’en produire de pareille qualité, se sont fait un point d’honneur de les utiliser au mieux et de les «&nbsp;valoriser&nbsp;» et même de leur avoir permis d’exister.</p>
  274. <p>[…]</p>
  275. <p><mark>Effacer les échecs et les errances du régalien donc.</mark> Et puis <strong>d’autre part, il s’agit d’enfoncer encore un peu plus le récit libéral de la réussite individuelle.</strong> «&nbsp;Regardez&nbsp;» nous dit-on, «&nbsp;regardez ce que ce jeune ingénieur sorti de nulle part et sans aucune aide publique à réussi à mettre en place tout seul, et tout en continuant de travailler à côté&#8239;!!&nbsp;» Et alors, mais alors seulement, attendez-vous à la reconnaissance de la nation.</p>
  276. <p><cite><em><a href="https://www.affordance.info/mon_weblog/2021/05/guillaume-rozier-chevalier-scraper.html">Guillaume Rozier&nbsp;: le chevalier Scraper et sans reproches.</a></em> (<a href="/david/cache/2021/d786e761d41716e6074a9345a2610dbf/">cache</a>)</cite></p>
  277. </blockquote>
  278. <p>Olivier Ertzscheid tape malheureusement trop juste. Bien sûr que je me réjouis que les outils de Guillaume Rozier soient aussi populaires et fassent la promotion de l’OpenData et de la transparence et de la puissance de l’OpenSource et tout ça. Mais — et je ne peux pas trop en dire — c’est quand même bien frustrant de se dire que c’est un palliatif à l’inefficacité (interne) et au manque de vision de l’État.</p>
  279. <p>J’ai parfois l’impression d’être au pied du moulin. Et de me rendre compte qu’il fait 300&nbsp;mètres de haut. Tou·tes les fonctionnaires de France ont un sacré <em>mérite</em> par les temps qui courent…</p>
  280. </details>
  281. <h2><a href="/david/2021/06/06/" title="Lien permanent vers cet article">Abonnement</a> (2021-06-06)</h2>
  282. <details>
  283. <summary>Déplier pour lire le contenu de l’article</summary>
  284. <blockquote lang="en">
  285. <p>That all sounds great. However, as I mentioned, we love goodwill, and a lot of people wince when they hear “subscription.” The first thing that pops up in a user’s head are scammy companies that make cancellation a nightmare, like multi-level marketing schemes, gym memberships, and Adobe. The App Store prevents these shenanigans: you get a reminder email before renewal, and you can cancel within the <em>Settings</em> app in seconds. Whenever a company offers a subscription, I always try to buy it through the App Store.</p>
  286. <p>Some folks absolutely loathe subscriptions on <em>principle</em>, and <mark>will never rent something if they can own it</mark>. This is not unreasonable. Halide is like a camera, and while professionals are used to renting gear, most consumers own their camera.</p>
  287. <p><cite><em><a href="https://lux.camera/lux-year-4-doubling-down/">Lux Year 4: Doubling Down</a></em> (<a href="/david/cache/2021/0c45751cd69748ca779b1442b26ad6c3/">cache</a>)</cite></p>
  288. </blockquote>
  289. <p>Les créateurs de Halide (et Spectre) reviennent en détail sur leur stratégie, notamment financière, pour faire évoluer leur produit. J’utilise ces deux applications, aussi c’est d’autant plus intéressant de lire leurs doutes et leurs pistes vis à vis de cette évolution.</p>
  290. <p><em>Je ne crois pas avoir lu un seul retour de développeur d’application pour iOS qui ne se plaigne pas de l’AppStore.</em></p>
  291. <p>Ce n’est vraiment pas évident de trouver un moyen d’être rémunéré de manière stable et pérenne lorsqu’on vend un produit, surtout si on souhaite qu’il soit durable. Il y a des jours où j’aimerais me préoccuper de ces aspects là… et d’autres où je suis bien content de vendre ma «&nbsp;force de travail&nbsp;». C’est un choix de vie qui m’offre pour l’instant une plus grande liberté d’esprit mais qui pourrait changer lorsque je n’aurai plus l’impression d’avoir suffisamment de <q>force</q> justement.</p>
  292. <p>En tant que développeur, j’ai de plus en plus l’impression que l’on crée notre propre système d’abonnement en augmentant la complexité de nos outils et de notre <em>stack</em> (ça sonne toujours mieux en anglais), ce qui génère la nécessité d’une maintenance régulière assurant un fond de roulement. La «&nbsp;tierce maintenance applicative&nbsp;» n’est pas nouvelle mais elle me semble atteindre un tout autre niveau ces dernières années sur le Web.</p>
  293. <p>On crée tranquillement notre propre besoin, <a href="http://megelison.com/poor-in-tech">en étant sur-payé·es</a> (<a href="/david/cache/2021/86eba8e465d7ce11ef61a0c61f878f21/">cache</a>), et personne ne semble s’en offusquer plus que ça…</p>
  294. <blockquote lang="en">
  295. <p>And I’m not 100% sure, but I think this might contribute to longevity. Some of my clients are still working with the same sites I built for them nearly 10&nbsp;years ago, a few with just minor security-related updates in the meantime and <mark>no other maintenance strictly required</mark>. That’s not to say that those sites couldn’t use a “lick of paint” to bring them in to the 2020s; the point is that they <em>work</em>. And for organizations working on really tight budgets, or budgets that fluctuate wildly due to public funding, stability is really important. They can’t afford a developer on retainer to keep things running smoothly.</p>
  296. <p><cite><em><a href="https://piperhaywood.com/two-articles-on-spa-or-spa-like-sites-vs-alternatives/">Two articles on SPA or SPA-like sites vs alternatives</a></em> (<a href="/david/cache/2021/d46752726e00de301573576176df1f1c/">cache</a>)</cite></p>
  297. </blockquote>
  298. </details>
  299. <h2><a href="/david/2021/06/23/" title="Lien permanent vers cet article">FullStack</a> (2021-06-23)</h2>
  300. <details>
  301. <summary>Déplier pour lire le contenu de l’article</summary>
  302. <blockquote lang="en">
  303. <p>It’s almost like it’s a culture of masculinity stretching its legs wide across the seats of the tech industry.</p>
  304. <p>If a skill is worth masculinity points, it’s claimed. If a skill is coded as feminine it’s remade with masculine tools. If a skill can’t be remade it’s dropped and ignored.</p>
  305. <p>Which is why front end got turned into a programmatic hardcore engineering fest. It’s malleable to that (at huge cost to the users). <mark>It’s also why accessibility will never be considered full stack, as it can’t be automated.</mark> It requires empathy and communication.</p>
  306. <p>To feed the ego of a masculine webtech industry we sacrificed accessibility and usability.</p>
  307. <p><cite><em>Charlie Don’t Surf</em>, <a href="https://twitter.com/sonniesedge/status/1405099209913679872">sur Twitter</a></cite></p>
  308. </blockquote>
  309. <p>On touche un point sensible ici, celui de l’automatisation pour pallier ses propres faiblesses de communication. C’est ce que j’observe assez régulièrement avec ma boîte noire favorite&nbsp;:</p>
  310. <p>Docker. <a href="https://blog.newsblur.com/2021/06/28/story-of-a-hacking/">Oups</a> (<a href="/david/cache/2021/5b96c01bfd8b66a26135b7ce8bdff79d/">cache</a>).</p>
  311. <p>Derrière cette tentative de reproductibilité, on masque un processus d’installation et surtout une remise en cause des dépendances. On perd l’occasion d’avoir la friction (répétée) qui va générer cette discussion. On prolétarise les personnes non-érudites à coups de <code>docker-compose up</code> en cachant une technique qui serait la voie vers leur autonomie. On contraint les utilisateur·ices <a href="/david/2021/06/06/" title="Abonnement">à s’abonner</a> à nos se(r)vices.</p>
  312. <p>Ce ne sont pas nos produits que l’on met en boîte mais nos pairs que l’on enferme dans cette façon de (dé)penser pour le confort de quelques uns. Ce domaine a besoin <a href="/david/2021/05/11/" title="Paradigme">de voiliers</a>, pas de cargos.</p>
  313. <blockquote lang="en">
  314. <p>💯 To claim full stack as a title is to declare that you are a replaceable unit in the cog of capitalism. The ultimate human resource to be exploited!</p>
  315. <p><cite><em>Charlie Don’t Surf</em>, <a href="https://twitter.com/sonniesedge/status/1405123679801991175">sur Twitter</a></cite></p>
  316. </blockquote>
  317. <p><a href="/david/2021/03/28/" title="Smolstack">Yup.</a></p>
  318. </details>
  319. <h2><a href="/david/2021/07/05/" title="Lien permanent vers cet article">Ano(r)malisme</a> (2021-07-05)</h2>
  320. <details>
  321. <summary>Déplier pour lire le contenu de l’article</summary>
  322. <p>Se dire qu’une expérience singulière n’est pas reproductible car le contexte était trop particulier. J’ai souvent croisé ce schéma de pensée, notamment dans le contexte professionnel. C’est triste car ça referme brutalement des portes à peine entrouvertes.</p>
  323. <p>Un contexte se crée et se façonne — disent les privilégié·es — mais il faut pour cela être suffisamment en (in)sécurité. Un entre-deux génère un <a href="/david/2021/01/05/" title="Statu quo">statu quo</a>.</p>
  324. <blockquote>
  325. <p>La bureaucratie est la mort de l’initiative. Il n’est rien que des bureaucrates haïssent plus que l’innovation, en particulier celle qui produit de meilleurs résultats que les vieilles routines traditionnelles. <mark>Les améliorations font toujours paraître ineptes ceux qui se trouvent au sommet de la pyramide.</mark> Et qui prend plaisir à avoir l’air inepte&#8239;?</p>
  326. <p><cite><em>Guide des Essais et Erreur dans l’Art de Gouverner, Archives du Bene Gesserit</em>, <em><a href="/david/2020/12/21/#dune">Dune</a> V. Les Hérétiques de Dune</em>, Frank Herbert</cite></p>
  327. </blockquote>
  328. </details>
  329. <h2><a href="/david/2021/07/11/" title="Lien permanent vers cet article">Lebensraum</a> (2021-07-11)</h2>
  330. <details>
  331. <summary>Déplier pour lire le contenu de l’article</summary>
  332. <blockquote lang="en">
  333. <p>The quest for German domination was premised on the denial of science. Hitler’s alternative to science was the idea of Lebensraum. Germany needed an Eastern European empire because only conquest, and not agricultural technology, offered the hope of feeding the German people. In Hitler’s “Second Book,” which was composed in 1928&nbsp;and not published until after his death, he insisted that hunger would outstrip crop improvements and that all “the scientific methods of land management” had already failed. No conceivable improvement would allow Germans to be fed “from their own land and territory,” he claimed. Hitler specifically — and wrongly — denied that irrigation, hybrids and fertilizers could change the relationship between people and land.</p>
  334. <p>[…]</p>
  335. <p>As exotic as it sounds, <mark>the concept of Lebensraum is less distant from our own ways of thinking than we believe</mark>. Germany was blockaded during World War I, dependent on imports of agricultural commodities and faced real uncertainties about its food supply. Hitler transformed these fears into a vision of absolute conquest for total security. Lebensraum linked a war of extermination to the improvement of lifestyle. The chief Nazi propagandist, Joseph Goebbels, could therefore define the purpose of a war of extermination as “a big breakfast, a big lunch and a big dinner.” He conflated lifestyle with life.</p>
  336. <p><cite><em><a href="https://www.nytimes.com/2015/09/13/opinion/sunday/the-next-genocide.html">The Next Genocide</a></em> (<a href="/david/cache/2021/3815e3f5dd6f18955523fa715cf49853/">cache</a>)</cite></p>
  337. </blockquote>
  338. <p>Cet article met en rapport l’idéologie nazie et l’auto-suffisance avec un angle qui ne m’est pas familier. Je n’avais pas pris conscience de cette prépondérance dans la doctrine que je voyais bien davantage centrée sur la race que sur l’alimentation du peuple. La mise en lumière sur ce qui est en train de se passer dans le monde — aujourd’hui — à ce sujet est assez éloquente.</p>
  339. <p>La guerre de l’agriculture, et donc <a href="/david/2021/06/27/" title="Sécheresse">de l’eau</a> (aussi <a href="/david/2021/07/10/" title="Eau virtuelle">virtuelle</a> soit-elle), ne fait que s’intensifier.</p>
  340. </details>
  341. <h2><a href="/david/2021/07/12/" title="Lien permanent vers cet article">Blame</a> (2021-07-12)</h2>
  342. <details>
  343. <summary>Déplier pour lire le contenu de l’article</summary>
  344. <blockquote>
  345. <p>La mémoire ne recrée jamais la réalité. <mark>Elle la reconstitue.</mark> Et tout reconstitution modifie l’original en devenant elle-même un cadre de référence externe obligatoirement imparfait.</p>
  346. <p><cite><em>Manuel du Mentat</em>, <em><a href="/david/2020/12/21/#dune">Dune</a> V. Les Hérétiques de Dune</em>, Frank Herbert</cite></p>
  347. </blockquote>
  348. <p>J’ai beau essayer de faire attention, il y a des fois où je me foire grave. Aujourd’hui, j’ai mis la pression sur une victime (qui n’avait rien demandée) au lieu d’accepter <em>ma</em> confrontation avec l’oppresseur (qui est <em>mon</em> problème en tant qu’aspirant allié). C’est frustrant car je ne pensais pas pouvoir encore faire ça, ma route est encore longue. J’espère pouvoir me rattraper mais c’était quand même très indélicat de ma part…</p>
  349. <p>Je consigne cela ici pour ne pas l’oublier trop vite.</p>
  350. <p><em>Merci <a href="https://d%C3%A9tour.studio/">Thomas</a>.</em></p>
  351. <blockquote>
  352. <p>L’oubli… tel est votre destin. Toutes les anciennes leçons de la vie, vous les perdez, vous les gagnez, puis vous les reperdez et vous les regagnez <mark>encore</mark>.</p>
  353. <p><cite><em>Leto II, La Voix de Dar-es-Balat</em>, <em><a href="/david/2020/12/21/#dune">Dune</a> V. Les Hérétiques de Dune</em>, Frank Herbert</cite></p>
  354. </blockquote>
  355. </details>
  356. <h2><a href="/david/2021/07/13/" title="Lien permanent vers cet article">ActivityStreams</a> (2021-07-13)</h2>
  357. <details>
  358. <summary>Déplier pour lire le contenu de l’article</summary>
  359. <p>On prend le temps avec <a href="https://buron.coffee/">La Bécasse</a> d’explorer ensemble l’idée d’avoir un générateur de Toots statique pour Mastodon. J’avais commencé en solo sans grand succès l’année dernière car je n’avais pas compris deux pré-requis&nbsp;:</p>
  360. <ol>
  361. <li>Ce protocole s’appuie sur du <em>push</em>, à chaque publication il faut faire un <code>POST</code> sur l’<em>inbox</em> de chacun de ses <em>followers</em>.</li>
  362. <li>Il faut pouvoir répondre aux requêtes des personnes qui souhaitent suivre le compte pour que le lien soit fait (et stocker l’identifiant de ce <em>follower</em>, cf. 1.).</li>
  363. </ol>
  364. <p>Autant dire que pour du statique et donc plus ou moins asynchrone, ça n’est pas gagné&#8239;! J’étais pas loin d’abandonner lorsque La Bécasse m’indique qu’il est tout à fait possible de générer une Note sur laquelle interagir (repouet par exemple) en utilisant la recherche de mastodon.social pointée vers le fichier <code>json</code> qui va bien. Après de multiples essais/erreurs (grr cache), on finit même par trouver comment mettre un autre compte en copie pour participer aux échanges qu’il peut y avoir au sujet d’une publication via le <code>tag</code> de <code>&quot;type&quot;: &quot;Mention&quot;</code>.</p>
  365. <p>J’hésite entre proposer une URL dédiée ou faire de la négociation de contenu sur la même URL ce qui pourrait faciliter le partage par d’autres personnes.</p>
  366. <p>Note&nbsp;: les 3&nbsp;jours suivants, je tente des choses à ce sujet et il semble y avoir toujours un blocage difficile à investiguer, probablement lié à la négociation de contenu justement… ça serait pas mal d’avoir un log mais ça nécessiterait probablement d’installer un serveur Mastodon.</p>
  367. <p>Masto 2 - 0&nbsp;David.</p>
  368. <blockquote>
  369. <p>Tel se présente l’univers impressionnant de la magie qu’il est constitué non pas d’atomes mais uniquement de mouvements et de vibrations. En son sein, il convient d’abandonner toute croyance aux barrières qui font obstacle à la compréhension. La notion de compréhension elle-même est à écarter, cet univers n’étant ni visible, ni audible, ni décelable par aucun moyen fixe de perception. C’est le vide ultime où aucun écran préalable n’existe sur lequel puissent être projetées des formes. Il ne connait qu’un seul mode de conscience et c’est l’écran de projection des images. L’imagination&#8239;! Ainsi, l’on apprend véritablement ce que signifie être humain, être un créateur d’ordre, de formes et de systèmes harmonieux, être, en somme, <mark>l’organisateur du chaos</mark>.</p>
  370. <p><cite><em>Manuel des Atréides, Archives du Bene Gesserit</em>, <em><a href="/david/2020/12/21/#dune">Dune</a> V. Les Hérétiques de Dune</em>, Frank Herbert</cite></p>
  371. </blockquote>
  372. </details>
  373. <h2><a href="/david/2021/07/21/" title="Lien permanent vers cet article">Espoir</a> (2021-07-21)</h2>
  374. <details>
  375. <summary>Déplier pour lire le contenu de l’article</summary>
  376. <blockquote lang="en">
  377. <p>In a sense, every hyperlink on the World Wide Web is little act of hope. Even though I know that when I link to something, it probably won’t last, I still harbour that hope.</p>
  378. <p>If hyperlinks are built on hope, and the web is made of hyperlinks, then in a way, <mark>the World Wide Web is quite literally made out of hope.</mark></p>
  379. <p>I like that.</p>
  380. <p><cite><em><a href="https://adactio.com/journal/18292">Hope</a></em> (<a href="/david/cache/2021/d650cd3cc8831f1b28b6cc2f7eb0f9f7/">cache</a>)</cite></p>
  381. </blockquote>
  382. <p>J’aime bien ce raisonnement <em>et</em> j’ai perdu espoir il y a un moment en essayant de mettre en cache local les publications que je lie. Je me demande parfois ce qui freine les autres personnes sensibles à ce vieillissement des liens à mettre en place leur <a href="/david/blog/2018/caching-links/">propre solution</a> pour le faire.</p>
  383. <p>J’utilise <a href="https://git.larlet.fr/davidbgk/larlet-fr-david-cache/src/branch/master/cache.py">ce script</a> et je fais pas mal de travail manuellement ensuite pour que ça reste au moins lisible. Dans certains cas j’abandonne, notamment pour les images/graphiques qui ont besoin de JavaScript pour s’afficher… dans d’autres je prends le temps de faire des liens absolus ou des retouches sémantiques. Une forme de prise de soin de mes futur·es lecteur·ices (dont je fais partie&#8239;!) avec l’espoir que ça soit utile. Il faudra que je regarde le nombre de liens qui ne sont plus disponibles que <em>via</em> ma copie en fonction des années. C’est intéressant aussi pour pouvoir faire des recherches en <em>full-text</em> sur le dépôt dédié sans dépendre d’un historique de navigateur.</p>
  384. <p>En <a href="/david/stream/2015/01/05/">6&nbsp;ans</a>, je n’ai supprimé qu’une seule ressource sur ma proposition à l’auteur·e qui souhaitait faire disparaître un contenu. Aucune violation de copyright ou autre n’a été remontée. Si cela arrivait, je m’assurerais auparavant que ce contenu n’est pas dans le cache de Google ou dans la <a href="https://archive.org/web/">Wayback machine</a> 🤷.</p>
  385. <blockquote lang="en">
  386. <p>As a young man, I wanted to help make a new medium that would be a step forward from Gutenberg’s invention hundreds of years before.</p>
  387. <p>By building a Library of Everything in the digital age, I thought the opportunity was not just to make it available to everybody in the world, but to make it better–smarter than paper. By using computers, <mark>we could make the Library not just searchable, but organizable;</mark> make it so that you could navigate your way through millions, and maybe eventually billions of web pages.</p>
  388. <p><cite><em><a href="https://blog.archive.org/2021/07/21/reflections-as-the-internet-archive-turns-25/">Reflections as the Internet Archive turns 25</a></em> (<a href="/david/cache/2021/e23db6deddbc0ea74b73c960df2b193f/">cache</a>)</cite></p>
  389. </blockquote>
  390. </details>
  391. <h2><a href="/david/2021/07/25/" title="Lien permanent vers cet article">Dé·mont(r)age</a> (2021-07-25)</h2>
  392. <details>
  393. <summary>Déplier pour lire le contenu de l’article</summary>
  394. <p>J’ai passé les dernières 48&nbsp;heures à convertir, découper et colorer des fragments de vidéos. Suivant le <em>démon</em> de mes propres aspirations. S’assurer que le son soit cohérent parfois, pester contre l’auto-focus <a href="/david/2021/02/23/" title="Montage">encore une fois</a>, se rendre compte que certains réglages n’étaient pas adéquats, irrécupérables parfois. La <em>rage</em>.</p>
  395. <p>Et puis, il y a ce que l’on veut <em>montrer</em>. À quel point cette mise en scène est ridicule. Donner un sentiment de plénitude et d’apaisement alors que je suis en train de penser à ce chapelé de bits qui viennent remplir la carte mémoire. <em>Dé·montrer</em> aussi les instants où je coupe pour de vrai, où je nage pour moi, où je laisse le trépied dans un coin, où je suis ridicule (vous ne me verrez jamais m’extraire d’un raft&#8239;!). Je me rends compte qu’il faudrait que j’ai une idée préalable de scénario/script si je voulais vraiment partager une histoire. Or, c’est assez incompatible avec l’approche itérative et exploratoire de la forêt que je veux avoir.</p>
  396. <p><em>Démontage</em> enfin de mes peurs et de mes faiblesses vis-à-vis d’un medium que je ne maîtrise pas. Passer outre la tétanie, apprendre. Encore.</p>
  397. <blockquote>
  398. <p>En vous confinant dans un simple rôle d’observateur, vous passez systématiquement à côté du sens même de votre vie. L’idéal pourrait être ainsi défini&nbsp;: Vivez de votre mieux. <mark>La vie est un jeu</mark> dont les règles s’apprennent en y sautant à pieds joints pour être immergé jusqu’au cou sous peine d’être toujours pris au dépourvu, toujours surpris par le moindre changement de décor. Les spectateurs passifs se plaignent en gémissant que la chance est passée juste à côté d’eux. Ils refusent de voir qu’une bonne part de cette chance, c’est à eux qu’il revenait de la créer.</p>
  399. <p><cite><em>Darwi Odrade</em>, <em><a href="/david/2020/12/21/#dune">Dune</a> VI. La maison des mères</em>, Frank Herbert</cite></p>
  400. </blockquote>
  401. </details>
  402. <h2><a href="/david/2021/08/10/" title="Lien permanent vers cet article">HTTPSadness</a> (2021-08-10)</h2>
  403. <details>
  404. <summary>Déplier pour lire le contenu de l’article</summary>
  405. <blockquote lang="en">
  406. <p>At some point, you won’t be able to visit <a href="http://info.cern.ch/hypertext/WWW/TheProject.html">the first web page ever published</a> without first clicking through a full-page warning injected by your web browser</p>
  407. <p><cite><em><a href="https://adactio.com/links/18342">Chromium Blog: Increasing HTTPS adoption</a></em> (<a href="/david/cache/2021/b4ec4748a73b23b195366a74a17444f9/">cache</a>)</cite></p>
  408. </blockquote>
  409. <p>Cela me rend triste, alors qu’un effort particulier a toujours été fait pour <a href="https://github.com/styfle/breaking-changes-web">ne pas casser grand chose</a> sur le Web jusqu’à présent. Chrome est bien parti pour <a href="https://github.com/whatwg/html/issues/5407">nous les briser</a> pendant quelques années encore… #BeenThereSufferedThat</p>
  410. <p>Il y a 30&nbsp;ans (merci Karl), Tim nous incitait <a href="https://groups.google.com/g/comp.archives/c/CfsHlSNYPUI/m/DTs60INnuzcJ">à essayer</a> (<a href="/david/cache/2021/e4f0d4ea8f6ec975b114ade59aa7fda2/">cache</a>) son nouveau jouet&nbsp;:</p>
  411. <blockquote lang="en">
  412. <p>It’s just a question of generating plain text or SGML (ugh! but standard) mark-up on the fly. The browsers then parse it on the fly.</p>
  413. <p><cite><em><a href="https://www.w3.org/People/Berners-Lee/1991/08/art-6484.txt">Subject: Re: Qualifiers on Hypertext links...</a></em> (<a href="/david/cache/2021/e39a703ed0d93c479d9c7d3b2f8444a9/">cache</a>)</cite></p>
  414. </blockquote>
  415. <figure>
  416. <a href="#heron"
  417. title="Cliquer pour une version haute résolution">
  418. <img src="/static/david/2021/heron.jpg" alt="Un héron à la recherche de son futur repas au milieu des nénuphars."
  419. loading="lazy" width="1600" height="1067" />
  420. </a>
  421. <a href="#_" class="lightbox" id="heron">
  422. <img src="/static/david/2021/heron.jpg" alt="Un héron à la recherche de son futur repas au milieu des nénuphars."
  423. loading="lazy" width="1600" height="1067" />
  424. </a>
  425. <figcaption>Vous avez évité une n-ième photo de toile d’araignée.</figcaption>
  426. </figure>
  427. </details>
  428. <h2><a href="/david/2021/08/13/" title="Lien permanent vers cet article">Tests payants</a> (2021-08-13)</h2>
  429. <details>
  430. <summary>Déplier pour lire le contenu de l’article</summary>
  431. <blockquote>
  432. <p>Plus question de tester à tout-va. «&nbsp;À partir de cet automne, les tests PCR seront rendus payants, sauf prescription médicale, et ceci afin d’encourager la vaccination plutôt que la multiplication des tests&nbsp;», a annoncé Emmanuel Macron dans son allocution ce lundi soir.</p>
  433. <p><cite><em><a href="https://www.leparisien.fr/societe/sante/covid-19-les-tests-seront-payants-des-lautomne-13-07-2021-7QYPELNM65CD7KVHB4DYWXOTPY.php">Covid-19&nbsp;: les tests seront payants dès l’automne</a></em> (<a href="/david/cache/2021/d28ac5eee1d8d607a0dec5b5e3226ec3/">cache</a>)</cite></p>
  434. </blockquote>
  435. <p>Cette décision française est terrible. Les tests sont l’une des rares mesures relativement fiables que l’on puisse avoir sur l’épidémie à un instant t. Empêcher les personnes les plus pauvres de se faire tester, cela signifie laisser ces personnes en contaminer d’autres. C’est aussi rendre invisibles les personnes vaccinées qui ont des symptômes faibles mais qui doutent et n’ont pas envie de payer pour vérifier, ne permettant pas d’avoir un suivi de la pertinence de la vaccination qui soit précis. C’est enfin une logique comptable qui me semble être bien éloignée de la réalité du terrain, j’ai du mal à imaginer que des tests à répétition pour éviter la vaccination soit une situation «&nbsp;de confort&nbsp;».</p>
  436. <p>Au passage, rendre les tests payants <a href="https://www.service-public.fr/particuliers/actualites/A15039">uniquement pour les étrangers</a> (<a href="/david/cache/2021/4d827e98563dcc3a71b0b0d25cb6ed12/">cache</a>) était déjà bien puant…</p>
  437. <blockquote>
  438. <p>Le pouvoir attire les corruptibles. Tous ceux qui le recherchent sont à soupçonner. […] Nous devrions confier les responsabilités du pouvoir uniquement à celles qui sont réticentes à l’idée de le détenir, et encore dans ces conditions propres à accroître cette réticence.</p>
  439. <p><cite><em><a href="/david/2020/12/21/#dune">Dune</a> VI. La maison des mères</em>, Frank Herbert</cite></p>
  440. </blockquote>
  441. <figure>
  442. <a href="#ecureuil"
  443. title="Cliquer pour une version haute résolution">
  444. <img src="/static/david/2021/ecureuil.jpg" alt="Un écureuil sur un banc avec un fruit dans la bouche, une noix ?"
  445. loading="lazy" width="2048" height="1366" />
  446. </a>
  447. <a href="#_" class="lightbox" id="ecureuil">
  448. <img src="/static/david/2021/ecureuil.jpg" alt="Un écureuil sur un banc avec un fruit dans la bouche, une noix ?"
  449. loading="lazy" width="2048" height="1366" />
  450. </a>
  451. <figcaption>Noyer le pois(s)on.</figcaption>
  452. </figure>
  453. </details>
  454. <h2><a href="/david/2021/08/18/" title="Lien permanent vers cet article">Lettres</a> (2021-08-18)</h2>
  455. <details>
  456. <summary>Déplier pour lire le contenu de l’article</summary>
  457. <blockquote lang="en">
  458. <p>This is one small step towards something different: an ethic that prioritizes technologists’ agency, <mark>the need for self-reflection</mark>, and the importance of historical inquiry.</p>
  459. <p><cite><em><a href="https://letterstoayoungtechnologist.com/">Letters to a Young Technologist</a></em> (<a href="/david/cache/2021/2c416b360e5ea82c6be38cada47d9001/">cache</a>)</cite></p>
  460. </blockquote>
  461. <p>La déception du jour ce sont ces lettres avec un contenu profond mais une forme désastreuse. Le courrier est sollicité mais alors l’enveloppe&#8239;! Impossible d’afficher le moindre contenu sans charger pas moins de 13&nbsp;fichiers JavaScript depuis <code>static.cargo.site</code>, pour… 6&nbsp;pages de HTML qui pourraient facilement peser 10&nbsp;fois moins lourd.</p>
  462. <p>Pauvres jeunes, ils auront tellement à réparer…</p>
  463. <blockquote lang="en">
  464. <p>The second way that history can help us avoid mistakes is by showing us predictable ways things can go horribly wrong. In the light of history, we can take the long view on present-day crises and take care <mark>to not repeat the foibles of the past.</mark></p>
  465. <p><cite><em><a href="https://letterstoayoungtechnologist.com/Study-the-Past-Create-the-Future">Study the Past, Create the Future</a></em> (<a href="/david/cache/2021/520ea4867de8d36f3cd2b1132e44b719/">cache</a>)</cite></p>
  466. </blockquote>
  467. <p>Well, ¯\<em>(ツ)</em>/¯.</p>
  468. <figure>
  469. <a href="#merle-amerique"
  470. title="Cliquer pour une version haute résolution">
  471. <img src="/static/david/2021/merle-amerique.jpg" alt="Un merle d’Amérique mangeant une baie."
  472. loading="lazy" width="2048" height="1366" />
  473. </a>
  474. <a href="#_" class="lightbox" id="merle-amerique">
  475. <img src="/static/david/2021/merle-amerique.jpg" alt="Un merle d’Amérique mangeant une baie."
  476. loading="lazy" width="2048" height="1366" />
  477. </a>
  478. <figcaption>Vous reprendriez bien un peu de JS ?</figcaption>
  479. </figure>
  480. </details>
  481. <h2><a href="/david/2021/08/27/" title="Lien permanent vers cet article">Médaille</a> (2021-08-27)</h2>
  482. <details>
  483. <summary>Déplier pour lire le contenu de l’article</summary>
  484. <blockquote>
  485. <p>Paris, je t’aime. Je t’aime pour tous les gens libres et solidaires qui vivent en ton sein. Des gens qui se battent pour la liberté chaque jour, debout, bras dessus bras dessous, distribuant des couvertures, de l’amitié et de la solidarité. Je t’aime pour ceux qui partagent leur logement, leur amour et leurs luttes chaque jour, sans se soucier de la nationalité des personnes ni de savoir si elles ont des papiers ou pas.</p>
  486. <p>Madame Hidalgo, vous voulez me décorer pour mon action solidaire en mer Méditerranée, parce que nos équipages «&nbsp;travaillent quotidiennement à sauver des migrants dans des conditions difficiles&nbsp;». Simultanément votre police vole les couvertures de gens contraints de vivre dans la rue, pendant que vous réprimez des manifestations et criminalisez des personnes qui défendent les droits des migrants et des demandeurs d’asile. <mark>Vous voulez me donner une médaille pour des actions que vous combattez à l’intérieur de vos propres remparts.</mark> Je suis sûre que vous ne serez pas surprise de me voir refuser votre médaille Grand Vermeil.</p>
  487. <p>Paris, je ne suis pas une humanitaire. Je ne suis pas là pour «&nbsp;aider&nbsp;». Je suis solidaire à tes côtés. Nous n’avons pas besoin de médailles. Nous n’avons pas besoin de pouvoirs décidant qui est un «&nbsp;héros&nbsp;» et qui est «&nbsp;illégal&nbsp;». En fait, il n’y a pas lieu de faire cela, car nous sommes tous égaux.</p>
  488. <p>Ce dont nous avons besoin, c’est de liberté et de droits. Il est temps de dénoncer les honneurs hypocrites et de combler le vide par la justice sociale. Il est temps que toutes les médailles soient lancées comme des fers de lance de la révolution!</p>
  489. <p>Papiers et logements pour toutes et tous&#8239;!<br />
  490. Liberté de circulation et d’installation&#8239;!</p>
  491. <p>Pia KLEMP, 20&nbsp;août 2019</p>
  492. <p><cite><em><a href="http://blogyy.net/2019/08/20/la-navigatrice-et-sauveteuse-en-mer-pia-klemp-refuse-la-medaille-de-la-ville-de-paris/">La navigatrice et sauveteuse en mer Pia Klemp refuse la médaille de la ville de Paris&#8239;!!!</a></em> (<a href="/david/cache/2021/7a098566f5e809a8c85b054047f10245/">cache</a>)</cite></p>
  493. </blockquote>
  494. <p>J’avais loupé cette réponse. Voilà une bien belle façon de refuser une médaille.</p>
  495. <figure>
  496. <a href="#feuilles-rosee"
  497. title="Cliquer pour une version haute résolution">
  498. <img src="/static/david/2021/feuilles-rosee.jpg" alt="Des feuilles avec des gouttes de rosée matinale dessus."
  499. loading="lazy" width="2048" height="1366" />
  500. </a>
  501. <a href="#_" class="lightbox" id="feuilles-rosee">
  502. <img src="/static/david/2021/feuilles-rosee.jpg" alt="Des feuilles avec des gouttes de rosée matinale dessus."
  503. loading="lazy" width="2048" height="1366" />
  504. </a>
  505. <figcaption>Équilibre instable.</figcaption>
  506. </figure>
  507. </details>
  508. <h2><a href="/david/2021/08/29/" title="Lien permanent vers cet article">Artistes</a> (2021-08-29)</h2>
  509. <details>
  510. <summary>Déplier pour lire le contenu de l’article</summary>
  511. <p>Il y a une chose qui m’étonne depuis le début de la pandémie, c’est le manque d’explosion artistique auquel je m’attendais compte tenu des circonstances exceptionnelles. Passée la stupéfaction, j’ai l’impression qu’il y avait toutes les conditions réunies pour créer et partager de nouvelles émotions.</p>
  512. <p>Note&nbsp;: il se pourrait qu’elles me soient rendues invisibles aussi…</p>
  513. <p>En attendant, j’apprends des mots&nbsp;:</p>
  514. <ol>
  515. <li><a href="https://fr.wiktionary.org/wiki/ipsedixitisme">ipsedixitisme</a>&nbsp;: Fait de croire vraie une assertion non fondée, parce qu’on l’a entendue dire par quelqu’un en qui on a confiance.</li>
  516. <li><a href="https://fr.wiktionary.org/wiki/ultracr%C3%A9pidarianisme">ultracrépidarianisme</a>&nbsp;: Comportement qui consiste à donner son avis sur des sujets à propos desquels on n’a pas de compétence.</li>
  517. </ol>
  518. <blockquote>
  519. <p>Le fait d’écrire l’histoire est en grande partie un processus de diversion. La plupart des comptes rendus historiques détournent en réalité l’attention des influences secrètes qui se sont exercées sur les évènements importants.</p>
  520. <p><cite><em>Le Bashar Teg</em>, <em><a href="/david/2020/12/21/#dune">Dune</a> VI. La maison des mères</em>, Frank Herbert</cite></p>
  521. </blockquote>
  522. <figure>
  523. <a href="#sommet-pommes-pin"
  524. title="Cliquer pour une version haute résolution">
  525. <img src="/static/david/2021/sommet-pommes-pin.jpg" alt="Des pignes de pin au somme d’un résineux."
  526. loading="lazy" width="2048" height="1536" />
  527. </a>
  528. <a href="#_" class="lightbox" id="sommet-pommes-pin">
  529. <img src="/static/david/2021/sommet-pommes-pin.jpg" alt="Des pignes de pin au somme d’un résineux."
  530. loading="lazy" width="2048" height="1536" />
  531. </a>
  532. <figcaption>Il y a du monde au sommet.</figcaption>
  533. </figure>
  534. </details>
  535. <h2><a href="/david/2021/08/31/" title="Lien permanent vers cet article">Abstraction</a> (2021-08-31)</h2>
  536. <details>
  537. <summary>Déplier pour lire le contenu de l’article</summary>
  538. <blockquote lang="en">
  539. <p>Take a moment and think about this super power: if you write vanilla HTML, CSS, and JS, all you have to do is put that code in a web browser and it runs. Edit a file, refresh the page, you’ve got a feedback cycle. <mark>As soon as you introduce tooling, as soon as you introduce an abstraction not native to the browser, you may have to invent the universe for a feedback cycle.</mark> No longer writing CSS and instead writing Sass? Now you need a development server with a build process to watch your files and compile your changes <em>just to develop and test your project</em>. You’ve just added a giant, blocking dependency for your project to work. And if you can’t get that dependency working, your project is dead in the water until you can—both now and in the future.</p>
  540. <p><cite><em><a href="https://blog.jim-nielsen.com/2020/cheating-entropy-with-native-web-tech/">Cheating Entropy with Native Web Technologies</a></em> (<a href="/david/cache/2021/74eae1dc26bd4537941491b4e7e201bc/">cache</a>)</cite></p>
  541. </blockquote>
  542. <p>J’ai déjà beaucoup trop parlé du sujet et en même temps cela a été et pourrait encore être mon quotidien si je n’avais pas choisi une certaine forme d’ascétisme technologique (n’ayons pas peur des mots, <a href="http://aswemay.fr/co/040011.html">ataraxie numérique</a> (<a href="/david/cache/2021/1357452f72e8fab727df874cbc2582d4/">cache</a>) si on veut être vraiment pédant). Évaluer chaque outil pour son usage actuel et futur, sa maintenance, sa migration, ses <em>drama</em> (coucou <a href="https://hotwired.dev/">Hotwire</a>), son abandon pour la dernière mode. J’apprends hier qu’un produit est à l’arrêt pour X mois car il faut passer d’un <em>framework</em> JS à un autre. Tristesse d’un domaine où une telle pratique est courante. Bien éloignée d’un Web <a href="https://wimvanderbauwhede.github.io/articles/frugal-computing/">frugal</a> (<a href="/david/cache/2021/710f8cdebd7560223ebd378f9cbe7822/">cache</a>), il y a un excellent <a href="http://viznut.fi/texts-en/permacomputing_update_2021.html">résumé avec plein de liens ici</a> (<a href="/david/cache/2021/0f791a9509f762f1a1a36b6ca2333230/">cache</a>) si le sujet vous intéresse.</p>
  543. <p>Je suis admiratif des personnes faisant de <a href="https://zserge.com/posts/awfice/">petits outils conviviaux</a> (<a href="/david/cache/2021/3ac474db4dc65c1d25e99cb30655ff12/">cache</a>) qui permettent d’apprendre et de jouer avec la conception de l’outil en lui-même. Si je devais refaire de l’<a href="/david/pro/enseignement/">enseignement technique</a>, j’emprunterais probablement cette voie. À l’opposé de la camionnette à outils qu’il faut savoir dorénavant maîtriser, en opposition à la direction qu’un marché nous pousse à emprunter.</p>
  544. <p>Est-ce que l’on peut considérer l’accumulation de dette technique comme étant un <em>bullshit job</em>&#8239;?</p>
  545. <blockquote>
  546. <p>16. How does this technology empower me? At whose expense?</p>
  547. <p><cite><em><a href="https://theconvivialsociety.substack.com/p/the-questions-concerning-technology">The Questions Concerning Technology</a></em> (<a href="/david/cache/2021/b404382125c07935b98295a801049097/">cache</a>)</cite></p>
  548. </blockquote>
  549. <figure>
  550. <a href="#bourdons"
  551. title="Cliquer pour une version haute résolution">
  552. <img src="/static/david/2021/bourdons.jpg" alt="Deux bourdons qui butinent des chardons."
  553. loading="lazy" width="2048" height="1536" />
  554. </a>
  555. <a href="#_" class="lightbox" id="bourdons">
  556. <img src="/static/david/2021/bourdons.jpg" alt="Deux bourdons qui butinent des chardons."
  557. loading="lazy" width="2048" height="1536" />
  558. </a>
  559. <figcaption>Écrits pollinisateurs ?</figcaption>
  560. </figure>
  561. </details>
  562. <h2><a href="/david/2021/09/16/" title="Lien permanent vers cet article">Analphabète</a> (2021-09-16)</h2>
  563. <details>
  564. <summary>Déplier pour lire le contenu de l’article</summary>
  565. <blockquote>
  566. <p>Mais depuis quelques mois j’ai trouvé une sorte de parade à cela. Je me fais simplement passer pour un analphabète numérique. Étant donné que je sais que, peu importe les démarches que je souhaite réaliser, il y a de fortes chances pour que je ne rentre pas dans les cases, j’arrive ainsi à établir les dossiers <mark>avec une véritable personne qui peut prendre en compte mes spécificités</mark> sans avoir, avant, à perdre du temps auprès d’une machine.</p>
  567. <p><cite><em><a href="http://shl.huld.re/~f6k/log/vol12/13-l-administration-publique-et-moi.html">Journal de f6k, vol. 12&nbsp;num. 13</a></em> (<a href="/david/cache/2021/dd8f6ee1a59a052e72c5e1f5f8c5fc39/">cache</a>)</cite></p>
  568. </blockquote>
  569. <p>Hier, Elle reçoit un courriel la notifiant qu’elle a un nouveau message de l’immigration. C’est un enjeu stressant pour nous, car il y a un visa à la clef et toute une chaîne de conséquences. Elle essaye de se connecter avec son téléphone mais une fois authentifiée, retour à l’accueil, déconnectée. Elle me demande de tester à mon tour, même erreur depuis un ordinateur. Elle se connecte à Twitter car c’est le seul moyen aujourd’hui de pouvoir interagir avec une administration. Elle fait état du <em>bug(?)</em>. La réponse est digne d’un «&nbsp;dans le doute, <em>reboot</em>&nbsp;»&nbsp;: essayez de (très) nombreuses fois après avoir vidé le cache du navigateur…</p>
  570. <p>Le lendemain, Elle tente de se (re)connecter au site de l’administration en pestant sur le fait que le courriel de notification pourrait contenir le message et s’éviter tout cela. Cette fois-ci, ça marche&#8239;! Le contenu du message&nbsp;:</p>
  571. <blockquote>
  572. <p>Vous allez prochainement recevoir un courrier qui contiendra votre nouveau visa.</p>
  573. </blockquote>
  574. <p><em>Tout ça pour ça.</em> Un poids appréciable en moins tout de même. Il faudrait que je fasse le compte de ce que nous coûte en argent (et en temps&#8239;!) une immigration choisie.</p>
  575. <p>Histoire de chialer comme un bon français 🙃.</p>
  576. </details>
  577. <h2><a href="/david/2021/09/28/" title="Lien permanent vers cet article">Paranoïa</a> (2021-09-28)</h2>
  578. <details>
  579. <summary>Déplier pour lire le contenu de l’article</summary>
  580. <blockquote lang="en">
  581. <p>Scanning the photos on your phone isn’t like steaming open the mail and peeping inside the envelopes. It’s like rifling through your memory.</p>
  582. <p>And when those memories may at any time be silently observed or removed… even if it never happens but there is the possibility of it…</p>
  583. <p>[…]</p>
  584. <p>And if somebody else is now inside your memories, <mark>can you be sure that they’re not being edited?</mark> Is gaslighting occurring with these most personal of devices? Even if it never happens… that’s the lesson of the Panopticon, the mere possibility is enough to affect behaviour.</p>
  585. <p><cite><em><a href="https://interconnected.org/home/2021/08/06/paranoia">Apple’s photo scanning and our state of forced collective paranoia</a></em> (<a href="/david/cache/2021/afd74b165f837caf94dd2098d161627a/">cache</a>)</cite></p>
  586. </blockquote>
  587. <p>Je me suis penché plusieurs fois sur cet article depuis sa publication. Il y a plusieurs lectures possibles pour considérer les liens entre ces différents éléments et, même si ça semble un peu tiré par les cheveux parfois, il y a tout de même cette atmosphère un peu malaisante que j’ai du mal à formuler.</p>
  588. <p>Les pensées et fragments de mémoire publiés ici me semblent être difficilement falsifiables à mon insu. J’ai un historique, sur plusieurs machines, etc. En revanche pour des photos — qui plus est stockées sur l’ordinateur d’un·e autre — c’est bien plus compliqué à identifier et à prouver.</p>
  589. <hr />
  590. <p>En retournant le problème, cela pourrait être un métier d’aller effacer de mauvais souvenirs… plus ou moins à la demande de la personne.</p>
  591. </details>
  592. <h2><a href="/david/2021/11/20/" title="Lien permanent vers cet article">Hypertélie</a> (2021-11-20)</h2>
  593. <details>
  594. <summary>Déplier pour lire le contenu de l’article</summary>
  595. <blockquote>
  596. <p>Il est assez courant qu’une innovation consiste à réutiliser un objet technique plus ancien, en particulier quand les générations récentes d’une lignée technique ont évolué vers ce que Simondon appelle <mark>«&nbsp;l’hypertélie&nbsp;», c’est-à-dire quand le fonctionnement de l’objet a été suradapté à une fonction précise et à un milieu donné</mark>. Ses performances sont inégalables dans cette configuration, mais il ne peut plus être employé pour remplir d’autres fonctions qu’il assurait auparavant et il se dérègle ou tombe en panne dès que le milieu varie. Il a perdu en «&nbsp;généricité&nbsp;». Alors, il faut revenir à la génération précédente avant d’envisager un progrès majeur, c’est-à-dire une réorganisation globale de l’objet qui le rende plus synergique.</p>
  597. <p><cite><em>Penser l’innovation sur Arrakis</em>, Vincent Bontems dans <em>Dune&nbsp;: exploration scientifique et culturelle d’une planète-univers</em></cite></p>
  598. </blockquote>
  599. <p>J’ai maintenant un <a href="https://fr.wikipedia.org/wiki/Caract%C3%A8re_hypert%C3%A9lique">mot/concept/caractère</a> pour décrire ce qu’il s’est passé dans le Web ces cinq dernières années. J’ai l’impression que c’est en train de se <a href="https://resilientwebdesign.com/">réorganiser</a> pour créer des <a href="https://stimulus.hotwired.dev/">synergies</a> entre les <a href="https://htmx.org/">différentes</a> <a href="/david/2021/11/03/" title="Composants">parties</a>.</p>
  600. <p>C’est marrant de le retrouver dans un livre sur Dune qui cite Simondon dans <em><a href="https://fr.wikipedia.org/wiki/Du_mode_d%27existence_des_objets_techniques">Du mode d’existence des objets techniques</a></em>.</p>
  601. <blockquote>
  602. <p>En fait, les traits hypertéliques ou exubérants résultent de l’action de la sélection sexuelle et du conflit sexuel entre les partenaires.</p>
  603. <p><cite><em><a href="https://fr.wikipedia.org/wiki/Caract%C3%A8re_hypert%C3%A9lique">Caractère hypertélique</a></em></cite></p>
  604. </blockquote>
  605. <p>Oh non, rien.</p>
  606. </details>
  607. <h2><a href="/david/2021/11/25/" title="Lien permanent vers cet article">Git</a> (2021-11-25)</h2>
  608. <details>
  609. <summary>Déplier pour lire le contenu de l’article</summary>
  610. <blockquote lang="en">
  611. <p>Rant time: You’ve heard it before, git is <em>powerful</em>, but what good is that power when everything is so damn hard to do? Interactive rebasing requires you to edit a goddamn TODO file in your editor? <em>Are you kidding me?</em> To stage part of a file you need to use a command line program to step through each hunk and if a hunk can’t be split down any further but contains code you don’t want to stage, you have to edit an arcane patch file <em>by hand</em>? <em>Are you KIDDING me?!</em> Sometimes you get asked to stash your changes when switching branches only to realise that after you switch and unstash that there weren’t even any conflicts and it would have been fine to just checkout the branch directly? <em>YOU HAVE GOT TO BE KIDDING ME!</em></p>
  612. <p><cite><em><a href="https://github.com/jesseduffield/lazygit#readme">LazyGit</a></em></cite></p>
  613. </blockquote>
  614. <p>Je profite de la découverte de cet outil pour une confidence qui n’en est pas vraiment une&nbsp;: j’utilise un client graphique pour tout ce qui a trait à <a href="https://git-scm.com/">git</a> (et je n’en ai pas honte).</p>
  615. <p>J’ai longtemps utilisé <a href="https://www.mercurial-scm.org/">mercurial</a> à la main car je trouvais les commandes relativement intuitives mais en passant à <em>git</em> il y a une dizaine d’années, je me suis retrouvé la moitié du temps à aller chercher des commandes sur <a href="https://stackoverflow.com/questions/tagged/git">StackOverflow</a>, puis à faire des <em>alias</em> car c’était impossible à retenir, puis à perdre du code, etc. Au final, quitte à lancer des commandes que je comprends à peine (il parait que c’est moins cryptique aujourd’hui) autant utiliser celles qui ont été éprouvées par d’autres.</p>
  616. <p><a href="https://www.git-tower.com/mac">Tower</a> sait faire tout ce dont j’ai besoin à mon niveau. Et vu le temps que ça me fait gagner à répétition, c’est largement rentable. Peut-être même de plusieurs ordres de grandeur… considérant que je contribue quotidiennement à une dizaine de dépôts.</p>
  617. <p>Ce témoignage pour peut-être déculpabiliser des personnes qui pensent qu’il faut être un·e virtuose de la ligne de commande et de ses outils pour pouvoir développer. C’est un plus indéniable dans certaines situations d’être en capacité de descendre aussi bas niveau et d’avoir quelques notions de ce qu’il se passe mais il est tout à fait possible d’emprunter (et de créer&#8239;!) d’autres voies.</p>
  618. </details>
  619. <h2><a href="/david/2021/11/26/" title="Lien permanent vers cet article">Incompétence</a> (2021-11-26)</h2>
  620. <details>
  621. <summary>Déplier pour lire le contenu de l’article</summary>
  622. <blockquote lang="en">
  623. <p>The magic of programming is largely just things you don’t know yet. Once you learn those things, it stops being magic in the sense of “I have no idea how it did that or why it works“ and starts being magic in the sense of “I can make the computer do exactly what I ask it to do!”. <mark>The point is to become the wizard, not the bedazzled member of the audience.</mark></p>
  624. <p>This does not happen overnight, and we need to have the confidence to accept that our profession has depth, even as we celebrate the ease with which someone can get started (and welcome them onto the journey of becoming a wizard)!</p>
  625. <p>It also doesn’t happen across all the domains of programming. You can’t become an expert at everything, and it’s fine to accept your boundaries. But it’s not fine to think you shouldn’t be on <em>some</em> paths towards mastery, if you intend to make programming your career.</p>
  626. <p><cite><em><a href="https://world.hey.com/dhh/programmers-should-stop-celebrating-incompetence-de1a4725">Programmers should stop celebrating incompetence</a></em> (<a href="/david/cache/2021/569696e39daa6ee1de97a7a9184316fb/">cache</a>)</cite></p>
  627. </blockquote>
  628. <p>C’est marrant, j’ai de plus en plus envie de célébrer cette incompétence justement. Pas pour s’y complaire mais pour rendre cet espace plus accueillant. C’était un peu l’objectif de ma démarche avec le <a href="/david/2021/11/25/" title="Git">billet d’hier</a>. Il est possible d’assumer d’être incompétent·e sur certains points et tout de même arriver à faire des choses chouettes dans le web. Cette toile de connaissance est justement là pour externaliser une partie de sa mémoire et de ses expériences. <span lang=de><a href="https://fr.wikipedia.org/wiki/Lernen_durch_Lehren">Lernen durch Lehren</a></span> généralisé&#8239;!</p>
  629. <p>Pour chaque magicien auto-proclamé, il y a de potentielles nouvelles recrues qui sont démotivées par l’ampleur d’une tâche qui est devenue un mythe. Celui créé par une élite qui en profite allègrement.</p>
  630. <p>J’aimerais participer à son piétinement.</p>
  631. <hr />
  632. <p><mark>Lu depuis&nbsp;:</mark></p>
  633. <blockquote lang="en">
  634. <p>But knowing how to research, how to look things up? Knowing how to parse good information from junk, and make effective decisions based on what you’ve learned? That’s a critical skill for modern developers.</p>
  635. <p>That’s not “copy-pasta.” That’s being good at your job.</p>
  636. <p><cite><em><a href="https://gomakethings.com/big-surprise-that-guy-who-made-a-third-of-his-company-quit-has-no-idea-what-hes-talking-about./">Big surprise! That guy who made a third of his company quit has no idea what he’s talking about.</a></em> (<a href="/david/cache/2021/1ee4ce7a8ae1f5dee1a762e0b4ca921e/">cache</a>)</cite></p>
  637. </blockquote>
  638. </details>
  639. </main>
  640. <hr>
  641. <footer>
  642. <p>
  643. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  644. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
  645. </svg> Accueil</a> •
  646. <a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2">
  647. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-rss2"></use>
  648. </svg> Suivre</a> •
  649. <a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie">
  650. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-user-tie"></use>
  651. </svg> Pro</a> •
  652. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail">
  653. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-mail"></use>
  654. </svg> Email</a> •
  655. <abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2">
  656. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-hammer2"></use>
  657. </svg> Légal</abbr>
  658. </p>
  659. <template id="theme-selector">
  660. <form>
  661. <fieldset>
  662. <legend><svg class="icon icon-brightness-contrast">
  663. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-brightness-contrast"></use>
  664. </svg> Thème</legend>
  665. <label>
  666. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  667. </label>
  668. <label>
  669. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  670. </label>
  671. <label>
  672. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  673. </label>
  674. </fieldset>
  675. </form>
  676. </template>
  677. </footer>
  678. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  679. <script>
  680. function loadThemeForm(templateName) {
  681. const themeSelectorTemplate = document.querySelector(templateName)
  682. const form = themeSelectorTemplate.content.firstElementChild
  683. themeSelectorTemplate.replaceWith(form)
  684. form.addEventListener('change', (e) => {
  685. const chosenColorScheme = e.target.value
  686. localStorage.setItem('theme', chosenColorScheme)
  687. toggleTheme(chosenColorScheme)
  688. })
  689. const selectedTheme = localStorage.getItem('theme')
  690. if (selectedTheme && selectedTheme !== 'undefined') {
  691. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  692. }
  693. }
  694. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  695. window.addEventListener('load', () => {
  696. let hasDarkRules = false
  697. for (const styleSheet of Array.from(document.styleSheets)) {
  698. let mediaRules = []
  699. for (const cssRule of styleSheet.cssRules) {
  700. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  701. continue
  702. }
  703. // WARNING: Safari does not have/supports `conditionText`.
  704. if (cssRule.conditionText) {
  705. if (cssRule.conditionText !== prefersColorSchemeDark) {
  706. continue
  707. }
  708. } else {
  709. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  710. continue
  711. }
  712. }
  713. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  714. }
  715. // WARNING: do not try to insert a Rule to a styleSheet you are
  716. // currently iterating on, otherwise the browser will be stuck
  717. // in a infinite loop…
  718. for (const mediaRule of mediaRules) {
  719. styleSheet.insertRule(mediaRule.cssText)
  720. hasDarkRules = true
  721. }
  722. }
  723. if (hasDarkRules) {
  724. loadThemeForm('#theme-selector')
  725. }
  726. })
  727. </script>
  728. </body>
  729. </html>