A place to cache linked articles (think custom and personal wayback machine)
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 8.9KB

3 년 전
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  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>When Are We Back To Normal? (archive) — David Larlet</title>
  13. <meta name="description" content="Publication mise en cache pour en conserver une trace.">
  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. <meta name="robots" content="noindex, nofollow">
  52. <meta content="origin-when-cross-origin" name="referrer">
  53. <!-- Canonical URL for SEO purposes -->
  54. <link rel="canonical" href="https://inessential.com/2020/12/31/when_are_we_back_to_normal">
  55. <body class="remarkdown h1-underline h2-underline h3-underline hr-center ul-star pre-tick">
  56. <article>
  57. <header>
  58. <h1>When Are We Back To Normal?</h1>
  59. </header>
  60. <nav>
  61. <p class="center">
  62. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  63. <a href="https://inessential.com/2020/12/31/when_are_we_back_to_normal" title="Lien vers le contenu original">Source originale</a>
  64. </p>
  65. </nav>
  66. <hr>
  67. <p>I’m trying to figure out when we’ll be back to something like normal. I’m thinking of a few things:</p>
  68. <ul>
  69. <li>Biden’s goal is 100 million doses in his first 100 days</li>
  70. <li>The vaccines require two doses</li>
  71. <li>There are 330 million people in the United States</li>
  72. <li>Dr. Fauci has said that we’ll achieve herd immunity once we have 70-85% of the population vaccinated</li>
  73. </ul>
  74. <p>Let’s say we achieve herd immunity, and some kind or normalcy, at around 250 million people vaccinated, which is just over 75%.</p>
  75. <p>Since each person requires two doses, that’s 500 million doses.</p>
  76. <p>The pace Biden is aiming for is 1 million doses per day. If we’re able to achieve and sustain that pace starting late in January — which is not at all a sure thing — we’ll have administered 500 million doses around mid-year 2022.</p>
  77. <p>I keep hearing people talk optimistically about April or May of 2021. Me, I’m hoping to be able to see my family for Thanksgiving and Christmas 2021, but I’m not counting on it as a sure thing.</p>
  78. <p>We’re going to need to go much faster with the vaccines. To reach 75% of the population by, say, Labor Day, in time for kids to go back to school, we’re going to need to administer 500 million doses by mid-August, about seven months after Biden’s inauguration. (Remember that immunity is ramped up about two weeks after the second dose.) To make this happen we’ll need to administer 2-2.5 million doses per day.</p>
  79. <p>I don’t see how we get there by counting on local drug stores to administer most of the doses. I suspect we’re going to need to use parks and high school football fields — big, open spaces where large crowds can line up safely. And we’re going to need to do it day after day, with no days off.</p>
  80. <p>(Is any of my math wrong? There’s no point in being overly-precise here — but please tell me if I’ve made some error that changes things significantly.)</p>
  81. </article>
  82. <hr>
  83. <footer>
  84. <p>
  85. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  86. <a href="/david/log/" title="Accès au flux RSS">🤖</a> •
  87. <a href="http://larlet.com" title="Go to my English profile" data-instant>🇨🇦</a> •
  88. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">📮</a> •
  89. <abbr title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">🧚</abbr>
  90. </p>
  91. <template id="theme-selector">
  92. <form>
  93. <fieldset>
  94. <legend>Thème</legend>
  95. <label>
  96. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  97. </label>
  98. <label>
  99. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  100. </label>
  101. <label>
  102. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  103. </label>
  104. </fieldset>
  105. </form>
  106. </template>
  107. </footer>
  108. <script>
  109. function loadThemeForm(templateName) {
  110. const themeSelectorTemplate = document.querySelector(templateName)
  111. const form = themeSelectorTemplate.content.firstElementChild
  112. themeSelectorTemplate.replaceWith(form)
  113. form.addEventListener('change', (e) => {
  114. const chosenColorScheme = e.target.value
  115. localStorage.setItem('theme', chosenColorScheme)
  116. toggleTheme(chosenColorScheme)
  117. })
  118. const selectedTheme = localStorage.getItem('theme')
  119. if (selectedTheme && selectedTheme !== 'undefined') {
  120. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  121. }
  122. }
  123. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  124. window.addEventListener('load', () => {
  125. let hasDarkRules = false
  126. for (const styleSheet of Array.from(document.styleSheets)) {
  127. let mediaRules = []
  128. for (const cssRule of styleSheet.cssRules) {
  129. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  130. continue
  131. }
  132. // WARNING: Safari does not have/supports `conditionText`.
  133. if (cssRule.conditionText) {
  134. if (cssRule.conditionText !== prefersColorSchemeDark) {
  135. continue
  136. }
  137. } else {
  138. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  139. continue
  140. }
  141. }
  142. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  143. }
  144. // WARNING: do not try to insert a Rule to a styleSheet you are
  145. // currently iterating on, otherwise the browser will be stuck
  146. // in a infinite loop…
  147. for (const mediaRule of mediaRules) {
  148. styleSheet.insertRule(mediaRule.cssText)
  149. hasDarkRules = true
  150. }
  151. }
  152. if (hasDarkRules) {
  153. loadThemeForm('#theme-selector')
  154. }
  155. })
  156. </script>
  157. </body>
  158. </html>