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 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  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. Char&nbsp;2
  14. — David Larlet</title>
  15. <meta name="description" content="Je voulais le moins d’électronique possible et plutôt prendre un vieux véhicule robuste qui me permette de sortir d’un banc de neige et peut-être à terme de la ville.">
  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. <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick"
  106. data-instant-intensity="viewport-all">
  107. <article>
  108. <header>
  109. <h1>Char&nbsp;2</h1>
  110. </header>
  111. <nav>
  112. <p class="center">
  113. <a rel="prev"
  114. href="/david/2023/09/07/"
  115. title="Publication précédente : Conteur">← Précédent</a> •
  116. <nobr>
  117. <a href="/david/" title="Aller à l’accueil" rel="up">
  118. <svg class="icon icon-home">
  119. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-home"></use>
  120. </svg>
  121. Accueil</a>
  122. </nobr>
  123. <nobr>
  124. <a href="/david/recherche/"
  125. title="Aller à la page de recherche"
  126. rel="search">
  127. <svg class="icon icon-search">
  128. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-search"></use>
  129. </svg>
  130. Recherche</a>
  131. </nobr>
  132. • <a rel="next"
  133. href="/david/2023/09/09/"
  134. title="Publication suivante : Blogroll">Suivant →</a>
  135. </p>
  136. </nav>
  137. <hr>
  138. <blockquote>
  139. <p>Je voulais le <a href="/david/2020/02/07/#cars">moins d’électronique</a> possible et plutôt prendre un vieux véhicule robuste qui me permette de sortir d’un banc de neige et peut-être à terme de la&nbsp;ville.</p>
  140. <p><cite><em><a href="/david/2021/07/16/">Char</a></em></cite></p>
  141. </blockquote>
  142. <p>Suite des mes aventures avec une <a href="http://tmp.larlet.fr/ccmc/">comptabilité à jour</a> depuis bientôt 3&nbsp;ans. Divulgâcheur&nbsp;: ça coûte très&nbsp;cher.</p>
  143. <p>Le résultat n’est pas joli-joli avec environ vingt mille kilomètres au compteur sur la période. Je n’ai pas non plus réussi à descendre en-dessous des 12L/100km avec ce véhicule qui n’a pas été pensé pour être économe et qui alimente les 4&nbsp;roues en permanence… MAIS je crois que si c’était à refaire, je choisirais un <em>véhicule stupide</em> à&nbsp;nouveau.</p>
  144. <blockquote lang="en">
  145. <p>Car companies are on the forefront of postcapitalism, and <mark>they understand that digital is the key to rent-extraction.</mark> Remember when BMW announced that it was going to rent you the seatwarmer in your own fucking&nbsp;car?</p>
  146. <p>[…]</p>
  147. <p>This is the urinary tract infection business model: without digitization, all your car’s value flowed in a healthy stream. But once the car-makers add semiconductors, each one of those features comes out in a painful, burning dribble, with every button on that farkakta touchscreen wired directly into your&nbsp;credit-card.</p>
  148. <p><cite><em><a href="https://pluralistic.net/2023/07/24/rent-to-pwn/">Pluralistic: Autoenshittification (24&nbsp;July 2023)</a></em>&nbsp;(<a href="/david/cache/2023/8be5d8a651e8f8e211cfe10fd49bb3f0/">cache</a>)</cite></p>
  149. </blockquote>
  150. <p>Je pourrais citer tellement de passages de cet article de Cory Doctorow qui confirment ce choix que ça en est édifiant. Et si vous pensez que certaines marques ne font quand même pas n’importe quoi avec vos données, Mozilla se charge — chiffres à l’appui&nbsp;— de démentir cette&nbsp;idée&nbsp;:</p>
  151. <blockquote lang="en">
  152. <p>The gist is: they can collect super intimate information about you -- from your medical information, your genetic information, to your “sex life” (seriously), to how fast you drive, where you drive, and what songs you play in your car -- in huge quantities. They then use it to invent more data about you through “inferences” about things like your intelligence, abilities, and&nbsp;interests.</p>
  153. <p>[…]</p>
  154. <p>It’s bad enough for the behemoth corporations that own the car brands to have all that personal information in their possession, to use for their own research, marketing, or the ultra-vague “business purposes.” But then, most (84%) of the car brands we researched say they can share your personal data -- with service providers, data brokers, and other businesses we know little or nothing about. Worse, <mark>nineteen (76%) say they can sell your personal&nbsp;data.</mark></p>
  155. <p>A surprising number (56%) also say they can share your information with the government or law enforcement in response to a “request.” Not a high bar court order, but something as easy as an “informal request.” Yikes -- that’s a very low&nbsp;bar!</p>
  156. <p><cite><em><a href="https://foundation.mozilla.org/en/privacynotincluded/articles/its-official-cars-are-the-worst-product-category-we-have-ever-reviewed-for-privacy/">It’s Official: Cars Are the Worst Product Category We Have Ever Reviewed for Privacy</a></em>&nbsp;(<a href="/david/cache/2023/81eb35bbd276cb28230820176152af87/">cache</a>)</cite></p>
  157. </blockquote>
  158. <p>Progressivement, j’en apprends un peu plus sur la mécanique d’une vieille voiture thermique et je crois que c’est ma seule option. Elle n’est peut-être pas payante mais elle me garantit une certaine <em>confidensanité</em>.</p>
  159. <blockquote lang="en">
  160. <p>Welcome to the future. <mark>Sabotage&nbsp;it.</mark></p>
  161. <p><cite><a href="https://thenib.com/im-a-luddite/">I’m a Luddite (and So Can&nbsp;You!)</a></cite></p>
  162. </blockquote>
  163. <hr />
  164. <blockquote lang="en">
  165. <p>😶 You can’t talk about all the friends and family you’ve lost. You can’t talk about how tired you are. You can’t talk about politics. You can’t talk about climate change. You can’t talk about the wildfires or that town that burned down. You can’t talk about living through the hottest days in human history. You can’t talk about masks or air purifiers. You can’t talk about student loans. You can’t talk about the wars we’re fighting or getting ready to&nbsp;fight.</p>
  166. <p><mark>You can’t talk about anything that&nbsp;matters.</mark></p>
  167. <p>You can only talk about the latest shitty superhero movie. You can talk about Barbie. You can talk about celebrity gossip. You can talk about the vacation you pretended to enjoy. You can talk about&nbsp;yoga.</p>
  168. <p>You can talk about your morning&nbsp;routine.</p>
  169. <p>You can talk about&nbsp;sports.</p>
  170. <p><cite><em><a href="https://www.okdoomer.io/watching-the-world-burn-on-our-phones/">Watching The World Burn on Our Phones</a></em>&nbsp;(<a href="/david/cache/2023/977dc3c51f364f41db786f881d2c3fd2/">cache</a>)</cite></p>
  171. </blockquote>
  172. <blockquote lang="en">
  173. <p>😁 I’m not young enough to know&nbsp;everything.</p>
  174. <p><cite><em><a href="https://blog.jim-nielsen.com/2023/family-tree-wisdom/">Family Tree Wisdom</a></em>&nbsp;(<a href="/david/cache/2023/d40295a6495f934934436470ad425cac/">cache</a>)</cite></p>
  175. </blockquote>
  176. <nav>
  177. <p>
  178. <a href="/david/2023/confidentialite/"
  179. title="Liste de tous les articles 2023 associés à cette étiquette"
  180. rel="tag">#confidentialité</a>
  181. <a href="/david/2023/gafam/"
  182. title="Liste de tous les articles 2023 associés à cette étiquette"
  183. rel="tag">#gafam</a>
  184. <a href="/david/2023/traces/"
  185. title="Liste de tous les articles 2023 associés à cette étiquette"
  186. rel="tag">#traces</a>
  187. <a href="/david/#tags-2023" title="Liste de toutes les étiquettes 2023">
  188. <svg class="icon icon-tags">
  189. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-tags"></use>
  190. </svg>
  191. tous ?</a>
  192. </p>
  193. </nav>
  194. <nav>
  195. <p class="center">
  196. <a rel="prev"
  197. href="/david/2023/09/07/"
  198. title="Publication précédente : Conteur">← Précédent</a> •
  199. <a href="/david/2023/" title="Liste des publications récentes">↑ En 2023</a>
  200. • <a rel="next"
  201. href="/david/2023/09/09/"
  202. title="Publication suivante : Blogroll">Suivant →</a>
  203. </p>
  204. </nav>
  205. </article>
  206. <hr>
  207. <footer>
  208. <p>
  209. <nobr>
  210. <a href="/david/" title="Aller à l’accueil">
  211. <svg class="icon icon-home">
  212. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-home"></use>
  213. </svg>
  214. Accueil</a>
  215. </nobr>
  216. <nobr>
  217. <a href="/david/log/" title="Accès au flux RSS">
  218. <svg class="icon icon-rss2">
  219. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-rss2"></use>
  220. </svg>
  221. Suivre</a>
  222. </nobr>
  223. <nobr>
  224. <a href="http://larlet.com"
  225. title="Go to my English profile"
  226. data-instant>
  227. <svg class="icon icon-user-tie">
  228. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-user-tie"></use>
  229. </svg>
  230. Pro</a>
  231. </nobr>
  232. <nobr>
  233. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">
  234. <svg class="icon icon-mail">
  235. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-mail"></use>
  236. </svg>
  237. Email</a>
  238. </nobr>
  239. <nobr>
  240. <abbr class="nowrap"
  241. title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">
  242. <svg class="icon icon-hammer2">
  243. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-hammer2"></use>
  244. </svg>
  245. Légal</abbr>
  246. </nobr>
  247. </p>
  248. <template id="theme-selector">
  249. <form>
  250. <fieldset>
  251. <legend>
  252. <svg class="icon icon-brightness-contrast">
  253. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-brightness-contrast"></use>
  254. </svg>
  255. Thème
  256. </legend>
  257. <label>
  258. <input type="radio" value="auto" name="chosen-color-scheme" checked>
  259. Auto
  260. </label>
  261. <label>
  262. <input type="radio" value="dark" name="chosen-color-scheme">
  263. Foncé
  264. </label>
  265. <label>
  266. <input type="radio" value="light" name="chosen-color-scheme">
  267. Clair
  268. </label>
  269. </fieldset>
  270. </form>
  271. </template>
  272. </footer>
  273. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  274. <script>
  275. function loadThemeForm(templateName) {
  276. const themeSelectorTemplate = document.querySelector(templateName)
  277. const form = themeSelectorTemplate.content.firstElementChild
  278. themeSelectorTemplate.replaceWith(form)
  279. form.addEventListener('change', (e) => {
  280. const chosenColorScheme = e.target.value
  281. localStorage.setItem('theme', chosenColorScheme)
  282. toggleTheme(chosenColorScheme)
  283. })
  284. const selectedTheme = localStorage.getItem('theme')
  285. if (selectedTheme && selectedTheme !== 'undefined') {
  286. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  287. }
  288. }
  289. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  290. window.addEventListener('load', () => {
  291. let hasDarkRules = false
  292. for (const styleSheet of Array.from(document.styleSheets)) {
  293. let mediaRules = []
  294. for (const cssRule of styleSheet.cssRules) {
  295. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  296. continue
  297. }
  298. // WARNING: Safari does not have/supports `conditionText`.
  299. if (cssRule.conditionText) {
  300. if (cssRule.conditionText !== prefersColorSchemeDark) {
  301. continue
  302. }
  303. } else {
  304. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  305. continue
  306. }
  307. }
  308. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  309. }
  310. // WARNING: do not try to insert a Rule to a styleSheet you are
  311. // currently iterating on, otherwise the browser will be stuck
  312. // in a infinite loop…
  313. for (const mediaRule of mediaRules) {
  314. styleSheet.insertRule(mediaRule.cssText)
  315. hasDarkRules = true
  316. }
  317. }
  318. if (hasDarkRules) {
  319. loadThemeForm('#theme-selector')
  320. }
  321. })
  322. </script>
  323. </body>
  324. </html>