#dépendance

Publications relatives à cette étiquette

Inclusion

Dans le cadre de manger ma propre bouffe pour chien mon autoéquipement, je voulais vérifier si l’implémentation de oEmbed dans uMap était utilisable… et il se trouve que ce n’était pas le cas avant aujourd’hui. Il y aurait encore des pistes d’améliorations mais au moins ça affiche une carte (si vous autorisez les requêtes externes en JS) :

Vous devriez voir s’afficher une carte de mon « Grand Tour de la forêt de Ouareau », il est probable que cela ne s’exécute pas dans un agrégateur par exemple.

J’en ai fait un web component car je compte explorer / publier davantage de cartes par la suite. Je vais essayer d’ajouter des options lorsqu’elles deviendront disponibles côté uMap. Pour l’instant, il faudra vous contenter d’un view-source: (meilleure fonctionnalité du Web, ne l’oublions jamais).

Au passage, j’ai mis à jour le moteur de ce site pour pouvoir injecter des morceaux de HTML (et donc CSS/JS) sur des billets en particulier. Je m’amuse bien 🧑‍🔬.

Je compte reparler de cette carte.


Beaucoup moins glorieux, j’ai participé à de la perte de données aujourd’hui. Nous avons eu besoin de trois cerveaux et pas mal d’heures pour comprendre ce qu’il se passait. Il était difficile de tester / imaginer / reproduire autrement que sur le serveur de production. C’est déjà pas mal d’avoir eu la possibilité de passer en lecture seule avant que ça ne touche trop de cartes.

J’ai appris qu’il ne fallait pas se fier à l’ordre des IDs… lorsqu’ils deviennent des UUIDs !


A data hoarder’s dream come true: bundle any web page into a single HTML file. You can finally replace that gazillion of open tabs with a gazillion of .html files stored somewhere on your precious little drive.

Unlike the conventional “Save page as”, monolith not only saves the target document, it embeds CSS, image, and JavaScript assets all at once, producing a single HTML5 document that is a joy to store and share.

monolith

Je me demande si je ne devrais pas avoir recours à ce type d’outil plutôt que de n’extraire que la partie de HTML qui m’intéresse pour garder une copie des liens que je lie par ici. C’est pour l’instant un peu fastidieux mais ça me fait aussi découvrir des choses en explorant le code des autres.


For this reason, I got more into “Conflict-free Resolution Data Types” (CRDTs), with the goal of understanding what they are, how they work, what are the different libraries out there, and which one would be a good fit for us, if any.

A comparison of JavaScript CRDTs [archive]

J’apprends plein de choses à ce sujet grâce à Alexis, c’est chouette à explorer par procuration.


To summarize, digital information requires maintenance. It's not sufficient to make backups; the backups also need to be maintained, upgraded, transferred, and curated. Without conscientious care, the data of today will be lost forever in a few years. Even with care, it's possible through software or hardware changes to lose access forever. That shoebox of old backup CDs will be unreadable soon.

Which brings us back to those old photo caches. They held negatives and prints, physical objects that stored images. They needed no attention, no curating, no updating. They sat untended and forgotten for decades, but through all that time faithfully held their information, waiting for a future discoverer. As a result, we can all see what the Scott Antarctic expedition saw, and I can see what my great-grandparents looked like.

It is a sad irony that modern technology makes it unlikely that future generations will see the images made today.

Ask yourself whether your great-grandchildren will be able to see your photographs. If the images exist only as a digital image file, the answer is almost certainly, "No". If, however, there are physical prints, the odds improve. Those digital images need to be made real to endure. Without a print, a digital photograph has no future.

command center: Prints [archive]

Très vrai et je me demande si le fait d’avoir des artefacts qui perdurent sur plusieurs générations sans entretien / transmission n’est pas justement un épiphénomène. Le numérique est peut-être plus proche de la transmission orale, une information qui a besoin d’être appropriée par læ récepteur·ice pour qu’elle continue à vivre.

Ce sera à moi d’apprendre à ma descendance comment garder en vie cette flamme numérique qui vacille à chaque coup de vent de format propriétaire.

Intendant

In Why We Can’t Have Nice Software, I point out this pattern of needless software churn in the mindless quest for profit. This is a perfect example occurring right now. Redict has already reached its peak; it does not need any more serious software development to occur. It does not need to pivot to AI. It can be maintained for decades to come with minimal effort. It can continue to provide a high amount of value for a low amount of labor. That’s the entire point of software!

