Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330
  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>
  13. Tag #réponse
  14. — David Larlet</title>
  15. <meta name="description" content="Publications relatives au tag #réponse">
  16. <!-- That good ol' feed, subscribe :). -->
  17. <link rel="alternate"
  18. type="application/atom+xml"
  19. title="Feed"
  20. href="/david/log/">
  21. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  22. <link rel="apple-touch-icon"
  23. sizes="180x180"
  24. href="/static/david/icons2/apple-touch-icon.png">
  25. <link rel="icon"
  26. type="image/png"
  27. sizes="32x32"
  28. href="/static/david/icons2/favicon-32x32.png">
  29. <link rel="icon"
  30. type="image/png"
  31. sizes="16x16"
  32. href="/static/david/icons2/favicon-16x16.png">
  33. <link rel="manifest" href="/static/david/icons2/site.webmanifest">
  34. <link rel="mask-icon"
  35. href="/static/david/icons2/safari-pinned-tab.svg"
  36. color="#07486c">
  37. <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
  38. <meta name="msapplication-TileColor" content="#f7f7f7">
  39. <meta name="msapplication-config"
  40. content="/static/david/icons2/browserconfig.xml">
  41. <meta name="theme-color"
  42. content="#f7f7f7"
  43. media="(prefers-color-scheme: light)">
  44. <meta name="theme-color"
  45. content="#272727"
  46. media="(prefers-color-scheme: dark)">
  47. <!-- Is that even respected? Retrospectively? What a shAItshow…
  48. https://neil-clarke.com/block-the-bots-that-feed-ai-models-by-scraping-your-website/ -->
  49. <meta name="robots" content="noai, noimageai">
  50. <!-- Documented, feel free to shoot an email. -->
  51. <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
  52. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  53. <link rel="preload"
  54. href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2"
  55. as="font"
  56. type="font/woff2"
  57. media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
  58. crossorigin>
  59. <link rel="preload"
  60. href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2"
  61. as="font"
  62. type="font/woff2"
  63. media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
  64. crossorigin>
  65. <link rel="preload"
  66. href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2"
  67. as="font"
  68. type="font/woff2"
  69. media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
  70. crossorigin>
  71. <link rel="preload"
  72. href="/static/david/css/fonts/triplicate_t3_regular.woff2"
  73. as="font"
  74. type="font/woff2"
  75. media="(prefers-color-scheme: dark)"
  76. crossorigin>
  77. <link rel="preload"
  78. href="/static/david/css/fonts/triplicate_t3_bold.woff2"
  79. as="font"
  80. type="font/woff2"
  81. media="(prefers-color-scheme: dark)"
  82. crossorigin>
  83. <link rel="preload"
  84. href="/static/david/css/fonts/triplicate_t3_italic.woff2"
  85. as="font"
  86. type="font/woff2"
  87. media="(prefers-color-scheme: dark)"
  88. crossorigin>
  89. <script>
  90. function toggleTheme(themeName) {
  91. document.documentElement.classList.toggle(
  92. 'forced-dark',
  93. themeName === 'dark'
  94. )
  95. document.documentElement.classList.toggle(
  96. 'forced-light',
  97. themeName === 'light'
  98. )
  99. }
  100. const selectedTheme = localStorage.getItem('theme')
  101. if (selectedTheme !== 'undefined') {
  102. toggleTheme(selectedTheme)
  103. }
  104. </script>
  105. <style type="text/css">
  106. details[open] summary {
  107. display: none;
  108. }
  109. </style>
  110. <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick"
  111. data-instant-intensity="viewport-all">
  112. <header>
  113. <h1>Publications relatives au tag #réponse</h1>
  114. </header>
  115. <nav>
  116. <p class="center">
  117. <a href="/david/" title="Aller à l’accueil">
  118. <svg class="icon icon-home">
  119. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
  120. </svg>
  121. Accueil</a>
  122. • <a rel="tags"
  123. href="/david/#tags-2023"
  124. title="Liste de toutes les étiquettes">
  125. <svg class="icon icon-tags">
  126. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-tags"></use>
  127. </svg>
  128. Étiquettes</a>
  129. </p>
  130. </nav>
  131. <hr>
  132. <main>
  133. <p>Les plus récentes en premier, les 3 premières sont dépliées et ensuite c’est à la demande, bonne exploration !</p>
  134. <h2>
  135. <a href="/david/2023/01/08/" title="Lien permanent vers cet article">Partage</a> (2023-01-08)
  136. </h2>
  137. <p><a href="https://maiadereva.net/">Maïa</a> me pose la question suite à une discussion Mastodon autour de <a href="/david/2023/01/04/" title="Rétrospectives">Rétrospectives</a>&nbsp;:</p>
  138. <blockquote>
  139. <p>Je me suis d’ailleurs demandé comment tu faisais la distinction entre ce que tu documentes et ce que tu ne documentes pas… Vu que tu dis que ça a un impact sur comment tu te comportes, tu acceptes donc cet impact pour certains&nbsp;domaines&#8239;?</p>
  140. </blockquote>
  141. <p>Je partage beaucoup de choses en ligne, des réflexions, des émotions, des créations, des explorations, etc. Ma limite se définit généralement selon plusieurs&nbsp;critères&nbsp;:</p>
  142. <ul>
  143. <li>si je suis avec des personnes, je ne partage pas forcément leur présence et encore moins leur photo (à part évènement public avec représentation, et encore), ça s’applique très souvent à la&nbsp;famille&#8239;;</li>
  144. <li>si je parle d’un endroit, la géolocalisation reste assez floue intentionnellement (je suis passé par ce lac tel jour par exemple, pas&nbsp;plus)&#8239;;</li>
  145. <li>si j’utilise un outil, il faut qu’il soit possible d’en garder les traces en privé et que ce soit explicite d’en rendre possible l’accès si à un moment je change&nbsp;d’avis.</li>
  146. </ul>
  147. <p>Il y a certainement eu des exceptions depuis que je publie des choses et ces critères ont pu évoluer au cours du temps aussi. Je suis content d’avoir pris le temps d’y répondre par ici pour pouvoir revenir dessus dans quelques années/décennies et comparer cette frontière floue à&nbsp;t+1.</p>
  148. <p><em>Note&nbsp;: c’est un peu pour ça aussi que j’ai arrêté de faire des <a href="https://media.larlet.fr/2021--videos-01.html">vidéos</a>, la mise en scène allait au-delà de ce qui était acceptable pour que je ne sois pas en outrospection&nbsp;constante.</em></p>
  149. <hr />
  150. <blockquote lang="en">
  151. <p>🤗 Writing takes time. Writing well takes a lot of time. On the other hand, the output of writing is almost always more clarity, and sometimes a clear decision. Over my career, I think I’ve wasted at least ten times more time going around and around in conversations without finding consensus than I have writing documents that didn’t turn out to be valuable. It’s very seldom that I think back over writing something and conclude that it wasn’t a good investment of my time. That can happen, and you have to watch for it, but it doesn’t happen to me a&nbsp;lot.</p>
  152. <p><cite><em><a href="https://brooker.co.za/blog/2022/11/08/writing.html">Writing Is Magic</a></em>&nbsp;(<a href="/david/cache/2023/36a8b8a87633796d41c2574720812594/">cache</a>)</cite></p>
  153. </blockquote>
  154. <h2>
  155. <a href="/david/2023/01/07/" title="Lien permanent vers cet article">Dette</a> (2023-01-07)
  156. </h2>
  157. <blockquote>
  158. <p>La dette c’est un problème de riche. Ça arrive après, quand on a trouvé le bon produit, qu’on a trouvé sa cible, qu’on a prouvé qu’on était capable d’ac­qué­rir des clients. Là on aura aussi le finan­ce­ment qui va avec pour embau­cher des ingé­nieurs qui vont <mark>refaire ce qui doit l’être,</mark> et élimi­ner une bonne partie des travaux qu’on avait remis à plus&nbsp;tard.</p>
  159. <p>L’enjeu c’est d’ar­ri­ver jusque&nbsp;là.</p>
  160. <p><cite><em><a href="https://n.survol.fr/n/la-dette-technique">La dette technique - Carnet de notes</a></em>&nbsp;(<a href="/david/cache/2023/934ed9f96be582e35b3c8cf8fc0859e5/">cache</a>)</cite></p>
  161. </blockquote>
  162. <p>La seule fois dans ma carrière (ouais ça fait tout de suite vieux là…) où on a réussi à éponger une dette technique initiale a été sur <a href="https://mesconseilscovid.sante.gouv.fr">MesConseilsCovid</a> lorsqu’on a dû partir <a href="/david/2020/05/26/">comme des fusées</a> avec <a href="https://ronan.amicel.net/">Ronan</a> parce que le gouvernement français ne pouvait pas se douter qu’on allait déconfiner la population à un moment&nbsp;🤷.</p>
  163. <p>Les conditions qui ont rendu possible cela sont&nbsp;multiples&nbsp;:</p>
  164. <ul>
  165. <li>développeurs expérimentés qui se connaissent et qui se sont déjà pincé les doigts plusieurs fois sur du code non testé/à l’arrache à moyen&nbsp;terme&#8239;;</li>
  166. <li>équipe compréhensive qui a pris en compte nos retours et notre endettement volontaire des premières semaines, effort de pédagogie de notre&nbsp;côté&#8239;;</li>
  167. <li>outil relativement simple qui a consisté au début à une preuve de concept permettant de mesurer les usages et attentes, on n’était pas dans une course à la&nbsp;fonctionnalité&#8239;;</li>
  168. <li>budget suffisant pour savoir qu’il serait possible de financer cette dette à moyen terme («&nbsp;Quoi qu’il en coûte&nbsp;», etc&nbsp;#haha).</li>
  169. </ul>
  170. <p>Il faut une sacré conjonction pour que toutes ces conditions soient réunies. De plus, ça a demandé pas mal de rigueur alors que la dette n’était finalement que d’un mois, peut-être&nbsp;moins.</p>
  171. <p>Dans une précédente expérience <em>startup</em>, on avait trop mis l’accent sur la technique/le produit et pas assez sur son adoption/communication, ça peut arriver aussi. J’ai beaucoup appris de cet échec sur l’importance de ce qui est <em>hors</em> du&nbsp;code.</p>
  172. <hr />
  173. <blockquote lang="en">
  174. <p>😔 The most obvious way an online community is like a bar is that bars serve alcohol, and alcohol makes people loud and stupid. It actually depresses your hearing, so you can’t hear yourself talk as well, <mark>so you speak louder.</mark> And a room full of people speaking louder means a very boisterous room. And of course, alcohol reduces inhibition, so you say things you might not usually&nbsp;say.</p>
  175. <p>The parallels to online behavior are easy to see. Online, people are much more willing to type things that they’d never say in&nbsp;person.</p>
  176. <p><cite><em><a href="https://powazek.com/posts/3571">A community isn’t a garden, it’s a bar.</a></em>&nbsp;(<a href="/david/cache/2023/fb08217a583922fd319fabb55f34a4f3/">cache</a>)</cite></p>
  177. </blockquote>
  178. <blockquote lang="en">
  179. <p>🔙 It can be uncomfortable, that clearing away. It can be deeply unpleasant. But it’s also useful. It’s a sign of what you need to change. What I found was that <mark>when I gave myself permission to really feel that unpleasantness,</mark> when I didn’t try to get comfortable with it or avoid it, I opened some space to move: towards a reconfiguration or revision or reimagining of what my work&nbsp;was.</p>
  180. <p><cite><em><a href="https://aworkinglibrary.com/writing/reentry">Reentry | A Working Library</a></em>&nbsp;(<a href="/david/cache/2023/7258248bb534fddb277bf6148cd3ffbf/">cache</a>)</cite></p>
  181. </blockquote>
  182. </main>
  183. <hr>
  184. <footer>
  185. <p>
  186. <nobr>
  187. <a href="/david/" title="Aller à l’accueil">
  188. <svg class="icon icon-home">
  189. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-home"></use>
  190. </svg>
  191. Accueil</a>
  192. </nobr>
  193. <nobr>
  194. <a href="/david/log/" title="Accès au flux RSS">
  195. <svg class="icon icon-rss2">
  196. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-rss2"></use>
  197. </svg>
  198. Suivre</a>
  199. </nobr>
  200. <nobr>
  201. <a href="http://larlet.com"
  202. title="Go to my English profile"
  203. data-instant>
  204. <svg class="icon icon-user-tie">
  205. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-user-tie"></use>
  206. </svg>
  207. Pro</a>
  208. </nobr>
  209. <nobr>
  210. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">
  211. <svg class="icon icon-mail">
  212. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-mail"></use>
  213. </svg>
  214. Email</a>
  215. </nobr>
  216. <nobr>
  217. <abbr class="nowrap"
  218. title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">
  219. <svg class="icon icon-hammer2">
  220. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-hammer2"></use>
  221. </svg>
  222. Légal</abbr>
  223. </nobr>
  224. </p>
  225. <template id="theme-selector">
  226. <form>
  227. <fieldset>
  228. <legend>
  229. <svg class="icon icon-brightness-contrast">
  230. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-brightness-contrast"></use>
  231. </svg>
  232. Thème
  233. </legend>
  234. <label>
  235. <input type="radio" value="auto" name="chosen-color-scheme" checked>
  236. Auto
  237. </label>
  238. <label>
  239. <input type="radio" value="dark" name="chosen-color-scheme">
  240. Foncé
  241. </label>
  242. <label>
  243. <input type="radio" value="light" name="chosen-color-scheme">
  244. Clair
  245. </label>
  246. </fieldset>
  247. </form>
  248. </template>
  249. </footer>
  250. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  251. <script>
  252. function loadThemeForm(templateName) {
  253. const themeSelectorTemplate = document.querySelector(templateName)
  254. const form = themeSelectorTemplate.content.firstElementChild
  255. themeSelectorTemplate.replaceWith(form)
  256. form.addEventListener('change', (e) => {
  257. const chosenColorScheme = e.target.value
  258. localStorage.setItem('theme', chosenColorScheme)
  259. toggleTheme(chosenColorScheme)
  260. })
  261. const selectedTheme = localStorage.getItem('theme')
  262. if (selectedTheme && selectedTheme !== 'undefined') {
  263. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  264. }
  265. }
  266. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  267. window.addEventListener('load', () => {
  268. let hasDarkRules = false
  269. for (const styleSheet of Array.from(document.styleSheets)) {
  270. let mediaRules = []
  271. for (const cssRule of styleSheet.cssRules) {
  272. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  273. continue
  274. }
  275. // WARNING: Safari does not have/supports `conditionText`.
  276. if (cssRule.conditionText) {
  277. if (cssRule.conditionText !== prefersColorSchemeDark) {
  278. continue
  279. }
  280. } else {
  281. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  282. continue
  283. }
  284. }
  285. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  286. }
  287. // WARNING: do not try to insert a Rule to a styleSheet you are
  288. // currently iterating on, otherwise the browser will be stuck
  289. // in a infinite loop…
  290. for (const mediaRule of mediaRules) {
  291. styleSheet.insertRule(mediaRule.cssText)
  292. hasDarkRules = true
  293. }
  294. }
  295. if (hasDarkRules) {
  296. loadThemeForm('#theme-selector')
  297. }
  298. })
  299. </script>
  300. </body>
  301. </html>