<!doctype html><!-- This is a valid HTML5 document. --> | |||||
<!-- Screen readers, SEO, extensions and so on. --> | |||||
<html lang="fr"> | |||||
<!-- Has to be within the first 1024 bytes, hence before the `title` element | |||||
See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset --> | |||||
<meta charset="utf-8"> | |||||
<!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 --> | |||||
<!-- The viewport meta is quite crowded and we are responsible for that. | |||||
See: https://codepen.io/tigt/post/meta-viewport-for-2015 --> | |||||
<meta name="viewport" content="width=device-width,initial-scale=1"> | |||||
<!-- Required to make a valid HTML5 document. --> | |||||
<title>an "archives first" approach to mailing lists (archive) — David Larlet</title> | |||||
<meta name="description" content="Publication mise en cache pour en conserver une trace."> | |||||
<!-- That good ol' feed, subscribe :). --> | |||||
<link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/"> | |||||
<!-- Generated from https://realfavicongenerator.net/ such a mess. --> | |||||
<link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png"> | |||||
<link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png"> | |||||
<link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png"> | |||||
<link rel="manifest" href="/static/david/icons2/site.webmanifest"> | |||||
<link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c"> | |||||
<link rel="shortcut icon" href="/static/david/icons2/favicon.ico"> | |||||
<meta name="msapplication-TileColor" content="#f7f7f7"> | |||||
<meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml"> | |||||
<meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)"> | |||||
<meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)"> | |||||
<!-- Is that even respected? Retrospectively? What a shAItshow… | |||||
https://neil-clarke.com/block-the-bots-that-feed-ai-models-by-scraping-your-website/ --> | |||||
<meta name="robots" content="noai, noimageai"> | |||||
<!-- Documented, feel free to shoot an email. --> | |||||
<link rel="stylesheet" href="/static/david/css/style_2021-01-20.css"> | |||||
<!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. --> | |||||
<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> | |||||
<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> | |||||
<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> | |||||
<link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin> | |||||
<link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin> | |||||
<link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin> | |||||
<script> | |||||
function toggleTheme(themeName) { | |||||
document.documentElement.classList.toggle( | |||||
'forced-dark', | |||||
themeName === 'dark' | |||||
) | |||||
document.documentElement.classList.toggle( | |||||
'forced-light', | |||||
themeName === 'light' | |||||
) | |||||
} | |||||
const selectedTheme = localStorage.getItem('theme') | |||||
if (selectedTheme !== 'undefined') { | |||||
toggleTheme(selectedTheme) | |||||
} | |||||
</script> | |||||
<meta name="robots" content="noindex, nofollow"> | |||||
<meta content="origin-when-cross-origin" name="referrer"> | |||||
<!-- Canonical URL for SEO purposes --> | |||||
<link rel="canonical" href="https://public-inbox.org/README.html"> | |||||
<body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all"> | |||||
<article> | |||||
<header> | |||||
<h1>an "archives first" approach to mailing lists</h1> | |||||
</header> | |||||
<nav> | |||||
<p class="center"> | |||||
<a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use> | |||||
</svg> Accueil</a> • | |||||
<a href="https://public-inbox.org/README.html" title="Lien vers le contenu original">Source originale</a> | |||||
<br> | |||||
Mis en cache le 2024-01-19 | |||||
</p> | |||||
</nav> | |||||
<hr> | |||||
<pre>public-inbox - an "archives first" approach to mailing lists | |||||
------------------------------------------------------------ | |||||
public-inbox implements the sharing of an email inbox via git to | |||||
complement or replace traditional mailing lists. Readers may | |||||
read via NNTP, IMAP, POP3, Atom feeds or HTML archives. | |||||
public-inbox spawned around three main ideas: | |||||
* Publicly accessible and archived communication is essential to | |||||
Free Software development. | |||||
* Contributing to Free Software projects should not require the | |||||
use of non-Free services or software. | |||||
* Graphical user interfaces should not be required for text-based | |||||
communication. Users may have broken graphics drivers, limited | |||||
eyesight, or be unable to afford modern hardware. | |||||
public-inbox aims to be easy-to-deploy and manage; encouraging projects | |||||
to run their own instances with minimal overhead. | |||||
Implementation | |||||
-------------- | |||||
public-inbox stores mail in git repositories as documented | |||||
in <a href="https://public-inbox.org/public-inbox-v2-format.txt">https://public-inbox.org/public-inbox-v2-format.txt</a> and | |||||
<a href="https://public-inbox.org/public-inbox-v1-format.txt">https://public-inbox.org/public-inbox-v1-format.txt</a> | |||||
By storing (and optionally) exposing an inbox via git, it is | |||||
fast and efficient to host and mirror public-inboxes. | |||||
Traditional mailing lists use the "push" model. For readers, | |||||
that requires commitment to subscribe and effort to unsubscribe. | |||||
New readers may also have difficulty following existing | |||||
discussions if archives do not expose Message-ID and References | |||||
headers. List server admins are also burdened with delivery | |||||
failures. | |||||
public-inbox uses the "pull" model. Casual readers may | |||||
follow the list via NNTP, IMAP, POP3, Atom feed or HTML archives. | |||||
If a reader loses interest, they simply stop following. | |||||
Since we use git, mirrors are easy-to-setup, and lists are | |||||
easy-to-relocate to different mail addresses without losing | |||||
or splitting archives. | |||||
_Anybody_ may also setup a delivery-only mailing list server to | |||||
replay a public-inbox git archive to subscribers via SMTP. | |||||
Features | |||||
-------- | |||||
* anybody may participate via plain-text email | |||||
* stores email in git, readers may have a complete archive of the inbox | |||||
* Atom feed, IMAP, NNTP, POP3 allows casual readers to follow via local tools | |||||
* uses only well-documented and easy-to-implement data formats | |||||
Try it out now, see <a href="https://try.public-inbox.org/">https://try.public-inbox.org/</a> | |||||
Requirements for reading: | |||||
* any software capable of IMAP, NNTP, POP3 or following Atom feeds | |||||
Any basic web browser will do for the HTML archives. | |||||
We primarily develop on w3m to maximize accessibility. | |||||
Requirements (participant) | |||||
-------------------------- | |||||
* any MUA which may send text-only emails ("git send-email" works!) | |||||
Users are strongly encouraged to use the "reply-all" feature of | |||||
their mailers to reduce the impact of a public-inbox as a | |||||
single point of failure. | |||||
* The HTTP web interface exposes mboxrd files, and NNTP clients often | |||||
feature reply-by-email functionality | |||||
* participants do not need to install public-inbox, only server admins | |||||
Requirements (server) | |||||
--------------------- | |||||
See <a href="https://public-inbox.org/INSTALL">https://public-inbox.org/INSTALL</a> | |||||
Hacking | |||||
------- | |||||
AGPL source code is available via git: | |||||
git clone <a href="https://public-inbox.org/public-inbox.git">https://public-inbox.org/public-inbox.git</a> | |||||
git clone <a href="https://repo.or.cz/public-inbox.git">https://repo.or.cz/public-inbox.git</a> | |||||
torsocks git clone <a href="http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/public-inbox.git">http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/public-inbox.git</a> | |||||
torsocks git clone <a href="http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/public-inbox">http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/public-inbox</a> | |||||
See below for contact info. | |||||
Contact | |||||
------- | |||||
We are happy to see feedback of all types via plain-text email. | |||||
public-inbox discussion is self-hosting on public-inbox.org | |||||
Please send comments, user/developer discussion, patches, bug reports, | |||||
and pull requests to our public-inbox address at: | |||||
meta@public-inbox.org | |||||
Please Cc: all recipients when replying as we do not require | |||||
subscription. This also makes it easier to rope in folks of | |||||
tangentially related projects we depend on (e.g. git developers | |||||
on git@vger.kernel.org). | |||||
The archives are readable via IMAP, NNTP or HTTP: | |||||
<a href="nntps://news.public-inbox.org/inbox.comp.mail.public-inbox.meta">nntps://news.public-inbox.org/inbox.comp.mail.public-inbox.meta</a> | |||||
imaps://;AUTH=ANONYMOUS@public-inbox.org/inbox.comp.mail.public-inbox.meta.0 | |||||
<a href="https://public-inbox.org/meta/">https://public-inbox.org/meta/</a> | |||||
AUTH=ANONYMOUS is recommended for IMAP, but any username + password works | |||||
And as Tor hidden services: | |||||
<a href="http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/">http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/</a> | |||||
<a href="nntp://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/inbox.comp.mail.public-inbox.meta">nntp://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/inbox.comp.mail.public-inbox.meta</a> | |||||
imap://;AUTH=ANONYMOUS@4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/inbox.comp.mail.public-inbox.meta.0 | |||||
You may also clone all messages via git: | |||||
git clone --mirror <a href="https://public-inbox.org/meta/">https://public-inbox.org/meta/</a> | |||||
torsocks git clone --mirror <a href="http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/">http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/</a> | |||||
POP3 access instructions are at: | |||||
<a href="https://public-inbox.org/meta/_/text/help/#pop3">https://public-inbox.org/meta/_/text/help/#pop3</a> | |||||
Anti-Spam | |||||
--------- | |||||
The maintainer of public-inbox has found SpamAssassin a good tool for | |||||
filtering his personal mail, and it will be the default spam filtering | |||||
tool in public-inbox. | |||||
See <a href="https://public-inbox.org/dc-dlvr-spam-flow.html">https://public-inbox.org/dc-dlvr-spam-flow.html</a> for more info. | |||||
Content Filtering | |||||
----------------- | |||||
To discourage phishing, trackers, exploits and other nuisances, | |||||
only plain-text emails are allowed and HTML is rejected by default. | |||||
This improves accessibility, and saves bandwidth and storage | |||||
as mail is archived forever. | |||||
As of the 2010s, successful online social networks and forums are the | |||||
ones which heavily restrict users formatting options; so public-inbox | |||||
aims to preserve the focus on content, and not presentation. | |||||
Copyright | |||||
--------- | |||||
Copyright all contributors <meta@public-inbox.org> | |||||
License: AGPL-3.0+ <<a href="https://www.gnu.org/licenses/agpl-3.0.txt">https://www.gnu.org/licenses/agpl-3.0.txt</a>> | |||||
This program is free software: you can redistribute it and/or modify | |||||
it under the terms of the GNU Affero General Public License as published by | |||||
the Free Software Foundation, either version 3 of the License, or | |||||
(at your option) any later version. | |||||
This program is distributed in the hope that it will be useful, | |||||
but WITHOUT ANY WARRANTY; without even the implied warranty of | |||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||||
GNU Affero General Public License for more details. | |||||
You should have received a copy of the GNU Affero General Public License | |||||
along with this program. If not, see <<a href="https://www.gnu.org/licenses/">https://www.gnu.org/licenses/</a>>. | |||||
Additional permission under GNU GPL version 3 section 7: | |||||
If you modify this program, or any covered work, by linking or | |||||
combining it with the OpenSSL project's OpenSSL library (or a | |||||
modified version of that library), containing parts covered by the | |||||
terms of the OpenSSL or SSLeay licenses, the copyright holder(s) | |||||
grants you additional permission to convey the resulting work. | |||||
Corresponding Source for a non-source form of such a combination | |||||
shall include the source code for the parts of OpenSSL used as well | |||||
as that of the covered work. | |||||
</pre> | |||||
</article> | |||||
<hr> | |||||
<footer> | |||||
<p> | |||||
<a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use> | |||||
</svg> Accueil</a> • | |||||
<a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-rss2"></use> | |||||
</svg> Suivre</a> • | |||||
<a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-user-tie"></use> | |||||
</svg> Pro</a> • | |||||
<a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-mail"></use> | |||||
</svg> Email</a> • | |||||
<abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-hammer2"></use> | |||||
</svg> Légal</abbr> | |||||
</p> | |||||
<template id="theme-selector"> | |||||
<form> | |||||
<fieldset> | |||||
<legend><svg class="icon icon-brightness-contrast"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-brightness-contrast"></use> | |||||
</svg> Thème</legend> | |||||
<label> | |||||
<input type="radio" value="auto" name="chosen-color-scheme" checked> Auto | |||||
</label> | |||||
<label> | |||||
<input type="radio" value="dark" name="chosen-color-scheme"> Foncé | |||||
</label> | |||||
<label> | |||||
<input type="radio" value="light" name="chosen-color-scheme"> Clair | |||||
</label> | |||||
</fieldset> | |||||
</form> | |||||
</template> | |||||
</footer> | |||||
<script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script> | |||||
<script> | |||||
function loadThemeForm(templateName) { | |||||
const themeSelectorTemplate = document.querySelector(templateName) | |||||
const form = themeSelectorTemplate.content.firstElementChild | |||||
themeSelectorTemplate.replaceWith(form) | |||||
form.addEventListener('change', (e) => { | |||||
const chosenColorScheme = e.target.value | |||||
localStorage.setItem('theme', chosenColorScheme) | |||||
toggleTheme(chosenColorScheme) | |||||
}) | |||||
const selectedTheme = localStorage.getItem('theme') | |||||
if (selectedTheme && selectedTheme !== 'undefined') { | |||||
form.querySelector(`[value="${selectedTheme}"]`).checked = true | |||||
} | |||||
} | |||||
const prefersColorSchemeDark = '(prefers-color-scheme: dark)' | |||||
window.addEventListener('load', () => { | |||||
let hasDarkRules = false | |||||
for (const styleSheet of Array.from(document.styleSheets)) { | |||||
let mediaRules = [] | |||||
for (const cssRule of styleSheet.cssRules) { | |||||
if (cssRule.type !== CSSRule.MEDIA_RULE) { | |||||
continue | |||||
} | |||||
// WARNING: Safari does not have/supports `conditionText`. | |||||
if (cssRule.conditionText) { | |||||
if (cssRule.conditionText !== prefersColorSchemeDark) { | |||||
continue | |||||
} | |||||
} else { | |||||
if (cssRule.cssText.startsWith(prefersColorSchemeDark)) { | |||||
continue | |||||
} | |||||
} | |||||
mediaRules = mediaRules.concat(Array.from(cssRule.cssRules)) | |||||
} | |||||
// WARNING: do not try to insert a Rule to a styleSheet you are | |||||
// currently iterating on, otherwise the browser will be stuck | |||||
// in a infinite loop… | |||||
for (const mediaRule of mediaRules) { | |||||
styleSheet.insertRule(mediaRule.cssText) | |||||
hasDarkRules = true | |||||
} | |||||
} | |||||
if (hasDarkRules) { | |||||
loadThemeForm('#theme-selector') | |||||
} | |||||
}) | |||||
</script> | |||||
</body> | |||||
</html> |
title: an "archives first" approach to mailing lists | |||||
url: https://public-inbox.org/README.html | |||||
hash_url: 30b40ff8034212e070dc7daf2b9406e9 | |||||
archive_date: 2024-01-19 | |||||
<pre>public-inbox - an "archives first" approach to mailing lists | |||||
------------------------------------------------------------ | |||||
public-inbox implements the sharing of an email inbox via git to | |||||
complement or replace traditional mailing lists. Readers may | |||||
read via NNTP, IMAP, POP3, Atom feeds or HTML archives. | |||||
public-inbox spawned around three main ideas: | |||||
* Publicly accessible and archived communication is essential to | |||||
Free Software development. | |||||
* Contributing to Free Software projects should not require the | |||||
use of non-Free services or software. | |||||
* Graphical user interfaces should not be required for text-based | |||||
communication. Users may have broken graphics drivers, limited | |||||
eyesight, or be unable to afford modern hardware. | |||||
public-inbox aims to be easy-to-deploy and manage; encouraging projects | |||||
to run their own instances with minimal overhead. | |||||
Implementation | |||||
-------------- | |||||
public-inbox stores mail in git repositories as documented | |||||
in <a href="https://public-inbox.org/public-inbox-v2-format.txt">https://public-inbox.org/public-inbox-v2-format.txt</a> and | |||||
<a href="https://public-inbox.org/public-inbox-v1-format.txt">https://public-inbox.org/public-inbox-v1-format.txt</a> | |||||
By storing (and optionally) exposing an inbox via git, it is | |||||
fast and efficient to host and mirror public-inboxes. | |||||
Traditional mailing lists use the "push" model. For readers, | |||||
that requires commitment to subscribe and effort to unsubscribe. | |||||
New readers may also have difficulty following existing | |||||
discussions if archives do not expose Message-ID and References | |||||
headers. List server admins are also burdened with delivery | |||||
failures. | |||||
public-inbox uses the "pull" model. Casual readers may | |||||
follow the list via NNTP, IMAP, POP3, Atom feed or HTML archives. | |||||
If a reader loses interest, they simply stop following. | |||||
Since we use git, mirrors are easy-to-setup, and lists are | |||||
easy-to-relocate to different mail addresses without losing | |||||
or splitting archives. | |||||
_Anybody_ may also setup a delivery-only mailing list server to | |||||
replay a public-inbox git archive to subscribers via SMTP. | |||||
Features | |||||
-------- | |||||
* anybody may participate via plain-text email | |||||
* stores email in git, readers may have a complete archive of the inbox | |||||
* Atom feed, IMAP, NNTP, POP3 allows casual readers to follow via local tools | |||||
* uses only well-documented and easy-to-implement data formats | |||||
Try it out now, see <a href="https://try.public-inbox.org/">https://try.public-inbox.org/</a> | |||||
Requirements for reading: | |||||
* any software capable of IMAP, NNTP, POP3 or following Atom feeds | |||||
Any basic web browser will do for the HTML archives. | |||||
We primarily develop on w3m to maximize accessibility. | |||||
Requirements (participant) | |||||
-------------------------- | |||||
* any MUA which may send text-only emails ("git send-email" works!) | |||||
Users are strongly encouraged to use the "reply-all" feature of | |||||
their mailers to reduce the impact of a public-inbox as a | |||||
single point of failure. | |||||
* The HTTP web interface exposes mboxrd files, and NNTP clients often | |||||
feature reply-by-email functionality | |||||
* participants do not need to install public-inbox, only server admins | |||||
Requirements (server) | |||||
--------------------- | |||||
See <a href="https://public-inbox.org/INSTALL">https://public-inbox.org/INSTALL</a> | |||||
Hacking | |||||
------- | |||||
AGPL source code is available via git: | |||||
git clone <a href="https://public-inbox.org/public-inbox.git">https://public-inbox.org/public-inbox.git</a> | |||||
git clone <a href="https://repo.or.cz/public-inbox.git">https://repo.or.cz/public-inbox.git</a> | |||||
torsocks git clone <a href="http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/public-inbox.git">http://7fh6tueqddpjyxjmgtdiueylzoqt6pt7hec3pukyptlmohoowvhde4yd.onion/public-inbox.git</a> | |||||
torsocks git clone <a href="http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/public-inbox">http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/public-inbox</a> | |||||
See below for contact info. | |||||
Contact | |||||
------- | |||||
We are happy to see feedback of all types via plain-text email. | |||||
public-inbox discussion is self-hosting on public-inbox.org | |||||
Please send comments, user/developer discussion, patches, bug reports, | |||||
and pull requests to our public-inbox address at: | |||||
meta@public-inbox.org | |||||
Please Cc: all recipients when replying as we do not require | |||||
subscription. This also makes it easier to rope in folks of | |||||
tangentially related projects we depend on (e.g. git developers | |||||
on git@vger.kernel.org). | |||||
The archives are readable via IMAP, NNTP or HTTP: | |||||
<a href="nntps://news.public-inbox.org/inbox.comp.mail.public-inbox.meta">nntps://news.public-inbox.org/inbox.comp.mail.public-inbox.meta</a> | |||||
imaps://;AUTH=ANONYMOUS@public-inbox.org/inbox.comp.mail.public-inbox.meta.0 | |||||
<a href="https://public-inbox.org/meta/">https://public-inbox.org/meta/</a> | |||||
AUTH=ANONYMOUS is recommended for IMAP, but any username + password works | |||||
And as Tor hidden services: | |||||
<a href="http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/">http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/</a> | |||||
<a href="nntp://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/inbox.comp.mail.public-inbox.meta">nntp://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/inbox.comp.mail.public-inbox.meta</a> | |||||
imap://;AUTH=ANONYMOUS@4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/inbox.comp.mail.public-inbox.meta.0 | |||||
You may also clone all messages via git: | |||||
git clone --mirror <a href="https://public-inbox.org/meta/">https://public-inbox.org/meta/</a> | |||||
torsocks git clone --mirror <a href="http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/">http://4uok3hntl7oi7b4uf4rtfwefqeexfzil2w6kgk2jn5z2f764irre7byd.onion/meta/</a> | |||||
POP3 access instructions are at: | |||||
<a href="https://public-inbox.org/meta/_/text/help/#pop3">https://public-inbox.org/meta/_/text/help/#pop3</a> | |||||
Anti-Spam | |||||
--------- | |||||
The maintainer of public-inbox has found SpamAssassin a good tool for | |||||
filtering his personal mail, and it will be the default spam filtering | |||||
tool in public-inbox. | |||||
See <a href="https://public-inbox.org/dc-dlvr-spam-flow.html">https://public-inbox.org/dc-dlvr-spam-flow.html</a> for more info. | |||||
Content Filtering | |||||
----------------- | |||||
To discourage phishing, trackers, exploits and other nuisances, | |||||
only plain-text emails are allowed and HTML is rejected by default. | |||||
This improves accessibility, and saves bandwidth and storage | |||||
as mail is archived forever. | |||||
As of the 2010s, successful online social networks and forums are the | |||||
ones which heavily restrict users formatting options; so public-inbox | |||||
aims to preserve the focus on content, and not presentation. | |||||
Copyright | |||||
--------- | |||||
Copyright all contributors <meta@public-inbox.org> | |||||
License: AGPL-3.0+ <<a href="https://www.gnu.org/licenses/agpl-3.0.txt">https://www.gnu.org/licenses/agpl-3.0.txt</a>> | |||||
This program is free software: you can redistribute it and/or modify | |||||
it under the terms of the GNU Affero General Public License as published by | |||||
the Free Software Foundation, either version 3 of the License, or | |||||
(at your option) any later version. | |||||
This program is distributed in the hope that it will be useful, | |||||
but WITHOUT ANY WARRANTY; without even the implied warranty of | |||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||||
GNU Affero General Public License for more details. | |||||
You should have received a copy of the GNU Affero General Public License | |||||
along with this program. If not, see <<a href="https://www.gnu.org/licenses/">https://www.gnu.org/licenses/</a>>. | |||||
Additional permission under GNU GPL version 3 section 7: | |||||
If you modify this program, or any covered work, by linking or | |||||
combining it with the OpenSSL project's OpenSSL library (or a | |||||
modified version of that library), containing parts covered by the | |||||
terms of the OpenSSL or SSLeay licenses, the copyright holder(s) | |||||
grants you additional permission to convey the resulting work. | |||||
Corresponding Source for a non-source form of such a combination | |||||
shall include the source code for the parts of OpenSSL used as well | |||||
as that of the covered work. | |||||
</pre> |
<!doctype html><!-- This is a valid HTML5 document. --> | |||||
<!-- Screen readers, SEO, extensions and so on. --> | |||||
<html lang="fr"> | |||||
<!-- Has to be within the first 1024 bytes, hence before the `title` element | |||||
See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset --> | |||||
<meta charset="utf-8"> | |||||
<!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 --> | |||||
<!-- The viewport meta is quite crowded and we are responsible for that. | |||||
See: https://codepen.io/tigt/post/meta-viewport-for-2015 --> | |||||
<meta name="viewport" content="width=device-width,initial-scale=1"> | |||||
<!-- Required to make a valid HTML5 document. --> | |||||
<title>Where have all the flowers gone? (archive) — David Larlet</title> | |||||
<meta name="description" content="Publication mise en cache pour en conserver une trace."> | |||||
<!-- That good ol' feed, subscribe :). --> | |||||
<link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/"> | |||||
<!-- Generated from https://realfavicongenerator.net/ such a mess. --> | |||||
<link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png"> | |||||
<link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png"> | |||||
<link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png"> | |||||
<link rel="manifest" href="/static/david/icons2/site.webmanifest"> | |||||
<link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c"> | |||||
<link rel="shortcut icon" href="/static/david/icons2/favicon.ico"> | |||||
<meta name="msapplication-TileColor" content="#f7f7f7"> | |||||
<meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml"> | |||||
<meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)"> | |||||
<meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)"> | |||||
<!-- Is that even respected? Retrospectively? What a shAItshow… | |||||
https://neil-clarke.com/block-the-bots-that-feed-ai-models-by-scraping-your-website/ --> | |||||
<meta name="robots" content="noai, noimageai"> | |||||
<!-- Documented, feel free to shoot an email. --> | |||||
<link rel="stylesheet" href="/static/david/css/style_2021-01-20.css"> | |||||
<!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. --> | |||||
<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> | |||||
<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> | |||||
<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> | |||||
<link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin> | |||||
<link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin> | |||||
<link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin> | |||||
<script> | |||||
function toggleTheme(themeName) { | |||||
document.documentElement.classList.toggle( | |||||
'forced-dark', | |||||
themeName === 'dark' | |||||
) | |||||
document.documentElement.classList.toggle( | |||||
'forced-light', | |||||
themeName === 'light' | |||||
) | |||||
} | |||||
const selectedTheme = localStorage.getItem('theme') | |||||
if (selectedTheme !== 'undefined') { | |||||
toggleTheme(selectedTheme) | |||||
} | |||||
</script> | |||||
<meta name="robots" content="noindex, nofollow"> | |||||
<meta content="origin-when-cross-origin" name="referrer"> | |||||
<!-- Canonical URL for SEO purposes --> | |||||
<link rel="canonical" href="https://daverupert.com/2024/01/where-have-all-the-websites-gone/"> | |||||
<body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all"> | |||||
<article> | |||||
<header> | |||||
<h1>Where have all the flowers gone?</h1> | |||||
</header> | |||||
<nav> | |||||
<p class="center"> | |||||
<a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use> | |||||
</svg> Accueil</a> • | |||||
<a href="https://daverupert.com/2024/01/where-have-all-the-websites-gone/" title="Lien vers le contenu original">Source originale</a> | |||||
<br> | |||||
Mis en cache le 2024-01-19 | |||||
</p> | |||||
</nav> | |||||
<hr> | |||||
<p>A post from Jason Velazquez called “<a href="https://www.fromjason.xyz/p/notebook/where-have-all-the-websites-gone/">Where have all the websites gone?</a>” crossed my socials. It’s a good lament about the dearth of interesting content on the internet and how we’re stuck in the same boring content silos.</p> | |||||
<p>The question reminded me of a song by Pete Seeger called “<em>Where have all the flowers gone?</em>” In the song Pete wonders aloud about the flowers now missing from the field…</p> | |||||
<div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code data-lang="html">[Verse 1] | |||||
Where have all the flowers gone? | |||||
Long time passing | |||||
Where have all the flowers gone? | |||||
Long time ago | |||||
Where have all the flowers gone? | |||||
The girls have picked them, every one | |||||
Oh, when will you ever learn? | |||||
Oh, when will you ever learn? | |||||
</code></pre></div></div> | |||||
<p>We find out that the girls have picked all the flowers. All of them. That’s a bit excessive. Why? The second verse explores the young girls’ situation…</p> | |||||
<div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code data-lang="html">[Verse 2] | |||||
Where have all the young girls gone? | |||||
Long time passing | |||||
Where have all the young girls gone? | |||||
Long time ago | |||||
Where have all the young girls gone? | |||||
They've taken husbands, every one | |||||
Oh, when will you ever learn? | |||||
Oh, when will you ever learn? | |||||
</code></pre></div></div> | |||||
<p>The girls got married, good for them! That’s a natural part of growing up. But what of the husbands and how are they connected to the missing flowers? Did they use all the flowers for their weddings? The third verse answers this question.</p> | |||||
<div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code data-lang="html">[Verse 3] | |||||
Where have all the young men gone? | |||||
Long time passing | |||||
Where have all the young men gone? | |||||
Long time ago | |||||
Where have all the young men gone? | |||||
They're all in uniform | |||||
Oh, when will you ever learn? | |||||
Oh, when will you ever learn? | |||||
</code></pre></div></div> | |||||
<p>The young men, dressed in uniform, went off to war. The flowers were, presumably, for their funerals. Pete sure knew how to tell a story.</p> | |||||
<p>So where have all the websites gone? Well, the people who make them have all gone to war for the capitalist machine. They grew up and got jobs. A natural part of growing up. Silos came and plucked their voices. Invasive memes and short form content grew in their place. Hustle overtook leisure. Harassment overtook openness. Influence overtook creativity. An economy of interestingness replaced by one of followers, likes, and engagement metrics.</p> | |||||
<p>One important thing to note; websites aren’t extinct. In fact, you’re on one now! Uploading your own words is ancient technology but still works.</p> | |||||
<p>I loved Jason’s point about the curators and it illuminated something I don’t think I fully understood before. Curators and aggregators are integral to the ecosystem. If we all create, steal, and regurgitate the same content then we only reinforce our own echo chamber. Aggregators bridge subcultures in a world of content bubbles and subreddits. They share curios from the web you may have missed, subverting the FOMO-based dopamine addiction machine using RSS. They find beauty in the mundane and surface wisdom from obscure writings. That is valuable, worth more than gold.</p> | |||||
<p><a href="https://robinrendle.com/notes/i-am-a-poem-i-am-not-software/">We are poems, not software</a> and in need of a reforestation of our curators. To paraphrase Mr. Rogers in these dire times, “Look for the aggregators…”</p> | |||||
</article> | |||||
<hr> | |||||
<footer> | |||||
<p> | |||||
<a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use> | |||||
</svg> Accueil</a> • | |||||
<a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-rss2"></use> | |||||
</svg> Suivre</a> • | |||||
<a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-user-tie"></use> | |||||
</svg> Pro</a> • | |||||
<a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-mail"></use> | |||||
</svg> Email</a> • | |||||
<abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-hammer2"></use> | |||||
</svg> Légal</abbr> | |||||
</p> | |||||
<template id="theme-selector"> | |||||
<form> | |||||
<fieldset> | |||||
<legend><svg class="icon icon-brightness-contrast"> | |||||
<use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-brightness-contrast"></use> | |||||
</svg> Thème</legend> | |||||
<label> | |||||
<input type="radio" value="auto" name="chosen-color-scheme" checked> Auto | |||||
</label> | |||||
<label> | |||||
<input type="radio" value="dark" name="chosen-color-scheme"> Foncé | |||||
</label> | |||||
<label> | |||||
<input type="radio" value="light" name="chosen-color-scheme"> Clair | |||||
</label> | |||||
</fieldset> | |||||
</form> | |||||
</template> | |||||
</footer> | |||||
<script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script> | |||||
<script> | |||||
function loadThemeForm(templateName) { | |||||
const themeSelectorTemplate = document.querySelector(templateName) | |||||
const form = themeSelectorTemplate.content.firstElementChild | |||||
themeSelectorTemplate.replaceWith(form) | |||||
form.addEventListener('change', (e) => { | |||||
const chosenColorScheme = e.target.value | |||||
localStorage.setItem('theme', chosenColorScheme) | |||||
toggleTheme(chosenColorScheme) | |||||
}) | |||||
const selectedTheme = localStorage.getItem('theme') | |||||
if (selectedTheme && selectedTheme !== 'undefined') { | |||||
form.querySelector(`[value="${selectedTheme}"]`).checked = true | |||||
} | |||||
} | |||||
const prefersColorSchemeDark = '(prefers-color-scheme: dark)' | |||||
window.addEventListener('load', () => { | |||||
let hasDarkRules = false | |||||
for (const styleSheet of Array.from(document.styleSheets)) { | |||||
let mediaRules = [] | |||||
for (const cssRule of styleSheet.cssRules) { | |||||
if (cssRule.type !== CSSRule.MEDIA_RULE) { | |||||
continue | |||||
} | |||||
// WARNING: Safari does not have/supports `conditionText`. | |||||
if (cssRule.conditionText) { | |||||
if (cssRule.conditionText !== prefersColorSchemeDark) { | |||||
continue | |||||
} | |||||
} else { | |||||
if (cssRule.cssText.startsWith(prefersColorSchemeDark)) { | |||||
continue | |||||
} | |||||
} | |||||
mediaRules = mediaRules.concat(Array.from(cssRule.cssRules)) | |||||
} | |||||
// WARNING: do not try to insert a Rule to a styleSheet you are | |||||
// currently iterating on, otherwise the browser will be stuck | |||||
// in a infinite loop… | |||||
for (const mediaRule of mediaRules) { | |||||
styleSheet.insertRule(mediaRule.cssText) | |||||
hasDarkRules = true | |||||
} | |||||
} | |||||
if (hasDarkRules) { | |||||
loadThemeForm('#theme-selector') | |||||
} | |||||
}) | |||||
</script> | |||||
</body> | |||||
</html> |
title: Where have all the flowers gone? | |||||
url: https://daverupert.com/2024/01/where-have-all-the-websites-gone/ | |||||
hash_url: 7136e0810bfa42c4a9ca798a55cd2d53 | |||||
archive_date: 2024-01-19 | |||||
<p>A post from Jason Velazquez called “<a href="https://www.fromjason.xyz/p/notebook/where-have-all-the-websites-gone/">Where have all the websites gone?</a>” crossed my socials. It’s a good lament about the dearth of interesting content on the internet and how we’re stuck in the same boring content silos.</p> | |||||
<p>The question reminded me of a song by Pete Seeger called “<em>Where have all the flowers gone?</em>” In the song Pete wonders aloud about the flowers now missing from the field…</p> | |||||
<div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code data-lang="html">[Verse 1] | |||||
Where have all the flowers gone? | |||||
Long time passing | |||||
Where have all the flowers gone? | |||||
Long time ago | |||||
Where have all the flowers gone? | |||||
The girls have picked them, every one | |||||
Oh, when will you ever learn? | |||||
Oh, when will you ever learn? | |||||
</code></pre></div></div> | |||||
<p>We find out that the girls have picked all the flowers. All of them. That’s a bit excessive. Why? The second verse explores the young girls’ situation…</p> | |||||
<div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code data-lang="html">[Verse 2] | |||||
Where have all the young girls gone? | |||||
Long time passing | |||||
Where have all the young girls gone? | |||||
Long time ago | |||||
Where have all the young girls gone? | |||||
They've taken husbands, every one | |||||
Oh, when will you ever learn? | |||||
Oh, when will you ever learn? | |||||
</code></pre></div></div> | |||||
<p>The girls got married, good for them! That’s a natural part of growing up. But what of the husbands and how are they connected to the missing flowers? Did they use all the flowers for their weddings? The third verse answers this question.</p> | |||||
<div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code data-lang="html">[Verse 3] | |||||
Where have all the young men gone? | |||||
Long time passing | |||||
Where have all the young men gone? | |||||
Long time ago | |||||
Where have all the young men gone? | |||||
They're all in uniform | |||||
Oh, when will you ever learn? | |||||
Oh, when will you ever learn? | |||||
</code></pre></div></div> | |||||
<p>The young men, dressed in uniform, went off to war. The flowers were, presumably, for their funerals. Pete sure knew how to tell a story.</p> | |||||
<p>So where have all the websites gone? Well, the people who make them have all gone to war for the capitalist machine. They grew up and got jobs. A natural part of growing up. Silos came and plucked their voices. Invasive memes and short form content grew in their place. Hustle overtook leisure. Harassment overtook openness. Influence overtook creativity. An economy of interestingness replaced by one of followers, likes, and engagement metrics.</p> | |||||
<p>One important thing to note; websites aren’t extinct. In fact, you’re on one now! Uploading your own words is ancient technology but still works.</p> | |||||
<p>I loved Jason’s point about the curators and it illuminated something I don’t think I fully understood before. Curators and aggregators are integral to the ecosystem. If we all create, steal, and regurgitate the same content then we only reinforce our own echo chamber. Aggregators bridge subcultures in a world of content bubbles and subreddits. They share curios from the web you may have missed, subverting the FOMO-based dopamine addiction machine using RSS. They find beauty in the mundane and surface wisdom from obscure writings. That is valuable, worth more than gold.</p> | |||||
<p><a href="https://robinrendle.com/notes/i-am-a-poem-i-am-not-software/">We are poems, not software</a> and in need of a reforestation of our curators. To paraphrase Mr. Rogers in these dire times, “Look for the aggregators…”</p> |
<li><a href="/david/cache/2024/99e7d2ba7e4adc69dbf0f1b2858a5248/" title="Accès à l’article dans le cache local : Style with Stateful, Semantic Selectors">Style with Stateful, Semantic Selectors</a> (<a href="https://benmyers.dev/blog/semantic-selectors/" title="Accès à l’article original distant : Style with Stateful, Semantic Selectors">original</a>)</li> | <li><a href="/david/cache/2024/99e7d2ba7e4adc69dbf0f1b2858a5248/" title="Accès à l’article dans le cache local : Style with Stateful, Semantic Selectors">Style with Stateful, Semantic Selectors</a> (<a href="https://benmyers.dev/blog/semantic-selectors/" title="Accès à l’article original distant : Style with Stateful, Semantic Selectors">original</a>)</li> | ||||
<li><a href="/david/cache/2024/30b40ff8034212e070dc7daf2b9406e9/" title="Accès à l’article dans le cache local : an "archives first" approach to mailing lists">an "archives first" approach to mailing lists</a> (<a href="https://public-inbox.org/README.html" title="Accès à l’article original distant : an "archives first" approach to mailing lists">original</a>)</li> | |||||
<li><a href="/david/cache/2024/87c468a4eddabe5d2c28e902d7f17504/" title="Accès à l’article dans le cache local : je ne sais pas pourquoi">je ne sais pas pourquoi</a> (<a href="https://www.la-grange.net/2024/01/11/pourquoi" title="Accès à l’article original distant : je ne sais pas pourquoi">original</a>)</li> | <li><a href="/david/cache/2024/87c468a4eddabe5d2c28e902d7f17504/" title="Accès à l’article dans le cache local : je ne sais pas pourquoi">je ne sais pas pourquoi</a> (<a href="https://www.la-grange.net/2024/01/11/pourquoi" title="Accès à l’article original distant : je ne sais pas pourquoi">original</a>)</li> | ||||
<li><a href="/david/cache/2024/3ea27fca4fabb81676fc1b98264f3bd8/" title="Accès à l’article dans le cache local : It’s OK to call it Artificial Intelligence">It’s OK to call it Artificial Intelligence</a> (<a href="https://simonwillison.net/2024/Jan/7/call-it-ai/" title="Accès à l’article original distant : It’s OK to call it Artificial Intelligence">original</a>)</li> | <li><a href="/david/cache/2024/3ea27fca4fabb81676fc1b98264f3bd8/" title="Accès à l’article dans le cache local : It’s OK to call it Artificial Intelligence">It’s OK to call it Artificial Intelligence</a> (<a href="https://simonwillison.net/2024/Jan/7/call-it-ai/" title="Accès à l’article original distant : It’s OK to call it Artificial Intelligence">original</a>)</li> | ||||
<li><a href="/david/cache/2024/55477786fc56b6fc37bb97231b634d90/" title="Accès à l’article dans le cache local : Fabrique : concept">Fabrique : concept</a> (<a href="https://www.quaternum.net/2023/06/02/fabrique-concept/" title="Accès à l’article original distant : Fabrique : concept">original</a>)</li> | <li><a href="/david/cache/2024/55477786fc56b6fc37bb97231b634d90/" title="Accès à l’article dans le cache local : Fabrique : concept">Fabrique : concept</a> (<a href="https://www.quaternum.net/2023/06/02/fabrique-concept/" title="Accès à l’article original distant : Fabrique : concept">original</a>)</li> | ||||
<li><a href="/david/cache/2024/7136e0810bfa42c4a9ca798a55cd2d53/" title="Accès à l’article dans le cache local : Where have all the flowers gone?">Where have all the flowers gone?</a> (<a href="https://daverupert.com/2024/01/where-have-all-the-websites-gone/" title="Accès à l’article original distant : Where have all the flowers gone?">original</a>)</li> | |||||
<li><a href="/david/cache/2024/c98206d38897264005bcd5b453d032b1/" title="Accès à l’article dans le cache local : Designing better target sizes">Designing better target sizes</a> (<a href="https://ishadeed.com/article/target-size" title="Accès à l’article original distant : Designing better target sizes">original</a>)</li> | <li><a href="/david/cache/2024/c98206d38897264005bcd5b453d032b1/" title="Accès à l’article dans le cache local : Designing better target sizes">Designing better target sizes</a> (<a href="https://ishadeed.com/article/target-size" title="Accès à l’article original distant : Designing better target sizes">original</a>)</li> | ||||
<li><a href="/david/cache/2024/09c0739036ea4a8b6c985e127fe7e3c8/" title="Accès à l’article dans le cache local : ☕️ Journal : Carnets">☕️ Journal : Carnets</a> (<a href="https://thom4.net/2023/02/01/carnets/" title="Accès à l’article original distant : ☕️ Journal : Carnets">original</a>)</li> | <li><a href="/david/cache/2024/09c0739036ea4a8b6c985e127fe7e3c8/" title="Accès à l’article dans le cache local : ☕️ Journal : Carnets">☕️ Journal : Carnets</a> (<a href="https://thom4.net/2023/02/01/carnets/" title="Accès à l’article original distant : ☕️ Journal : Carnets">original</a>)</li> |