A place to cache linked articles (think custom and personal wayback machine)
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

index.html 48KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  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>
  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>Articles archivés — David Larlet</title>
  13. <meta name="description" content="Lien vers les publications externes mises en cache.">
  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="#f0f0ea">
  24. <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
  25. <meta name="theme-color" content="#f0f0ea">
  26. <!-- Documented, feel free to shoot an email. -->
  27. <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
  28. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  29. <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>
  30. <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>
  31. <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>
  32. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  33. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  34. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  35. <script>
  36. function toggleTheme(themeName) {
  37. document.documentElement.classList.toggle(
  38. 'forced-dark',
  39. themeName === 'dark'
  40. )
  41. document.documentElement.classList.toggle(
  42. 'forced-light',
  43. themeName === 'light'
  44. )
  45. }
  46. const selectedTheme = localStorage.getItem('theme')
  47. if (selectedTheme !== 'undefined') {
  48. toggleTheme(selectedTheme)
  49. }
  50. </script>
  51. <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick">
  52. <header>
  53. <h1>Articles archivés</h1>
  54. </header>
  55. <nav>
  56. <p class="center">
  57. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  58. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-home"></use>
  59. </svg> Accueil</a>
  60. </p>
  61. </nav>
  62. <hr>
  63. <main>
  64. <ul>
  65. <li><a href="/david/cache/2021/c8678419b1c96d90ea066a3f6f6e3479/" title="Accès à l’article dans le cache local : When Are We Back To Normal?">When Are We Back To Normal?</a> (<a href="https://inessential.com/2020/12/31/when_are_we_back_to_normal" title="Accès à l’article original distant : When Are We Back To Normal?">original</a>)</li>
  66. <li><a href="/david/cache/2021/94923f2d3ecd28b40745665c9cbe8393/" title="Accès à l’article dans le cache local : Un février artistique !">Un février artistique !</a> (<a href="https://artfevre.notmyidea.org/" title="Accès à l’article original distant : Un février artistique !">original</a>)</li>
  67. <li><a href="/david/cache/2021/ab9f293c34ce421ab41465fcda8893fe/" title="Accès à l’article dans le cache local : Whistleblower Says Facebook Ignored Global Political Manipulation">Whistleblower Says Facebook Ignored Global Political Manipulation</a> (<a href="https://www.buzzfeednews.com/article/craigsilverman/facebook-ignore-political-manipulation-whistleblower-memo" title="Accès à l’article original distant : Whistleblower Says Facebook Ignored Global Political Manipulation">original</a>)</li>
  68. <li><a href="/david/cache/2021/b0bb48391acd14185895724197f63417/" title="Accès à l’article dans le cache local : Keep HEY weird">Keep HEY weird</a> (<a href="https://world.hey.com/dhh/keep-hey-weird-de3e912c" title="Accès à l’article original distant : Keep HEY weird">original</a>)</li>
  69. <li><a href="/david/cache/2021/6be8b8649cd695b922a43d15f74d4773/" title="Accès à l’article dans le cache local : How to Build Good Software">How to Build Good Software</a> (<a href="https://www.csc.gov.sg/articles/how-to-build-good-software" title="Accès à l’article original distant : How to Build Good Software">original</a>)</li>
  70. <li><a href="/david/cache/2021/3d37e77a601b6dd7043bbb17a4a2d199/" title="Accès à l’article dans le cache local : Le compromis de la vulgarisation">Le compromis de la vulgarisation</a> (<a href="https://tanialouis.fr/2020/12/27/le-compromis-de-la-vulgarisation/" title="Accès à l’article original distant : Le compromis de la vulgarisation">original</a>)</li>
  71. <li><a href="/david/cache/2021/cd910565715dbc18d4b31ad60546a4a3/" title="Accès à l’article dans le cache local : CommunityWiki: Smol Net">CommunityWiki: Smol Net</a> (<a href="https://communitywiki.org/wiki/SmolNet" title="Accès à l’article original distant : CommunityWiki: Smol Net">original</a>)</li>
  72. <li><a href="/david/cache/2021/720b1db6efb78ef6790594ad1a8b7980/" title="Accès à l’article dans le cache local : A user manual for me">A user manual for me</a> (<a href="https://cassierobinson.medium.com/a-user-manual-for-me-d3a851fbc694" title="Accès à l’article original distant : A user manual for me">original</a>)</li>
  73. <li><a href="/david/cache/2021/d685a0ad4878f3d833374164b49b3438/" title="Accès à l’article dans le cache local : Read the Principles - Design Justice Network">Read the Principles - Design Justice Network</a> (<a href="https://designjustice.org/read-the-principles" title="Accès à l’article original distant : Read the Principles - Design Justice Network">original</a>)</li>
  74. <li><a href="/david/cache/2021/9c9968045ffe697a08dc13df854247f1/" title="Accès à l’article dans le cache local : I should have loved biology">I should have loved biology</a> (<a href="https://jsomers.net/i-should-have-loved-biology/" title="Accès à l’article original distant : I should have loved biology">original</a>)</li>
  75. <li><a href="/david/cache/2021/c9fad8039837ef9a671e1fb52cbbeb35/" title="Accès à l’article dans le cache local : “Explain a Topic At Multiple Levels…”">“Explain a Topic At Multiple Levels…”</a> (<a href="https://jacobian.org/2021/feb/8/interview-questions-explain-a-topic/" title="Accès à l’article original distant : “Explain a Topic At Multiple Levels…”">original</a>)</li>
  76. <li><a href="/david/cache/2021/66ef8e7fa0942fc975723f7df4d932e9/" title="Accès à l’article dans le cache local : Reverse Engineering the source code of the BioNTech/Pfizer SARS-CoV-2 Vaccine">Reverse Engineering the source code of the BioNTech/Pfizer SARS-CoV-2 Vaccine</a> (<a href="https://berthub.eu/articles/posts/reverse-engineering-source-code-of-the-biontech-pfizer-vaccine/" title="Accès à l’article original distant : Reverse Engineering the source code of the BioNTech/Pfizer SARS-CoV-2 Vaccine">original</a>)</li>
  77. <li><a href="/david/cache/2021/b50e973ef4e131098b91c9d99cb69a5a/" title="Accès à l’article dans le cache local : Longueur du processus de recrutement">Longueur du processus de recrutement</a> (<a href="https://n.survol.fr/n/longueur-du-processus-de-recrutement" title="Accès à l’article original distant : Longueur du processus de recrutement">original</a>)</li>
  78. <li><a href="/david/cache/2021/e2bbd325581e7ec27b5c8e92ca32ce69/" title="Accès à l’article dans le cache local : Covid 'Long-Haulers' Need Medical Attention, Experts Urge">Covid 'Long-Haulers' Need Medical Attention, Experts Urge</a> (<a href="https://www.nytimes.com/2020/12/04/health/covid-long-term-symptoms.html" title="Accès à l’article original distant : Covid 'Long-Haulers' Need Medical Attention, Experts Urge">original</a>)</li>
  79. <li><a href="/david/cache/2021/cfe6353c663f062eb2e6ccfcace889ef/" title="Accès à l’article dans le cache local : Why Senior Engineers Hate Coding Interviews">Why Senior Engineers Hate Coding Interviews</a> (<a href="https://medium.com/swlh/why-senior-engineers-hate-coding-interviews-d583d2855757" title="Accès à l’article original distant : Why Senior Engineers Hate Coding Interviews">original</a>)</li>
  80. <li><a href="/david/cache/2021/5f4b0220be54d83f711a78b356c73a68/" title="Accès à l’article dans le cache local : Carnets Web de La Grange">Carnets Web de La Grange</a> (<a href="https://www.la-grange.net/2021/01/05/newsletter" title="Accès à l’article original distant : Carnets Web de La Grange">original</a>)</li>
  81. <li><a href="/david/cache/2021/3159c32fa194458a63b546ab789e8aed/" title="Accès à l’article dans le cache local : The world needs a tech diet; here is how designers can help">The world needs a tech diet; here is how designers can help</a> (<a href="https://essays.uxdesign.cc/tech-diet/" title="Accès à l’article original distant : The world needs a tech diet; here is how designers can help">original</a>)</li>
  82. <li><a href="/david/cache/2021/b19c86fa9c66389e26495165b442d0c0/" title="Accès à l’article dans le cache local : L’emprise de la machine : une critique décroissanciste de la domination technique">L’emprise de la machine : une critique décroissanciste de la domination technique</a> (<a href="https://polemos-decroissance.org/lemprise-de-la-machine-une-critique-decroissanciste-de-la-domination-technique/" title="Accès à l’article original distant : L’emprise de la machine : une critique décroissanciste de la domination technique">original</a>)</li>
  83. <li><a href="/david/cache/2021/321b85630164ca075bd3be265f23aed5/" title="Accès à l’article dans le cache local : Codebase Collaboration Between Humans and Robots">Codebase Collaboration Between Humans and Robots</a> (<a href="https://blog.jim-nielsen.com/2021/codbase-collaboration-between-humans-and-robots/" title="Accès à l’article original distant : Codebase Collaboration Between Humans and Robots">original</a>)</li>
  84. <li><a href="/david/cache/2021/1cb1c46e0a1adcd0917179a214a16e0a/" title="Accès à l’article dans le cache local : DNA seen through the eyes of a coder (or, If you are a hammer, everything looks like a nail)">DNA seen through the eyes of a coder (or, If you are a hammer, everything looks like a nail)</a> (<a href="https://berthub.eu/articles/posts/amazing-dna/" title="Accès à l’article original distant : DNA seen through the eyes of a coder (or, If you are a hammer, everything looks like a nail)">original</a>)</li>
  85. <li><a href="/david/cache/2021/765e28efb1fa6aa0dc9c15166f66cdf3/" title="Accès à l’article dans le cache local : How Silicon Valley, in a Show of Monopolistic Force, Destroyed Parler">How Silicon Valley, in a Show of Monopolistic Force, Destroyed Parler</a> (<a href="https://greenwald.substack.com/p/how-silicon-valley-in-a-show-of-monopolistic" title="Accès à l’article original distant : How Silicon Valley, in a Show of Monopolistic Force, Destroyed Parler">original</a>)</li>
  86. <li><a href="/david/cache/2021/352d2966ecda7a68cbf97efbc691d017/" title="Accès à l’article dans le cache local : Facebook’s Unknowable Megascale">Facebook’s Unknowable Megascale</a> (<a href="https://daringfireball.net/2020/12/facebook_unknowable_megascale" title="Accès à l’article original distant : Facebook’s Unknowable Megascale">original</a>)</li>
  87. <li><a href="/david/cache/2021/99c13c692ec7f2217311fdea482e8792/" title="Accès à l’article dans le cache local : Newsletters">Newsletters</a> (<a href="https://www.robinrendle.com/essays/newsletters" title="Accès à l’article original distant : Newsletters">original</a>)</li>
  88. <li><a href="/david/cache/2021/dcba97f9e4bd70b1a152b9498dc5711c/" title="Accès à l’article dans le cache local : Risk: micromorts, microCOVIDs, and skydiving">Risk: micromorts, microCOVIDs, and skydiving</a> (<a href="http://interconnected.org/home/2020/09/01/microcovids" title="Accès à l’article original distant : Risk: micromorts, microCOVIDs, and skydiving">original</a>)</li>
  89. <li><a href="/david/cache/2021/c4dd46c6f0fe9310b47dd3abda0b5280/" title="Accès à l’article dans le cache local : The computer built to last 50 years">The computer built to last 50 years</a> (<a href="https://ploum.net/the-computer-built-to-last-50-years/" title="Accès à l’article original distant : The computer built to last 50 years">original</a>)</li>
  90. <li><a href="/david/cache/2021/cbd2101777421fa7549472859210a69c/" title="Accès à l’article dans le cache local : HTTPWTF">HTTPWTF</a> (<a href="https://httptoolkit.tech/blog/http-wtf/" title="Accès à l’article original distant : HTTPWTF">original</a>)</li>
  91. <li><a href="/david/cache/2021/13fac7e78342ffd7e5286a6d5519e19e/" title="Accès à l’article dans le cache local : Ils construisaient leurs maisons tous ensemble puis les tiraient au sort : l’histoire des Castors">Ils construisaient leurs maisons tous ensemble puis les tiraient au sort : l’histoire des Castors</a> (<a href="https://www.18h39.fr/articles/ils-construisaient-leurs-maisons-tous-ensemble-puis-les-tiraient-au-sort-lhistoire-des-castors.html" title="Accès à l’article original distant : Ils construisaient leurs maisons tous ensemble puis les tiraient au sort : l’histoire des Castors">original</a>)</li>
  92. <li><a href="/david/cache/2021/a9e4daf32281eaee0adaa39e32d28890/" title="Accès à l’article dans le cache local : Dropping Support For IE11 Is Progressive Enhancement">Dropping Support For IE11 Is Progressive Enhancement</a> (<a href="https://blog.carlmjohnson.net/post/2020/time-to-kill-ie11/" title="Accès à l’article original distant : Dropping Support For IE11 Is Progressive Enhancement">original</a>)</li>
  93. <li><a href="/david/cache/2021/e8ebcfcc0dbd4336a82f618a1bd1a818/" title="Accès à l’article dans le cache local : DNA Chisel - a versatile sequence optimizer">DNA Chisel - a versatile sequence optimizer</a> (<a href="https://edinburgh-genome-foundry.github.io/DnaChisel/" title="Accès à l’article original distant : DNA Chisel - a versatile sequence optimizer">original</a>)</li>
  94. <li><a href="/david/cache/2021/388cf40eae756175ee87c9bf7a1548c4/" title="Accès à l’article dans le cache local : No, Really, mRNA Vaccines Are Not Going To Affect Your DNA">No, Really, mRNA Vaccines Are Not Going To Affect Your DNA</a> (<a href="https://www.deplatformdisease.com/blog/no-really-mrna-vaccines-are-not-going-to-affect-your-dna" title="Accès à l’article original distant : No, Really, mRNA Vaccines Are Not Going To Affect Your DNA">original</a>)</li>
  95. <li><a href="/david/cache/2021/fe75ef80663602733dbe24cc717f257b/" title="Accès à l’article dans le cache local : The race for coronavirus vaccines: a graphical guide">The race for coronavirus vaccines: a graphical guide</a> (<a href="https://www.nature.com/articles/d41586-020-01221-y" title="Accès à l’article original distant : The race for coronavirus vaccines: a graphical guide">original</a>)</li>
  96. <li><a href="/david/cache/2021/22172cf6d8f4f1e910ed6599b3557c8a/" title="Accès à l’article dans le cache local : Les élevages de visons en Chine à l’origine du Covid-19 ? Les indices s’accumulent">Les élevages de visons en Chine à l’origine du Covid-19 ? Les indices s’accumulent</a> (<a href="https://reporterre.net/Les-elevages-de-visons-en-Chine-a-l-origine-du-Covid-19-Les-indices-s-accumulent" title="Accès à l’article original distant : Les élevages de visons en Chine à l’origine du Covid-19 ? Les indices s’accumulent">original</a>)</li>
  97. <li><a href="/david/cache/2021/809290eb60d9bda55b427919091533f0/" title="Accès à l’article dans le cache local : Which type of novelty-seeking web developer are you?">Which type of novelty-seeking web developer are you?</a> (<a href="https://www.baldurbjarnason.com/2021/which-kind-of-web-developer-are-you/" title="Accès à l’article original distant : Which type of novelty-seeking web developer are you?">original</a>)</li>
  98. <li><a href="/david/cache/2021/184bcc38c39ce5b4d2f75fedd2c82198/" title="Accès à l’article dans le cache local : Small Is Beautiful livestream #7">Small Is Beautiful livestream #7</a> (<a href="https://small-tech.org/videos/small-is-beautiful-07/" title="Accès à l’article original distant : Small Is Beautiful livestream #7">original</a>)</li>
  99. <li><a href="/david/cache/2021/f9327416703abe2963573a84d1d0a39e/" title="Accès à l’article dans le cache local : Vivre avec les fléaux">Vivre avec les fléaux</a> (<a href="https://prototypekblog.wordpress.com/2021/03/02/vivre-avec-les-fleaux/" title="Accès à l’article original distant : Vivre avec les fléaux">original</a>)</li>
  100. <li><a href="/david/cache/2021/837e11a57aa3ddcba084963c247f45a6/" title="Accès à l’article dans le cache local : What Is Going To Happen In 2021">What Is Going To Happen In 2021</a> (<a href="https://avc.com/2021/01/what-is-going-to-happen-in-2021/" title="Accès à l’article original distant : What Is Going To Happen In 2021">original</a>)</li>
  101. <li><a href="/david/cache/2021/27f60626eb789433d6e2619663bb79f0/" title="Accès à l’article dans le cache local : Associative trails">Associative trails</a> (<a href="https://adactio.com/journal/17821" title="Accès à l’article original distant : Associative trails">original</a>)</li>
  102. <li><a href="/david/cache/2021/21d3daabe37170d236d2714df3b872fb/" title="Accès à l’article dans le cache local : Free and Open Source RSS Reader for Mac and iOS">Free and Open Source RSS Reader for Mac and iOS</a> (<a href="https://netnewswire.com/" title="Accès à l’article original distant : Free and Open Source RSS Reader for Mac and iOS">original</a>)</li>
  103. <li><a href="/david/cache/2021/1ac1db00072c35c5f6de8d729331b8d4/" title="Accès à l’article dans le cache local : Reconnexion ?">Reconnexion ?</a> (<a href="https://blog.notmyidea.org/reconnexion.html" title="Accès à l’article original distant : Reconnexion ?">original</a>)</li>
  104. <li><a href="/david/cache/2021/1039b631578007d23759a99c2238cda9/" title="Accès à l’article dans le cache local : Biohacking Lite">Biohacking Lite</a> (<a href="https://karpathy.github.io/2020/06/11/biohacking-lite/" title="Accès à l’article original distant : Biohacking Lite">original</a>)</li>
  105. <li><a href="/david/cache/2021/3d3e8962a6319ee4d41a75b1cd5abd38/" title="Accès à l’article dans le cache local : How the novel coronavirus has evolved">How the novel coronavirus has evolved</a> (<a href="https://graphics.reuters.com/HEALTH-CORONAVIRUS/EVOLUTION/yxmpjqkdzvr/index.html" title="Accès à l’article original distant : How the novel coronavirus has evolved">original</a>)</li>
  106. <li><a href="/david/cache/2021/6d16a2f955aeaa4f23c239373824143f/" title="Accès à l’article dans le cache local : Maintaining JavaScript applications in the long term">Maintaining JavaScript applications in the long term</a> (<a href="https://9elements.com/blog/maintaining-javascript-applications-in-the-long-term/" title="Accès à l’article original distant : Maintaining JavaScript applications in the long term">original</a>)</li>
  107. <li><a href="/david/cache/2021/5f1c22e9a41d209ff84218b3d6faf676/" title="Accès à l’article dans le cache local : Reverse Engineering Source Code of the Biontech Pfizer Vaccine: Part 2">Reverse Engineering Source Code of the Biontech Pfizer Vaccine: Part 2</a> (<a href="https://berthub.eu/articles/posts/part-2-reverse-engineering-source-code-of-the-biontech-pfizer-vaccine/" title="Accès à l’article original distant : Reverse Engineering Source Code of the Biontech Pfizer Vaccine: Part 2">original</a>)</li>
  108. <li><a href="/david/cache/2021/cd6592ceefc88cec80f8642f25a85f8f/" title="Accès à l’article dans le cache local : Incredible time-lapse shows a single cell transforming into a salamander">Incredible time-lapse shows a single cell transforming into a salamander</a> (<a href="https://www.nationalgeographic.com/animals/article/time-lapse-film-shows-salamander-development" title="Accès à l’article original distant : Incredible time-lapse shows a single cell transforming into a salamander">original</a>)</li>
  109. <li><a href="/david/cache/2021/4dd972c7ed4d1f01f0d63956763134d1/" title="Accès à l’article dans le cache local : Clues for software design in how we sketch maps of cities">Clues for software design in how we sketch maps of cities</a> (<a href="https://interconnected.org/home/2021/03/31/maps" title="Accès à l’article original distant : Clues for software design in how we sketch maps of cities">original</a>)</li>
  110. <li><a href="/david/cache/2021/6880a4077923d66ce1db9d8426107bc7/" title="Accès à l’article dans le cache local : reste des heures">reste des heures</a> (<a href="https://www.la-grange.net/2021/02/23/heures" title="Accès à l’article original distant : reste des heures">original</a>)</li>
  111. <li><a href="/david/cache/2021/f1df3d5f1720e137130581d5a2b8549f/" title="Accès à l’article dans le cache local : Built to Last">Built to Last</a> (<a href="https://logicmag.io/care/built-to-last/" title="Accès à l’article original distant : Built to Last">original</a>)</li>
  112. <li><a href="/david/cache/2021/d8320769320273ce23adb40f4792d58b/" title="Accès à l’article dans le cache local : log : vol. 11, num. 1, vendr. 5 mars 2021, réveil">log : vol. 11, num. 1, vendr. 5 mars 2021, réveil</a> (<a href="http://shl.huld.re/~f6k/log/vol11/1-reveil.html" title="Accès à l’article original distant : log : vol. 11, num. 1, vendr. 5 mars 2021, réveil">original</a>)</li>
  113. <li><a href="/david/cache/2021/deb0e4b7e744eb8767d1ad803c7922f3/" title="Accès à l’article dans le cache local : Be Humble">Be Humble</a> (<a href="https://lucumr.pocoo.org/2021/2/5/be-humble/" title="Accès à l’article original distant : Be Humble">original</a>)</li>
  114. <li><a href="/david/cache/2021/159231336c8a81b29ad49fc1b8f233c8/" title="Accès à l’article dans le cache local : Safety at conferences">Safety at conferences</a> (<a href="https://laurakalbag.com/safety-at-conferences/" title="Accès à l’article original distant : Safety at conferences">original</a>)</li>
  115. <li><a href="/david/cache/2021/46b31e34a075d66aa6e4b8d8c91bd535/" title="Accès à l’article dans le cache local : Almost a third of recovered Covid patients return to hospital in five months and one in eight die">Almost a third of recovered Covid patients return to hospital in five months and one in eight die</a> (<a href="https://www.telegraph.co.uk/news/2021/01/17/almost-third-recovered-covid-patients-return-hospital-five-months/" title="Accès à l’article original distant : Almost a third of recovered Covid patients return to hospital in five months and one in eight die">original</a>)</li>
  116. <li><a href="/david/cache/2021/d3a653c926aa97707653300947b65ab5/" title="Accès à l’article dans le cache local : The Mobile Performance Inequality Gap, 2021">The Mobile Performance Inequality Gap, 2021</a> (<a href="https://infrequently.org/2021/03/the-performance-inequality-gap/" title="Accès à l’article original distant : The Mobile Performance Inequality Gap, 2021">original</a>)</li>
  117. <li><a href="/david/cache/2021/78f2e167938eb4bfa6747503aefe45c1/" title="Accès à l’article dans le cache local : We Quit Our Jobs to Build a Cabin-Everything Went Wrong">We Quit Our Jobs to Build a Cabin-Everything Went Wrong</a> (<a href="https://www.outsideonline.com/2415766/friends-diy-cabin-build-washington" title="Accès à l’article original distant : We Quit Our Jobs to Build a Cabin-Everything Went Wrong">original</a>)</li>
  118. <li><a href="/david/cache/2021/28242a5ba209770efabfdbe5a6718719/" title="Accès à l’article dans le cache local : Des chasseurs massacrent sadiquement des sangliers à l’arme blanche">Des chasseurs massacrent sadiquement des sangliers à l’arme blanche</a> (<a href="https://reporterre.net/Des-chasseurs-massacrent-sadiquement-des-sangliers-a-l-arme-blanche" title="Accès à l’article original distant : Des chasseurs massacrent sadiquement des sangliers à l’arme blanche">original</a>)</li>
  119. <li><a href="/david/cache/2021/4121412b765fff38f76943b7bc6391a5/" title="Accès à l’article dans le cache local : Stumbling">Stumbling</a> (<a href="https://lucybellwood.com/stumbling/" title="Accès à l’article original distant : Stumbling">original</a>)</li>
  120. <li><a href="/david/cache/2021/862d065d924906f327f8a95e23659295/" title="Accès à l’article dans le cache local : The small web is beautiful">The small web is beautiful</a> (<a href="https://benhoyt.com/writings/the-small-web-is-beautiful/" title="Accès à l’article original distant : The small web is beautiful">original</a>)</li>
  121. <li><a href="/david/cache/2021/a722bf15647dfe923d3c28b2e229098c/" title="Accès à l’article dans le cache local : The Future of Web Software Is HTML-over-WebSockets">The Future of Web Software Is HTML-over-WebSockets</a> (<a href="https://alistapart.com/article/the-future-of-web-software-is-html-over-websockets/" title="Accès à l’article original distant : The Future of Web Software Is HTML-over-WebSockets">original</a>)</li>
  122. <li><a href="/david/cache/2021/fd776407232cd6fd7627bac7dba39755/" title="Accès à l’article dans le cache local : Épuiser la pratique">Épuiser la pratique</a> (<a href="https://www.quaternum.net/2020/02/29/epuiser-la-pratique/" title="Accès à l’article original distant : Épuiser la pratique">original</a>)</li>
  123. <li><a href="/david/cache/2021/ef2067bf42482ed7c48e1d166cde117a/" title="Accès à l’article dans le cache local : Cameras and Lenses">Cameras and Lenses</a> (<a href="https://ciechanow.ski/cameras-and-lenses/" title="Accès à l’article original distant : Cameras and Lenses">original</a>)</li>
  124. <li><a href="/david/cache/2021/aeed011f624ca8954d97f5bc4b53a6e8/" title="Accès à l’article dans le cache local : "Hey, World!"">"Hey, World!"</a> (<a href="https://world.hey.com/jason/hey-world-b02a6f2e" title="Accès à l’article original distant : "Hey, World!"">original</a>)</li>
  125. <li><a href="/david/cache/2021/9b2e831c217bc1179c0f74c4fc363c11/" title="Accès à l’article dans le cache local : Memexes, mountain lakes, and the serendipity of old ideas">Memexes, mountain lakes, and the serendipity of old ideas</a> (<a href="http://interconnected.org/home/2021/02/10/reservoirs" title="Accès à l’article original distant : Memexes, mountain lakes, and the serendipity of old ideas">original</a>)</li>
  126. <li><a href="/david/cache/2021/9e5d68c7459c77716c44dd1463be36d8/" title="Accès à l’article dans le cache local : Plaintext HTTP in a Modern World">Plaintext HTTP in a Modern World</a> (<a href="https://jcs.org/2021/01/06/plaintext" title="Accès à l’article original distant : Plaintext HTTP in a Modern World">original</a>)</li>
  127. <li><a href="/david/cache/2021/0b7bcc0e25805a7abd250d2d2ed440f0/" title="Accès à l’article dans le cache local : Routine">Routine</a> (<a href="https://blog.notmyidea.org/routine.html" title="Accès à l’article original distant : Routine">original</a>)</li>
  128. <li><a href="/david/cache/2021/e6125a584f3f5cac7fff464d8c116863/" title="Accès à l’article dans le cache local : L’écoanxiété nous détourne de l’action collective">L’écoanxiété nous détourne de l’action collective</a> (<a href="https://reporterre.net/L-ecoanxiete-nous-detourne-de-l-action-collective" title="Accès à l’article original distant : L’écoanxiété nous détourne de l’action collective">original</a>)</li>
  129. <li><a href="/david/cache/2021/cfcd10768187ce1c3e598136cd8838b2/" title="Accès à l’article dans le cache local : Bad News Wrapped in Protein: Inside the Coronavirus Genome">Bad News Wrapped in Protein: Inside the Coronavirus Genome</a> (<a href="https://www.nytimes.com/interactive/2020/04/03/science/coronavirus-genome-bad-news-wrapped-in-protein.html" title="Accès à l’article original distant : Bad News Wrapped in Protein: Inside the Coronavirus Genome">original</a>)</li>
  130. <li><a href="/david/cache/2021/6514143dca5d96bf9e751236b800fba5/" title="Accès à l’article dans le cache local : Are We Really Engineers?">Are We Really Engineers?</a> (<a href="https://www.hillelwayne.com/post/crossover-project/are-we-really-engineers/" title="Accès à l’article original distant : Are We Really Engineers?">original</a>)</li>
  131. <li><a href="/david/cache/2021/4b81d4d9d89fb1d417aa292463529271/" title="Accès à l’article dans le cache local : Vendor by default">Vendor by default</a> (<a href="https://macwright.com/2021/03/11/vendor-by-default.html" title="Accès à l’article original distant : Vendor by default">original</a>)</li>
  132. <li><a href="/david/cache/2021/6ad5b5985682512c140781b2b3c9ff7c/" title="Accès à l’article dans le cache local : That which is unique, breaks">That which is unique, breaks</a> (<a href="https://simonsarris.substack.com/p/that-which-is-unique-breaks" title="Accès à l’article original distant : That which is unique, breaks">original</a>)</li>
  133. <li><a href="/david/cache/2021/fe8d34354b3f82a0f5eb2158e314b8f6/" title="Accès à l’article dans le cache local : NFT : l’original et l’acopie">NFT : l’original et l’acopie</a> (<a href="https://www.affordance.info/mon_weblog/2021/03/nft-loriginal-et-lacopie.html" title="Accès à l’article original distant : NFT : l’original et l’acopie">original</a>)</li>
  134. <li><a href="/david/cache/2021/e7dd6d41e04bcbf69d3bf09bce827e4c/" title="Accès à l’article dans le cache local : How Long Does It Take to Hire Someone?">How Long Does It Take to Hire Someone?</a> (<a href="https://jacobian.org/2021/mar/11/hours-to-hire/" title="Accès à l’article original distant : How Long Does It Take to Hire Someone?">original</a>)</li>
  135. <li><a href="/david/cache/2021/b7829aa5073173cca4ed3f4ea23e767f/" title="Accès à l’article dans le cache local : Développeur de logiciel senior / principal(e) (Python)">Développeur de logiciel senior / principal(e) (Python)</a> (<a href="https://numerique.canada.ca/join-our-team/positions/d%C3%A9veloppeur-de-logiciel-senior-principal-e-python/" title="Accès à l’article original distant : Développeur de logiciel senior / principal(e) (Python)">original</a>)</li>
  136. <li><a href="/david/cache/2021/c177668b263f39d20788f002446d2a47/" title="Accès à l’article dans le cache local : 6-month consequences of COVID-19 in patients discharged from hospital: a cohort study">6-month consequences of COVID-19 in patients discharged from hospital: a cohort study</a> (<a href="https://www.thelancet.com/journals/lancet/article/PIIS0140-6736(20)32656-8/fulltext" title="Accès à l’article original distant : 6-month consequences of COVID-19 in patients discharged from hospital: a cohort study">original</a>)</li>
  137. <li><a href="/david/cache/2021/a0c3fb599ec91412f58fbaa4fc0d9680/" title="Accès à l’article dans le cache local : L’asymptote du dépressif">L’asymptote du dépressif</a> (<a href="https://prototypekblog.wordpress.com/2021/02/25/lasymptote-du-depressif/" title="Accès à l’article original distant : L’asymptote du dépressif">original</a>)</li>
  138. <li><a href="/david/cache/2021/f91656e01371b761e22e6684dd3b6da2/" title="Accès à l’article dans le cache local : Jacob Kaplan-Moss">Jacob Kaplan-Moss</a> (<a href="https://jacobian.org/help/" title="Accès à l’article original distant : Jacob Kaplan-Moss">original</a>)</li>
  139. <li><a href="/david/cache/2021/75dddb3b875088c9e1908a83687e7725/" title="Accès à l’article dans le cache local : Four fours - Sentiers Media">Four fours - Sentiers Media</a> (<a href="https://sentiers.media/four-fours/" title="Accès à l’article original distant : Four fours - Sentiers Media">original</a>)</li>
  140. <li><a href="/david/cache/2021/127326e70c4f151132af72e4b0a5827b/" title="Accès à l’article dans le cache local : Bonnes feuilles : « Apocalypse cognitive »">Bonnes feuilles : « Apocalypse cognitive »</a> (<a href="https://theconversation.com/bonnes-feuilles-apocalypse-cognitive-155247" title="Accès à l’article original distant : Bonnes feuilles : « Apocalypse cognitive »">original</a>)</li>
  141. <li><a href="/david/cache/2021/2ef963bae20d31e4bf836ede81512a43/" title="Accès à l’article dans le cache local : What does sponsorship look like?">What does sponsorship look like?</a> (<a href="https://larahogan.me/blog/what-sponsorship-looks-like/" title="Accès à l’article original distant : What does sponsorship look like?">original</a>)</li>
  142. <li><a href="/david/cache/2021/59bd3fea3b3b370bd6b116e77effb69e/" title="Accès à l’article dans le cache local : Nostalgie de l'ancien web">Nostalgie de l'ancien web</a> (<a href="https://osd.ovh/index.php?article10/nostalgie-de-lancien-web" title="Accès à l’article original distant : Nostalgie de l'ancien web">original</a>)</li>
  143. <li><a href="/david/cache/2021/9d1a6e44ba8805d53071ba461df238b0/" title="Accès à l’article dans le cache local : Baptiste Morizot : « L’animalité est constitutive de notre identité dans ce qu’elle a de sain «">Baptiste Morizot : « L’animalité est constitutive de notre identité dans ce qu’elle a de sain «</a> (<a href="https://www.humanite.fr/baptiste-morizot-lanimalite-est-constitutive-de-notre-identite-dans-ce-quelle-de-sain-658797" title="Accès à l’article original distant : Baptiste Morizot : « L’animalité est constitutive de notre identité dans ce qu’elle a de sain «">original</a>)</li>
  144. <li><a href="/david/cache/2021/75d7cccf22ce15ad026621e8e753d65b/" title="Accès à l’article dans le cache local : Comment fonctionne une centrale nucléaire ?">Comment fonctionne une centrale nucléaire ?</a> (<a href="https://couleur-science.eu/?d=268bbb--comment-fonctionne-une-centrale-nucleaire" title="Accès à l’article original distant : Comment fonctionne une centrale nucléaire ?">original</a>)</li>
  145. <li><a href="/david/cache/2021/45af171610f986077420b27c2da46ec1/" title="Accès à l’article dans le cache local : I bought 300 emoji domain names from Kazakhstan and built an email service">I bought 300 emoji domain names from Kazakhstan and built an email service</a> (<a href="https://tinyprojects.dev/projects/mailoji" title="Accès à l’article original distant : I bought 300 emoji domain names from Kazakhstan and built an email service">original</a>)</li>
  146. <li><a href="/david/cache/2021/0c6966a8e9543b52c361ac6de68f08e4/" title="Accès à l’article dans le cache local : Understanding ProRAW">Understanding ProRAW</a> (<a href="https://blog.halide.cam/understanding-proraw-4eed556d4c54" title="Accès à l’article original distant : Understanding ProRAW">original</a>)</li>
  147. <li><a href="/david/cache/2021/aeb0a60038b91bf1fbbbd39b358366fb/" title="Accès à l’article dans le cache local : ☕️ Journal : Statu quo">☕️ Journal : Statu quo</a> (<a href="https://oncletom.io/2021/01/05/statu-quo/" title="Accès à l’article original distant : ☕️ Journal : Statu quo">original</a>)</li>
  148. <li><a href="/david/cache/2021/595df9c1f986df0678e4fc7d6aa34ef1/" title="Accès à l’article dans le cache local : Qui sont les dix auteurs de SF de la « Red Team » du ministère des Armées ?">Qui sont les dix auteurs de SF de la « Red Team » du ministère des Armées ?</a> (<a href="https://www.lepoint.fr/high-tech-internet/qui-sont-les-dix-auteurs-de-sf-de-la-red-team-du-ministere-des-armees-04-12-2020-2404230_47.php" title="Accès à l’article original distant : Qui sont les dix auteurs de SF de la « Red Team » du ministère des Armées ?">original</a>)</li>
  149. <li><a href="/david/cache/2021/03efcc832beba4212f70128850c9fe1f/" title="Accès à l’article dans le cache local : Émois en photos : année blanche, année noire - 2 : distance">Émois en photos : année blanche, année noire - 2 : distance</a> (<a href="https://lalunemauve.fr/emois-en-photos-annee-blanche-annee-noire-2-distance/" title="Accès à l’article original distant : Émois en photos : année blanche, année noire - 2 : distance">original</a>)</li>
  150. <li><a href="/david/cache/2021/883963a92bff6f5bd5ade883ae84bd3f/" title="Accès à l’article dans le cache local : Disrespectful Design-Users aren’t stupid or lazy">Disrespectful Design-Users aren’t stupid or lazy</a> (<a href="https://somehowmanage.com/2020/09/13/disrespectful-design-users-arent-stupid-or-lazy/" title="Accès à l’article original distant : Disrespectful Design-Users aren’t stupid or lazy">original</a>)</li>
  151. <li><a href="/david/cache/2021/2057ddcf3fd20edd602cee1b08ac17e8/" title="Accès à l’article dans le cache local : Designing Branch: Sustainable Interaction Design Principles">Designing Branch: Sustainable Interaction Design Principles</a> (<a href="https://branch.climateaction.tech/2020/10/15/designing-branch-sustainable-interaction-design-principles/" title="Accès à l’article original distant : Designing Branch: Sustainable Interaction Design Principles">original</a>)</li>
  152. <li><a href="/david/cache/2021/eef2b3e3085a9b71cd7fe64f21fa0453/" title="Accès à l’article dans le cache local : Anxious feelings about optimisation through complexity">Anxious feelings about optimisation through complexity</a> (<a href="http://interconnected.org/home/2021/02/12/optimisation" title="Accès à l’article original distant : Anxious feelings about optimisation through complexity">original</a>)</li>
  153. <li><a href="/david/cache/2021/5243221f38525040d87e7407b08e1ff5/" title="Accès à l’article dans le cache local : log : vol. 11, num. 19, mar. 30 mars 2021, vanuatu">log : vol. 11, num. 19, mar. 30 mars 2021, vanuatu</a> (<a href="http://shl.huld.re/~f6k/log/vol11/19-vanuatu.html" title="Accès à l’article original distant : log : vol. 11, num. 19, mar. 30 mars 2021, vanuatu">original</a>)</li>
  154. <li><a href="/david/cache/2021/7405ceb4a34705e65bc5ccc4f025a0b8/" title="Accès à l’article dans le cache local : Collaboration productive : comment établir un flux de travail qui fonctionne pour toutes les disciplines">Collaboration productive : comment établir un flux de travail qui fonctionne pour toutes les disciplines</a> (<a href="https://numerique.canada.ca/2018/08/21/collaboration-productive/" title="Accès à l’article original distant : Collaboration productive : comment établir un flux de travail qui fonctionne pour toutes les disciplines">original</a>)</li>
  155. <li><a href="/david/cache/2021/96ff9022e3ee0d37611b30f57205810e/" title="Accès à l’article dans le cache local : Ways I'm available to help.">Ways I'm available to help.</a> (<a href="https://lethain.com/ways-i-help/" title="Accès à l’article original distant : Ways I'm available to help.">original</a>)</li>
  156. <li><a href="/david/cache/2021/44064d714aff0deac9f882cc429d8b9d/" title="Accès à l’article dans le cache local : Some rambling thoughts about the stuttering end of the last ice age and what lockdown means">Some rambling thoughts about the stuttering end of the last ice age and what lockdown means</a> (<a href="http://interconnected.org/home/2020/04/20/continuous_partial_lockdown" title="Accès à l’article original distant : Some rambling thoughts about the stuttering end of the last ice age and what lockdown means">original</a>)</li>
  157. <li><a href="/david/cache/2021/5c20cd102357c0140e36a902ca400c8f/" title="Accès à l’article dans le cache local : Beginners in a sea of experts">Beginners in a sea of experts</a> (<a href="https://nedbatchelder.com/blog/202103/beginners_in_a_sea_of_experts.html" title="Accès à l’article original distant : Beginners in a sea of experts">original</a>)</li>
  158. <li><a href="/david/cache/2021/33c4c1d859a2d85c1710ea50628a71b1/" title="Accès à l’article dans le cache local : ☕️ Journal : Acheter de la forêt">☕️ Journal : Acheter de la forêt</a> (<a href="https://oncletom.io/2021/03/12/acheter-de-la-foret/" title="Accès à l’article original distant : ☕️ Journal : Acheter de la forêt">original</a>)</li>
  159. <li><a href="/david/cache/2021/0e0d866f920298fbc0624c03ddc83d24/" title="Accès à l’article dans le cache local : Reconnaissance faciale: Clearview AI a violé la vie privée des Canadiens">Reconnaissance faciale: Clearview AI a violé la vie privée des Canadiens</a> (<a href="https://www.ledevoir.com/societe/594536/reconnaissance-faciale-clearview-ai-a-viole-la-vie-privee-des-canadiens" title="Accès à l’article original distant : Reconnaissance faciale: Clearview AI a violé la vie privée des Canadiens">original</a>)</li>
  160. <li><a href="/david/cache/2021/6faa32ba37a3b1232125db9858700627/" title="Accès à l’article dans le cache local : Design Justice : repolitiser le design">Design Justice : repolitiser le design</a> (<a href="https://www.internetactu.net/2021/02/03/design-justice-repolitiser-le-design/" title="Accès à l’article original distant : Design Justice : repolitiser le design">original</a>)</li>
  161. <li><a href="/david/cache/2021/15d4f93dba253e3194c8dba52d0e8ee6/" title="Accès à l’article dans le cache local : The principle of most availability">The principle of most availability</a> (<a href="https://adactio.com/journal/17987" title="Accès à l’article original distant : The principle of most availability">original</a>)</li>
  162. <li><a href="/david/cache/2021/7b8d925b24ca7a4777becd5cc212d11a/" title="Accès à l’article dans le cache local : Technical Mentorship Reimagined: Time-bound and No Awkward Asks Necessary">Technical Mentorship Reimagined: Time-bound and No Awkward Asks Necessary</a> (<a href="https://shopify.engineering/technical-mentorship-reimagined" title="Accès à l’article original distant : Technical Mentorship Reimagined: Time-bound and No Awkward Asks Necessary">original</a>)</li>
  163. <li><a href="/david/cache/2021/30069f97e4aa989a1d89fe8d88538da8/" title="Accès à l’article dans le cache local : We Had the COVID-19 Vaccine the Whole Time">We Had the COVID-19 Vaccine the Whole Time</a> (<a href="https://nymag.com/intelligencer/2020/12/moderna-covid-19-vaccine-design.html" title="Accès à l’article original distant : We Had the COVID-19 Vaccine the Whole Time">original</a>)</li>
  164. </ul>
  165. </main>
  166. <hr>
  167. <footer>
  168. <p>
  169. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  170. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-home"></use>
  171. </svg> Accueil</a> •
  172. <a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2">
  173. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-rss2"></use>
  174. </svg> RSS</a> •
  175. <a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie">
  176. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-user-tie"></use>
  177. </svg> Pro</a> •
  178. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail">
  179. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-mail"></use>
  180. </svg> Email</a> •
  181. <abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2">
  182. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-hammer2"></use>
  183. </svg> Légal</abbr>
  184. </p>
  185. <template id="theme-selector">
  186. <form>
  187. <fieldset>
  188. <legend><svg class="icon icon-brightness-contrast">
  189. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-brightness-contrast"></use>
  190. </svg> Thème</legend>
  191. <label>
  192. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  193. </label>
  194. <label>
  195. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  196. </label>
  197. <label>
  198. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  199. </label>
  200. </fieldset>
  201. </form>
  202. </template>
  203. </footer>
  204. <script>
  205. function loadThemeForm(templateName) {
  206. const themeSelectorTemplate = document.querySelector(templateName)
  207. const form = themeSelectorTemplate.content.firstElementChild
  208. themeSelectorTemplate.replaceWith(form)
  209. form.addEventListener('change', (e) => {
  210. const chosenColorScheme = e.target.value
  211. localStorage.setItem('theme', chosenColorScheme)
  212. toggleTheme(chosenColorScheme)
  213. })
  214. const selectedTheme = localStorage.getItem('theme')
  215. if (selectedTheme && selectedTheme !== 'undefined') {
  216. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  217. }
  218. }
  219. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  220. window.addEventListener('load', () => {
  221. let hasDarkRules = false
  222. for (const styleSheet of Array.from(document.styleSheets)) {
  223. let mediaRules = []
  224. for (const cssRule of styleSheet.cssRules) {
  225. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  226. continue
  227. }
  228. // WARNING: Safari does not have/supports `conditionText`.
  229. if (cssRule.conditionText) {
  230. if (cssRule.conditionText !== prefersColorSchemeDark) {
  231. continue
  232. }
  233. } else {
  234. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  235. continue
  236. }
  237. }
  238. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  239. }
  240. // WARNING: do not try to insert a Rule to a styleSheet you are
  241. // currently iterating on, otherwise the browser will be stuck
  242. // in a infinite loop…
  243. for (const mediaRule of mediaRules) {
  244. styleSheet.insertRule(mediaRule.cssText)
  245. hasDarkRules = true
  246. }
  247. }
  248. if (hasDarkRules) {
  249. loadThemeForm('#theme-selector')
  250. }
  251. })
  252. </script>
  253. </body>
  254. </html>