Redict does not have any profit left to offer. It no longer needs a fund-raising entity behind it anymore. It just needs a good project steward.

Redis Renamed to Redict [archive]

Je me pose beaucoup de questions sur cette notion de finitude logicielle. Et sur le fait de parfois créer ma propre nécessité, sans en avoir forcément conscience ou l’intention.

J’y vois un parallèle avec une frugalité que je n’arrive pas à atteindre, les deux étant probablement liés.

Il me reste encore tellement de choses à démêler…


So, yeah, I’ve been at this for a while, and this is the answer: Write CSS. Not too much. Mostly scoped.

I’m sure we’ll never argue about how to manage CSS ever again.

Write CSS. Not too much. Mostly scoped. [archive]

Ça commence par le classique « pour ou contre Tailwind » mais après il y a des choses inspirantes.


quick q, however: how do they get off the worm when they’ve arrived at their destination

keep noticing that the movie cuts before they get off, Denis my friend you can’t fool me, how do you stop riding the worm, answer us

Sydney Sweeney, if you’re free on Thursday, [archive]

Tiens c’est vrai ça ! 🤔🤯

LoginWall

I don’t have a LinkedIn account. I don’t like the idea that we both need an account. I need one to post my résumé, and you need one to view it. How does that benefit me to have my résumé behind a login wall? It doesn’t. It benefits LinkedIn. Now, my résumé is on my website, displayed more beautifully than LinkedIn lets me.

[…]

Every new thing that I add to my website works to regain my internet presence away from companies that do not have my interests at heart. And I will avoid future problems like a company deciding to put login walls or paywalls in front of my content. Or putting Nazi content beside mine. I can avoid all of that by self-publishing.

Web Independence [archive]

Le problème de sites comme LinkedIn c’est qu’il est difficile de se rendre compte de leur inaccessibilité lorsqu’on a un compte. Ou alors les personnes mettent leurs CV en signature de courriel en sachant que je ne vais pas pouvoir les consulter ?

Avec TwiX c’est encore pire car ça varie d’un jour sur l’autre. Parfois le tweet est accessible mais seul, parfois il faut un compte, parfois on accède à une page avec la liste des dernières publications de la personne mais ordonnées par « popularité », ça sent bon la girouette qui est à la tête de l’entreprise.

Et je ne parle même pas de ce qui se passe sur Facebook.


What I try to keep in mind is the curb cut effect, also known as the « i want subtitles on my favourite show because even though my ears are just fine, i like to eat crisps while watching » rule. In many cases, adding accessibility to your website makes it nicer for everyone, not only for the people who needed these changes. (Corollary: everything that makes you squint is giving a giant migraine to someone else out there.)

Accessibility notes from your headache-prone friend [archive]

Je ne connaissais pas le nom de cet effet, j’espère le retenir en le notant ici. Merci Alex !

Lu le lendemain sur masto :

It is true that meeting the needs of many disabled people makes services better for non-disabled people.

It is wrong though to say that all accessibility efforts benefit non-disabled people.

They don’t, meeting some access needs only benefit some disabled people.

It is tiring hearing "you’ll be disabled in the future" when there’s such a broad experience of disability that many people won’t experience due to age.

We must create strategies where we aim to humanise and value disabled people inherently and not have to lean so hard on non-disabled people’s self interest.


Capture d’écran d’un parcours sur 4 jours avec une soixantaine de kilomètres.
Si ma cheville le permet.

J’ai joué avec le Planificateur d’itinéraire de Komoot hier, je ne m’étais jamais demandé vraiment quelles distances est-ce que je pouvais parcourir dans la forêt. J’aime bien le fait d’avoir l’option de suivre les chemins connus. À voir si j’arrive à faire ce grand tour en rando rapide / légère. Je connais déjà 80% du parcours et je sais dès à présent que la deuxième journée serait bien longue. L’avantage d’être en terrain connu, c’est de connaître les endroits où je peux couper en cas de pépin physique.

J’ai du matériel très léger mais je me rends compte que la nourriture est déjà un défi sur 4 jours pour garder un sac qui permette de courir. Je m’entraîne en ce moment en faisant des aller-retours à la bibliothèque avec 5kg de livres sur le dos. On verra bien si c’est utile… au pire j’aurais découvert des BD :-).

Permanence

