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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  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>Snow&nbsp;Fall — David Larlet</title>
  13. <meta name="description" content="Ten years ago this week, in December 2012, “Snow Fall: The Avalanche at Tunnel Creek,” an ambitious multimedia feature about a deadly avalanche in Washington State that year, took the journalism world by storm.">
  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="#f7f7f7">
  24. <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
  25. <meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)">
  26. <meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)">
  27. <!-- Documented, feel free to shoot an email. -->
  28. <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
  29. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  30. <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>
  31. <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>
  32. <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>
  33. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  34. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  35. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  36. <script>
  37. function toggleTheme(themeName) {
  38. document.documentElement.classList.toggle(
  39. 'forced-dark',
  40. themeName === 'dark'
  41. )
  42. document.documentElement.classList.toggle(
  43. 'forced-light',
  44. themeName === 'light'
  45. )
  46. }
  47. const selectedTheme = localStorage.getItem('theme')
  48. if (selectedTheme !== 'undefined') {
  49. toggleTheme(selectedTheme)
  50. }
  51. </script>
  52. <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all">
  53. <article>
  54. <header>
  55. <h1>Snow&nbsp;Fall</h1>
  56. </header>
  57. <nav>
  58. <p class="center">
  59. <a rel="prev" href="/david/2023/01/14/" title="Publication précédente : Dépendances">← Précédent</a> •
  60. <nobr>
  61. <a href="/david/" title="Aller à l’accueil"
  62. ><svg class="icon icon-home">
  63. <use
  64. xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-home"
  65. ></use>
  66. </svg>
  67. Accueil</a
  68. >
  69. </nobr>
  70. <nobr>
  71. <a href="/david/recherche/" title="Aller à la page de recherche"
  72. ><svg class="icon icon-search">
  73. <use
  74. xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-search"
  75. ></use>
  76. </svg>
  77. Recherche</a
  78. >
  79. </nobr>
  80. • <a rel="next" href="/david/2023/01/16/" title="Publication suivante : Chasse">Suivant →</a>
  81. </p>
  82. </nav>
  83. <hr>
  84. <blockquote lang="en">
  85. <p>Ten years ago this week, in December 2012, “<a href="https://www.nytimes.com/projects/2012/snow-fall/index.html">Snow Fall: The Avalanche at Tunnel Creek</a>,” an ambitious multimedia feature about a deadly avalanche in Washington State that year, took the journalism world by&nbsp;storm.</p>
  86. <p><cite><em><a href="https://www.nytimes.com/2022/12/23/insider/snow-fall-at-10-how-it-changed-journalism.html">‘Snow Fall’ at 10: How It Changed Journalism</a></em>&nbsp;(<a href="/david/cache/2023/cba96d83d96944c55675cb073fcfc60d/">cache</a>)</cite></p>
  87. </blockquote>
  88. <p>Il est rare que je me souvienne d’évènement historiques autour du Web. À part peut-être les sorties de <a href="/david/biologeek/archives/20041121-mozparty-des-geeks-irl--/">Firefox 1</a> et <a href="/david/biologeek/archives/20061028-soiree-firefox-2-paris/">2</a> car j’étais aux évènements&nbsp;dédiés.</p>
  89. <p>«&nbsp;<span lang=en>Snow Fall</span>&nbsp;» était d’un autre ordre de grandeur pour moi car ça ouvrait au Web une possibilité de raconter des histoires dynamiques. Je me rappelle avec une assez bonne précision de l’excitation que j’avais eu en parcourant la page à l’époque. Ce n’était pas tant le côté immersif que technique qui m’intéressait alors, et c’était une époque où l’on pouvait encore consulter une source de site web et la comprendre. J’ai tellement appris comme&nbsp;ça&#8239;!</p>
  90. <p>Allez consulter cette magnificence, une source commentée, non minifiée, avec du contenu qui est dans la page et des media liés de manière standardisée et compréhensible. Une autre&nbsp;époque.</p>
  91. <p>On en parlait récemment avec <a href="https://thom4.net/">Thomas</a>, comment est-ce qu’une génération qui est principalement autodidacte a-t-elle pu être à l’origine de la complexité actuelle des outils de publication sur le Web&#8239;? Je suis tellement triste de la marche que l’on a créé pour réduire l’accessibilité de sa source. Il y a une tendance humaine à faire —&nbsp;plus ou moins consciemment&nbsp;— tomber l’échelle qui nous a permis de monter pour être sûr de garder une certaine avance sur les&nbsp;suivant·es.</p>
  92. <p><em>Tout parallèle avec notre rapport à l’immigration serait bien évidement&nbsp;fortuit.</em></p>
  93. <blockquote lang="en">
  94. <p>Mr. Duenes also noted that “Snow Fall” helped budding designers and engineers see themselves as potential&nbsp;journalists.</p>
  95. <p>“It generated the idea among people with visual skills that journalism might be a place for them,” Mr. Duenes said. “Not people who were experts at the moment, but people in school who could see an overlap between an area where they had talent and the discipline of visual&nbsp;journalism.”</p>
  96. <p><cite><em>Ibid.</em></cite></p>
  97. </blockquote>
  98. <hr />
  99. <blockquote lang="en">
  100. <p>For a data format, yaml is extremely complicated. It aims to be a human-friendly format, but in striving for that it introduces <mark>so much complexity,</mark> that I would argue it achieves the opposite result. Yaml is full of footguns and its friendliness is deceptive. In this post I want to demonstrate this through an&nbsp;example.</p>
  101. <p><cite><em><a href="https://ruudvanasseldonk.com/2023/01/11/the-yaml-document-from-hell">The yaml document from hell</a></em>&nbsp;(<a href="/david/cache/2023/3b05eb0d7d0409bcfd53b4cdf6c20daa/">cache</a>)</cite></p>
  102. </blockquote>
  103. <blockquote lang="en">
  104. <p> It was among the strongest feelings of grief I have ever encountered. The contrast between the vicious coldness of space and the warm nurturing of Earth below filled me with overwhelming sadness. Every day, we are confronted with the knowledge of further destruction of Earth at our hands: the extinction of animal species, of flora and fauna . . . things that took five billion years to evolve, and suddenly we will never see them again because of the interference of mankind. It filled me with dread. <mark>My trip to space was supposed to be a celebration; instead, it felt like a&nbsp;funeral.</mark></p>
  105. <p><cite><em><a href="https://variety.com/2022/tv/news/william-shatner-space-boldly-go-excerpt-1235395113/">William Shatner: My Trip to Space Filled Me With Sadness - Variety</a></em>&nbsp;(<a href="/david/cache/2023/ca3e313992d7ac7e4aeaece85e7f4b6a/">cache</a>)</cite></p>
  106. </blockquote>
  107. <nav>
  108. <p>
  109. <a href="/david/2023/complexite/"
  110. title="Liste de tous les articles 2023 associés à cette étiquette"
  111. >#complexité</a>
  112. <a href="/david/2023/qualite/"
  113. title="Liste de tous les articles 2023 associés à cette étiquette"
  114. >#qualité</a>
  115. <a href="/david/2023/traces/"
  116. title="Liste de tous les articles 2023 associés à cette étiquette"
  117. >#traces</a>
  118. <a href="/david/#tags-2023"
  119. title="Liste de toutes les étiquettes 2023"
  120. ><svg class="icon icon-tags">
  121. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-tags"></use>
  122. </svg>
  123. tous ?</a
  124. >
  125. </p>
  126. </nav>
  127. <nav>
  128. <p class="center">
  129. <a rel="prev" href="/david/2023/01/14/" title="Publication précédente : Dépendances">← Précédent</a> •
  130. <a href="/david/2023/" title="Liste des publications récentes">↑ En 2023</a>
  131. • <a rel="next" href="/david/2023/01/16/" title="Publication suivante : Chasse">Suivant →</a>
  132. </p>
  133. </nav>
  134. </article>
  135. <hr>
  136. <footer>
  137. <p>
  138. <nobr>
  139. <a href="/david/" title="Aller à l’accueil"
  140. ><svg class="icon icon-home">
  141. <use
  142. xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-home"
  143. ></use>
  144. </svg>
  145. Accueil</a
  146. >
  147. </nobr>
  148. <nobr>
  149. <a href="/david/log/" title="Accès au flux RSS"
  150. ><svg class="icon icon-rss2">
  151. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-rss2"></use>
  152. </svg>
  153. Suivre</a
  154. >
  155. </nobr>
  156. <nobr>
  157. <a href="http://larlet.com" title="Go to my English profile" data-instant
  158. ><svg class="icon icon-user-tie">
  159. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-user-tie"></use>
  160. </svg>
  161. Pro</a
  162. >
  163. </nobr>
  164. <nobr>
  165. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"
  166. ><svg class="icon icon-mail">
  167. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-mail"></use>
  168. </svg>
  169. Email</a
  170. >
  171. </nobr>
  172. <nobr>
  173. <abbr
  174. class="nowrap"
  175. title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"
  176. ><svg class="icon icon-hammer2">
  177. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-hammer2"></use>
  178. </svg>
  179. Légal</abbr
  180. >
  181. </nobr>
  182. </p>
  183. <template id="theme-selector">
  184. <form>
  185. <fieldset>
  186. <legend><svg class="icon icon-brightness-contrast">
  187. <use xlink:href="/static/david/icons2/symbol-defs-2022-03.svg#icon-brightness-contrast"></use>
  188. </svg> Thème</legend>
  189. <label>
  190. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  191. </label>
  192. <label>
  193. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  194. </label>
  195. <label>
  196. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  197. </label>
  198. </fieldset>
  199. </form>
  200. </template>
  201. </footer>
  202. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  203. <script>
  204. function loadThemeForm(templateName) {
  205. const themeSelectorTemplate = document.querySelector(templateName)
  206. const form = themeSelectorTemplate.content.firstElementChild
  207. themeSelectorTemplate.replaceWith(form)
  208. form.addEventListener('change', (e) => {
  209. const chosenColorScheme = e.target.value
  210. localStorage.setItem('theme', chosenColorScheme)
  211. toggleTheme(chosenColorScheme)
  212. })
  213. const selectedTheme = localStorage.getItem('theme')
  214. if (selectedTheme && selectedTheme !== 'undefined') {
  215. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  216. }
  217. }
  218. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  219. window.addEventListener('load', () => {
  220. let hasDarkRules = false
  221. for (const styleSheet of Array.from(document.styleSheets)) {
  222. let mediaRules = []
  223. for (const cssRule of styleSheet.cssRules) {
  224. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  225. continue
  226. }
  227. // WARNING: Safari does not have/supports `conditionText`.
  228. if (cssRule.conditionText) {
  229. if (cssRule.conditionText !== prefersColorSchemeDark) {
  230. continue
  231. }
  232. } else {
  233. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  234. continue
  235. }
  236. }
  237. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  238. }
  239. // WARNING: do not try to insert a Rule to a styleSheet you are
  240. // currently iterating on, otherwise the browser will be stuck
  241. // in a infinite loop…
  242. for (const mediaRule of mediaRules) {
  243. styleSheet.insertRule(mediaRule.cssText)
  244. hasDarkRules = true
  245. }
  246. }
  247. if (hasDarkRules) {
  248. loadThemeForm('#theme-selector')
  249. }
  250. })
  251. </script>
  252. </body>
  253. </html>