Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

index.html 14KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  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>Biologeek — David Larlet</title>
  13. <meta name="description" content="I’ve never come across a subject so fractal in its complexity. It reminds me of computing that way. A day of programming might involve constructing an elaborate regular expression, investigating a file descriptor leak, debugging a race condition in the application you just wrote, and thinking through the interface of a module. Everywhere you look—the compiler, the shell, the CPU, the DOM—is an abstraction hiding lifetimes of work. Biology is like this, just much, much worse, because living systems aren’t intentionally designed. It’s all a big slop of global mutable state. Control is achieved by upregulating this thing while turning down the promoter of that thing’s repressor. You think you know how something works—like when I thought I had a handle on the neutrophil, an important front-line player in the innate immune system—only to learn that it comes in several flavors, and more are still being discovered, and some of them seem to do the opposite of the ones you thought you knew. Everything in biology is like this. It’s all exceptions to the rule.">
  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_2020-06-19.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 hr-center ul-star pre-tick" data-instant-intensity="viewport-all">
  52. <article>
  53. <header>
  54. <h1>Biologeek</h1>
  55. </header>
  56. <nav>
  57. <p class="center">
  58. <a rel="prev" href="/david/2021/01/09/" title="Publication précédente : Science-F(r)iction">←</a> •
  59. <a href="/david/" title="Aller à l’accueil">🏠</a>
  60. </p>
  61. </nav>
  62. <hr>
  63. <blockquote>
  64. <p>I’ve never come across a subject so fractal in its complexity. It reminds me of computing that way. A day of programming might involve constructing an elaborate regular expression, investigating a file descriptor leak, debugging a race condition in the application you just wrote, and thinking through the interface of a module. Everywhere you look—the compiler, the shell, the CPU, the DOM—is an abstraction hiding lifetimes of work. <mark>Biology is like this, just much, much worse, because living systems aren’t intentionally designed.</mark> It’s all a big slop of global mutable state. Control is achieved by upregulating this thing while turning down the promoter of that thing’s repressor. You think you know how something works—like when I thought I had a handle on the neutrophil, an important front-line player in the innate immune system—only to learn that it comes in several flavors, and more are still being discovered, and some of them seem to do the opposite of the ones you thought you knew. Everything in biology is like this. It’s all exceptions to the rule.</p>
  65. <p><cite><em><a href="https://jsomers.net/i-should-have-loved-biology/">I should have loved biology</a></em> (<a href="/david/cache/2021/9c9968045ffe697a08dc13df854247f1/">cache</a>)</cite></p>
  66. </blockquote>
  67. <p>Il y a un engouement certain pour la biologie en ce moment et ça me fait plaisir de retomber dans ce domaine en mettant à jour de vieilles connaissances. <strong>Constater les avancées scientifiques en fonction de ses anciennes croyances.</strong> Se dire que tout cela est encore bien vivant… et inconnu !</p>
  68. <p>Quelques articles particulièrement didactiques :</p>
  69. <ul>
  70. <li><a href="https://berthub.eu/articles/posts/amazing-dna/">comprendre l’ADN</a> (<a href="/david/cache/2021/1cb1c46e0a1adcd0917179a214a16e0a/">cache</a>) lorsqu’on est un·e développeu·r·se ;</li>
  71. <li>les <a href="https://www.nature.com/articles/d41586-020-01221-y">différentes méthodes employées pour créer à un vaccin</a> (<a href="/david/cache/2021/fe75ef80663602733dbe24cc717f257b/">cache</a>) avec de jolies illustrations ;</li>
  72. <li>où j’ai appris que <a href="https://nymag.com/intelligencer/2020/12/moderna-covid-19-vaccine-design.html">le vaccin Moderna a été créé le 13 janvier… 2020 (!)</a> (<a href="/david/cache/2021/30069f97e4aa989a1d89fe8d88538da8/">cache</a>) et depuis on teste son usage et ses effets secondaires ;</li>
  73. <li>une <a href="https://www.nytimes.com/interactive/2020/04/03/science/coronavirus-genome-bad-news-wrapped-in-protein.html">analyse du génome du coronavirus</a> (<a href="/david/cache/2021/cfcd10768187ce1c3e598136cd8838b2/">cache</a>) séquencée et imagée qui permet de visualiser la forme — et donc la fonction — des protéines ;</li>
  74. <li>les <a href="https://graphics.reuters.com/HEALTH-CORONAVIRUS/EVOLUTION/yxmpjqkdzvr/index.html">différentes mutations du virus</a> (<a href="/david/cache/2021/3d3e8962a6319ee4d41a75b1cd5abd38/">cache</a>) au cours du temps et de l’espace ;</li>
  75. <li>pourquoi <a href="https://www.deplatformdisease.com/blog/no-really-mrna-vaccines-are-not-going-to-affect-your-dna">le virus à ARN ne va pas modifier votre ADN</a> (<a href="/david/cache/2021/388cf40eae756175ee87c9bf7a1548c4/">cache</a>) en l’état actuel des connaissances en biologie ;</li>
  76. <li>un <a href="https://edinburgh-genome-foundry.github.io/DnaChisel/">outil d’optimisation de séquences</a> (<a href="/david/cache/2021/e8ebcfcc0dbd4336a82f618a1bd1a818/">cache</a>) en Python ce qui permet par exemple <a href="https://berthub.eu/articles/posts/part-2-reverse-engineering-source-code-of-the-biontech-pfizer-vaccine/">d’optimiser un vaccin</a> (<a href="/david/cache/2021/5f1c22e9a41d209ff84218b3d6faf676/">cache</a>) ;</li>
  77. <li>quelqu’un qui analyse sa <a href="https://karpathy.github.io/2020/06/11/biohacking-lite/">perte de poids sous l’angle de la biologie</a> (<a href="/david/cache/2021/1039b631578007d23759a99c2238cda9/">cache</a>) ;</li>
  78. <li>on s’éloigne un peu de la biologie mais cette façon de <a href="http://interconnected.org/home/2020/09/01/microcovids">calculer son exposition en microCOVIDs</a> (<a href="/david/cache/2021/dcba97f9e4bd70b1a152b9498dc5711c/">cache</a>) est fascinante.</li>
  79. </ul>
  80. <p>Bonnes lectures !</p>
  81. <blockquote>
  82. <p>Avant tout chose, le mentat doit être un généraliste, et non un spécialiste. Il est sage que, dans les moments importants, les décisions soient supervisées par des généralistes. Les experts et les spécialistes vous conduisent rapidement au chaos. Chasseurs de poux vétilleux, ils sont une source intarissable de chicaneries inutiles. Le mentat-généraliste, d’un autre côté, doit apporter un solide bon sens à ses décisions. Il ne doit pas se couper du courant principal des évènements de l’univers. Il doit être capable de déclarer : « Pour le moment, il n’y a pas de vrai mystère. Ceci est ce que nous voulons maintenant. <mark>Cela peut paraitre faux plus tard, mais nous ferons les corrections nécessaires quand le moment sera venu.</mark> »</p>
  83. <p>Le mentat-généraliste doit comprendre que tout ce que nous pouvons identifier comme étant notre univers fait simplement partie de phénomènes plus vastes. L’expert, au contraire, regarde en arrière, dans les catégories étroites de sa propre spécialité. Le généraliste, lui, regarde au loin ; <mark>il cherche des principes vivants</mark>, sachant pertinemment que de tels principes changent, qu’ils se développent.</p>
  84. <p>Le mentat-généraliste regarde les caractéristiques du changement lui-même. Il ne peut exister de catalogue permanent pour de tels changements, aucun traité ou manuel. C’est sans préconception qu’il faut les regarder, tout en se demandant : « Que fait cette chose ? »</p>
  85. <p><cite><em>Le Guide du Mentat</em>, <a href="/david/2020/12/21/#dune">Dune</a> III. Les enfants de Dune</cite></p>
  86. </blockquote>
  87. <nav>
  88. <p class="center">
  89. <a rel="prev" href="/david/2021/01/09/" title="Publication précédente : Science-F(r)iction">←</a> •
  90. <a href="/david/2021/" title="Liste des publications récentes">↑</a>
  91. </p>
  92. </nav>
  93. </article>
  94. <hr>
  95. <footer>
  96. <p>
  97. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  98. <a href="/david/log/" title="Accès au flux RSS">🤖</a> •
  99. <a href="http://larlet.com" title="Go to my English profile" data-instant>🇨🇦</a> •
  100. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">📮</a> •
  101. <abbr title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">🧚</abbr>
  102. </p>
  103. <template id="theme-selector">
  104. <form>
  105. <fieldset>
  106. <legend>Thème</legend>
  107. <label>
  108. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  109. </label>
  110. <label>
  111. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  112. </label>
  113. <label>
  114. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  115. </label>
  116. </fieldset>
  117. </form>
  118. </template>
  119. </footer>
  120. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  121. <script>
  122. function loadThemeForm(templateName) {
  123. const themeSelectorTemplate = document.querySelector(templateName)
  124. const form = themeSelectorTemplate.content.firstElementChild
  125. themeSelectorTemplate.replaceWith(form)
  126. form.addEventListener('change', (e) => {
  127. const chosenColorScheme = e.target.value
  128. localStorage.setItem('theme', chosenColorScheme)
  129. toggleTheme(chosenColorScheme)
  130. })
  131. const selectedTheme = localStorage.getItem('theme')
  132. if (selectedTheme && selectedTheme !== 'undefined') {
  133. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  134. }
  135. }
  136. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  137. window.addEventListener('load', () => {
  138. let hasDarkRules = false
  139. for (const styleSheet of Array.from(document.styleSheets)) {
  140. let mediaRules = []
  141. for (const cssRule of styleSheet.cssRules) {
  142. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  143. continue
  144. }
  145. // WARNING: Safari does not have/supports `conditionText`.
  146. if (cssRule.conditionText) {
  147. if (cssRule.conditionText !== prefersColorSchemeDark) {
  148. continue
  149. }
  150. } else {
  151. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  152. continue
  153. }
  154. }
  155. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  156. }
  157. // WARNING: do not try to insert a Rule to a styleSheet you are
  158. // currently iterating on, otherwise the browser will be stuck
  159. // in a infinite loop…
  160. for (const mediaRule of mediaRules) {
  161. styleSheet.insertRule(mediaRule.cssText)
  162. hasDarkRules = true
  163. }
  164. }
  165. if (hasDarkRules) {
  166. loadThemeForm('#theme-selector')
  167. }
  168. })
  169. </script>
  170. </body>
  171. </html>