Eventually, I started asking myself: why am I promising permanence? The answer crept up on me: because permanence is better than nothing. Without the momentum of obligation, I didn’t trust myself to begin anything in earnest.

The thing is, it never worked. The half-life of obligation is short; the half-life of guilt is long. Promises never saved one of my side projects, but they clogged many nights and weekends with the gunk of regret. Something had to change.

No more forever projects [archive]

Je vais aller m’enforester avec cette question. Le refuge ne va pas être accessible via la piste de ski (de fond), plus assez de neige.

Un 3 mars, au nord de Montréal.


Ces chaleurs extrêmes de 2023 ont moins à voir avec le développement d’El Niño qu’avec les conditions anticycloniques de la zone. « On a observé une baisse des vents assez forte sur l’Atlantique Nord, explique Christophe Cassou. Or quand il y a moins de vent, il y a moins d’évaporation, ce qui conduit à un réchauffement des eaux de surface. Ces eaux chauffent aussi car elles se mélangent moins avec les eaux plus profondes et plus froides. »

Aujourd’hui, cette configuration météorologique a disparu mais les eaux de surface de l’Atlantique Nord continuent de battre des records de chaleur à cause du phénomène El Niño, qui a fini par réchauffer progressivement les eaux de l’océan pendant l’hiver.

Climat : pourquoi les températures battent tous les records depuis la mi-2023 [archive]

Les Décodeurs m’offrent une grille de lecture des phénomènes en cours intéressante.


From pragma directives, to async scripts, to stylesheets, to open graph tags, it’s easy to mess up and can have consequences. Capo.js will show you the specific order of elements to make your <head> and your page a little (or a lotta) bit faster.

Capo.js: A five minute web performance boost [archive]

Il est aussi possible d’utiliser la démo sans installer aucun JS en copiant du HTML ou en pointant vers une page. J’ai du mal à évaluer à quel point c’est pertinent pour cet espace, peut-être davantage dans des contextes sans prise de soin [archive] qui semblent être la norme aujourd’hui.


Rêve de la nuit dernière

rêve - Carnets Web de La Grange [archive]

💚

Montre

J’ai une Suunto Ambit Black [archive] achetée il y a une douzaine d’années. (Merci à Suunto de garder une page avec les caractéristiques d’un produit qui n’est plus construit / vendu ! C’est notamment utile pour comparer les spécifications de taille et poids.) Je me demandais si les montres actuelles allaient pouvoir résister à une température inférieure à -20°C et il semblerait que ce ne soit pas le cas, tous les modèles que j’ai consulté spécifient clairement que c’est la limite basse.

Capture d’écran pour la Coros Apex 2 qui va de -20°C à 50°C.
Même Kiki a du mal par -20°C !

Détail marrant : Kilian Jornet était déjà sur les photos de promotion de la Suunto Ambit Black et on le retrouve sur la Coros Apex 2 Pro d’aujourd’hui.

Au-delà de l’aspect scientifique d’envisager une montre qui résiste aux températures locales, il y a une situation récente qui me reste en tête aussi (ce n’est pas la première fois, et ce ne sera certainement pas la dernière). Une position GPS précise aurait certainement pu m’aider dans ce cas là, si je n’avais pas été trop entêté pour ne pas la consulter. J’envisage aussi des objectifs sur lesquels j’ai besoin de me rassurer / entraîner spécifiquement en ayant une idée des distances que je pourrais parcourir dans un contexte donné que j’envisage plus rapide que ce que j’ai l’habitude de faire.

Je cherche en priorité une montre qui affiche un fond de carte, ce n’est pas tant ma trace programmée que ce qu’il y a autour qui m’intéresse dans d’autres contextes exploratoires. Sur ma montre actuelle, je ne pouvais qu’enregistrer une trace à suivre qui m’indiquait les déviations mais pour ma pratique ce n’était pas très intéressant. Savoir qu’il y a un lac / chemin forestier à proximité peut changer ma sortie. Difficile de savoir a priori si les données pour mes lieux de balade seront à jour ou suffisamment détaillées.

J’ai regardé l’Apple Watch Ultra 2, la Suunto Vertical Titanium Solar, des Garmin d’« aventure » et finalement la Coros Apex 2 (Pro). Dans tous les cas, ce sont de grosses montres et j’ai un poignet fin. Dans tous les cas, le marketing est complètement délirant 🙃. Sans compter le prix. La Coros semble être la moins chère (!) qui réponde à l’ensemble de mes attentes, la version Pro ayant une meilleure précision GPS et autonomie, ce qui m’importe beaucoup.

