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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  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>Parler — David Larlet</title>
  13. <meta name="description" content="Avertissement : je n’ai jamais utilisé cette application et je n’apprécie pas la nature des échanges nauséabonds qu’il semblait y avoir dessus.">
  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" data-instant-intensity="viewport-all">
  52. <article>
  53. <header>
  54. <h1>Parler</h1>
  55. </header>
  56. <nav>
  57. <p class="center">
  58. <a rel="prev" href="/david/2021/01/13/" title="Publication précédente : Long terme">← Précédent</a> •
  59. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  60. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-home"></use>
  61. </svg> Accueil</a>
  62. • <a rel="next" href="/david/2021/01/15/" title="Publication suivante : Artfevre">Suivant →</a>
  63. </p>
  64. </nav>
  65. <hr>
  66. <p><em>Avertissement&nbsp;: je n’ai jamais utilisé cette application et je n’apprécie pas la nature des échanges nauséabonds qu’il semblait y avoir dessus.</em></p>
  67. <blockquote lang="en">
  68. <p>If one were looking for evidence to demonstrate that these tech behemoths are, in fact, monopolies that engage in anti-competitive behavior in violation of antitrust laws, and will obliterate any attempt to compete with them in the marketplace, it would be difficult to imagine anything more compelling than how they just used their unconstrained power to utterly <mark>destroy a rising competitor.</mark></p>
  69. <p><cite><em><a href="https://greenwald.substack.com/p/how-silicon-valley-in-a-show-of-monopolistic">How Silicon Valley, in a Show of Monopolistic Force, Destroyed Parler</a></em> (<a href="/david/cache/2021/765e28efb1fa6aa0dc9c15166f66cdf3/">cache</a>)</cite></p>
  70. </blockquote>
  71. <p>Je n’avais pas envisagé cette histoire sous cet angle là. Et s’il s’agissait «&nbsp;juste&nbsp;» de bâillonner un concurrent, <em>business as usual</em>&#8239;? J’ai presque envie de <a href="https://fr.wikipedia.org/wiki/Rasoir_de_Hanlon">me raser</a> avec&nbsp;:</p>
  72. <blockquote>
  73. <p>Ne jamais attribuer à une quelconque éthique ce que le capitalisme suffit à expliquer.</p>
  74. </blockquote>
  75. <p><strong>Les seuls outils qui seraient autorisés à concurrencer de tels monopoles seraient forcément décentralisés.</strong> C’est bien la raison pour laquelle ces plateformes sont <em>contre</em> le Web, il ne peut en être autrement car leur survie en dépend. Est-ce que Parler utilisant <a href="https://en.wikipedia.org/wiki/Secure_Scuttlebutt">Secure Scuttlebutt</a> aurait continué à fonctionner&#8239;? (<a href="/david/blog/2017/confiance-transparence/">Pour rappel.</a>) Probablement, en tout cas le bâillon n’aurait pas été aussi simple à nouer. Espérons (presque, dans un tel contexte) que ma conclusion tienne toujours&nbsp;: un tel réseau est trop beau pour percer.</p>
  76. <blockquote>
  77. <p>On ne soulignera jamais assez que la révolution ne sert à rien si elle n’est pas inspirée par son idéal ultime. Les méthodes révolutionnaires doivent être en harmonie avec les objectifs révolutionnaires. <mark>Les moyens utilisés pour approfondir la révolution doivent correspondre à ses buts.</mark> En d’autres termes, les valeurs éthiques que la révolution infusera dans la nouvelle société doivent être disséminées par les activités révolutionnaires de la période de transition. Cette dernière peut faciliter le passage à une vie meilleure mais seulement à condition qu’elle soit construite avec les mêmes matériaux que la nouvelle vie que l’on veut construire. La révolution est le miroir des jours qui suivent&#8239;; elle est l’enfant qui annonce l’Homme de demain.</p>
  78. <p><cite><em>My Desillusionment in Russia</em>, Emma Goldman</cite></p>
  79. </blockquote>
  80. <nav>
  81. <p class="center">
  82. <a rel="prev" href="/david/2021/01/13/" title="Publication précédente : Long terme">← Précédent</a> •
  83. <a href="/david/2021/" title="Liste des publications récentes">↑ En 2021</a>
  84. • <a rel="next" href="/david/2021/01/15/" title="Publication suivante : Artfevre">Suivant →</a>
  85. </p>
  86. </nav>
  87. </article>
  88. <hr>
  89. <footer>
  90. <p>
  91. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  92. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-home"></use>
  93. </svg> Accueil</a> •
  94. <a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2">
  95. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-rss2"></use>
  96. </svg> RSS</a> •
  97. <a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie">
  98. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-user-tie"></use>
  99. </svg> Pro</a> •
  100. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail">
  101. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-mail"></use>
  102. </svg> Email</a> •
  103. <abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2">
  104. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-hammer2"></use>
  105. </svg> Légal</abbr>
  106. </p>
  107. <template id="theme-selector">
  108. <form>
  109. <fieldset>
  110. <legend><svg class="icon icon-brightness-contrast">
  111. <use xlink:href="/static/david/icons2/symbol-defs.svg#icon-brightness-contrast"></use>
  112. </svg> Thème</legend>
  113. <label>
  114. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  115. </label>
  116. <label>
  117. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  118. </label>
  119. <label>
  120. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  121. </label>
  122. </fieldset>
  123. </form>
  124. </template>
  125. </footer>
  126. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  127. <script>
  128. function loadThemeForm(templateName) {
  129. const themeSelectorTemplate = document.querySelector(templateName)
  130. const form = themeSelectorTemplate.content.firstElementChild
  131. themeSelectorTemplate.replaceWith(form)
  132. form.addEventListener('change', (e) => {
  133. const chosenColorScheme = e.target.value
  134. localStorage.setItem('theme', chosenColorScheme)
  135. toggleTheme(chosenColorScheme)
  136. })
  137. const selectedTheme = localStorage.getItem('theme')
  138. if (selectedTheme && selectedTheme !== 'undefined') {
  139. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  140. }
  141. }
  142. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  143. window.addEventListener('load', () => {
  144. let hasDarkRules = false
  145. for (const styleSheet of Array.from(document.styleSheets)) {
  146. let mediaRules = []
  147. for (const cssRule of styleSheet.cssRules) {
  148. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  149. continue
  150. }
  151. // WARNING: Safari does not have/supports `conditionText`.
  152. if (cssRule.conditionText) {
  153. if (cssRule.conditionText !== prefersColorSchemeDark) {
  154. continue
  155. }
  156. } else {
  157. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  158. continue
  159. }
  160. }
  161. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  162. }
  163. // WARNING: do not try to insert a Rule to a styleSheet you are
  164. // currently iterating on, otherwise the browser will be stuck
  165. // in a infinite loop…
  166. for (const mediaRule of mediaRules) {
  167. styleSheet.insertRule(mediaRule.cssText)
  168. hasDarkRules = true
  169. }
  170. }
  171. if (hasDarkRules) {
  172. loadThemeForm('#theme-selector')
  173. }
  174. })
  175. </script>
  176. </body>
  177. </html>