Ah, aussi. Difficile à justifier, même amortie sur la prochaine décennie… et c’est d’ailleurs là où j’ai de sérieux doutes en terme d’obsolescence programmée, ce qui a duré 10 ans ne durera probablement plus 10 ans. Triste réalité. J’essaye de ne pas trop me demande si je vais être capable de passer encore une décennie à arpenter la forêt.

Montre moi tes peurs et je te dirai comment les acheter.

P.S. : j’ai un petit truc qui me gratte aussi dans le fait de ne pas être utilisateur régulier de uMap, ce qui est un manque à différents niveaux. Avoir davantage de données me motiverait certainement à jouer avec. Il y a des lieux que je veux garder intimes et d’autres qui sont déjà bien publics. J’ai une vieille envie de pouvoir raconter mes sorties sur un fond de carte à la StoryMap (avec Leaflet ?) pour agrémenter les récits de sons et images correspondants aux lieux parcourus.

In·directions

Any time you have a design that references the same value across multiple pieces of UI, I’d suggest that is an opportunity for abstracting that value into a name that better describes the intention of the value in the design.

Naming Variables In CSS [archive]

Je me demande souvent quel est le bon niveau hiérarchique au sein des CSS modernes. L’approche constatée actuelle semble être de mettre des variables par couleur (par exemple) puis ensuite définir des variables intermédiaires pour leur donner un sens pour un contexte donné.

:root {
  --umap-color-darkBlue: #263B58;
}
button {
  --color-primary: var(--umap-color-darkBlue);
}
button.primary {
  background-color: var(--color-primary);
}

Il s’agit ici de partir d’un exemple simpliste mais concret. J’imagine qu’il y a autant de dévelopeur·euse que de façon d’écrire ces 3 seules déclarations :). Pourquoi :root et pas html ? Est-ce qu’il faut définir les couleurs primaires sur le button ou sur form, nav ? Ou faire sauter cet intermédiaire ? Est-ce qu’il faut button.primary, .primary, .button-primary, .button.button-primary ? Etc, etc.

Et je ne mentionne même pas les solutions à partir de :host / :host-context() ou :scope qui sont encore d’autres façons de faire qui sont peut-être amenées à devenir populaires.

Venant d’un langage dont l’un des mantras est There should be one-- and preferably only one --obvious way to do it., il est plus difficile de se retrouver devant une telle… flexibilité ? Lorsqu’on envisage un commun sur ces 10 prochaines années, comment trouver une stratégie maintenable qui s’inscrira dans la durée avec enthousiasme ?

Ce qui est certain, c’est que l’approche de Tailwind ne me convient pas du tout.

To keep up with the ever-evolving CSS standard Tailwind introduced another set of language literals. Over the years Tailwind has grown from a simple set of atoms to a vendor-specific language with expressions, operators, and method calls.

Tailwind marketing and misinformation engine [archive]


File over app is a philosophy: if you want to create digital artifacts that last, they must be files you can control, in formats that are easy to retrieve and read. Use tools that give you this freedom.

File over app is an appeal to tool makers: accept that all software is ephemeral, and give people ownership over their data.

File over app - Steph Ango [archive]


Learn about the systems that already exist, and build on them rather than around them. If an existing system doesn’t do what you want, maybe the problem is in the design of your system, not that one.

If you do build a new component, make sure it’s of general utility. Don’t build infrastructure that solves only the problems of your own team.

It’s easy to build complexity. In the rush to launch, it’s quicker and easier to code than to redesign. But the costs accumulate and you lose in the long run.

command center: Simplicity [archive]

Archives

Google will no longer be keeping a backup of the entire Internet. Google Search’s “cached” links have long been an alternative way to load a website that was down or had changed, but now the company is killing them off. Google “Search Liaison” Danny Sullivan confirmed the feature removal in an X post, saying the feature “was meant for helping people access pages when way back, you often couldn’t depend on a page loading. These days, things have greatly improved. So, it was decided to retire it.”

Google will no longer back up the Internet: Cached webpages are dead [archive]

(rires)

Forcément en lisant ça un samedi matin, j’étais immédiatement motivé pour améliorer la façon dont j’archive les liens par ici. À commencer par des méta-données qui permettraient d’avoir une prévisualisation des liens un peu enrichie.

Je me dis que je ne dois pas être le seul à essayer d’extraire des informations des pages. Et j’en trouve pas mal : hyperlink_preview, extruct ou url_cache pour ne citer qu’eux. Cela me met sur la piste de Lassie qui semble extraire ce que j’aimerais avoir : une image ou favicon, potentiellement une description, ainsi qu’une langue. Jake Lazaroff m’avait depuis répondu qu’il génère en fait ses vignettes au moment de la construction du site. Je ne veux pas totalement suivre cette approche car je ne veux pas stocker d’images additionnelles mais je vais essayer d’avoir une solution hybride.

Cela m’embête de plus en plus de coupler le générateur de site aux (méta-)données des archives. À méditer.

Pour ce qui est de l’interface, ça attendra un autre jour. J’ai tout de même ajouté des attributs hreflang et la bonne langue dans les pages d’archives, un truc qui me grattait depuis un bout de temps.


Cela fait bien longtemps que je regrette d’avoir acheté des enceintes Sonos. Hier — encore une fois frustré par l’application proposée par défaut — je découvre SoCo ainsi que soco-cli après quelques recherches. Je passe ensuite la soirée à batailler avec Automator pour pouvoir faire un clic-droit sur un dossier local et que ça me lise les fichiers FLAC qui sont dedans.

J’arrive à la solution suivante :

on run {input, parameters}
    tell application "Terminal"
        do script "cd ~/sonos && sonos Chambre play_dir '" & (POSIX path of input) & "'"
    end tell
    return input
end run

Ce n’est pas très élégant et je n’ai pas réussi à faire en sorte que ça se lance dans iTerm mais au moins ça joue de la musique.


drab focuses on providing JavaScript functionality where it’s most useful. Many of the elements are helpful wrappers around browser APIs. Here are some of the features of the library.

drab - A Headless Custom Element Library [archive]

Le futur qui se dessine à ce sujet est très stimulant. Cela fait 15 ans qu’il y a une production de masse de code JS qui n’est ni réutilisable, ni interopérable. J’ai bon espoir que ce soit en train de changer.


When trying to defend this, economists typically claim that we have unlimited desire for new stuff. Apparently, rather than dedicating the time gains from technology to leisure, we pour it into making more stuff for ourselves. This is bogus. People do have a limited desire for new things, because dedicating yourself to endless production (and consumption) comes at the expense of hanging out with your family, friends and pets, or doing stuff like walking in the wilderness or surfing the waves. What people actually desire is a balance of many things, but the system we’re stuck in has unlimited desire for one direction only. That’s because it’s a vortex unleashed by humans who no longer know how to stop it.

Tech doesn’t make our lives easier. It makes them faster [archive]

Un bon article à lire après 24h de galères techniques 😅.

Extinction

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.

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.

Where have all the flowers gone? [archive]

En réponse à Where have all the websites gone? [archive] que j’ai déjà cité. Peut-être que la capacité à publier est toujours là mais que nous avons trop changé pour être capables de perdurer dans cette pratique. 2024 pourrait me faire mentir car je vois une certaine effervescence dans mon agrégateur. On va bien voir si ça dure. On va bien voir si je dure.

Guidé par le besoin, je suis en train d’automatiser des ancres sur mes <hr>, fausse bonne idée ? En affinant un peu le style ça me convient pour l’instant.


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:

public-inbox aims to be easy-to-deploy and manage; encouraging projects to run their own instances with minimal overhead.

public-inbox - an "archives first" approach to mailing lists [archive]

D’une certaine manière, l’extinction de voix des un·es fait mon bonheur de découverte aujourd’hui. J’espère que le réflexe ne sera pas de passer de Google Groups à Microsoft Github Discussions par commodité.


… ça veut dire qu’en vrai, les droits humains, tu t’en fiches pas mal.

Et que tu es juste un peu raciste.

Culture fronçaise

Voilà.


Un enfant de dos dans des traces de ski de fond classique à la tombée du jour
-16°C, rien de mieux pour démarrer une fin de semaine qu’une sortie ski dans notre jardin après l’école.

Cette photo est floue, c’est devenu tellement rare avec un téléphone (OK Boomer :p). Les couleurs étaient superbes et une fois les mains réchauffées c’était une ambiance très agréable. On n’a pas croisé grand monde. La rééducation active continue tranquillement son chemin.

Recherche

Seuls les contenus de ces 8 dernières années sont indexés.