Weekly Shaarli

All links of one week in a single page.

Week 45 (November 6, 2023)

Give yourself a break: lessons from burnout - localghost

This article set the priority on humans, which is also a point of the agile manifesto

Cursorless is alien magic from the future - Xe Iaso

Programming by voice instead of keyboard

Why Unique ID Attributes Matter
The elegance of endurance: what centuries-old enterprises can teach modern culture. — Joan Westenberg
The Big O of Code Reviews

About the complexity of the PRs. The less complex the better.
There are analogy to O(1), o(n), O(n×m) and O(n!)

CSS { In Real Life } | CSS Nesting is Here

and ho it differs from SCSS.

URL Lengthener: l62.ng
The Absolute Best Intro to Monads For Software Engineers - YouTube

It explains the Writer monad and the Option monad.

This pattern is used for future or promise by the way.

Quel est l'impact environnemental d'ouvrir ou non les liens dans un autre onglet ? - Greenspector

The browser uses the bfcache technique to handle back and forth in history.

Il semble qu'utiliser un seul onglet soit optimal. Ces différences restent petites.

How we turned into assholes — Joan Westenberg
Please, Expose your RSS

Make it visible :) It can be in the UI for human and the <head> for tools

Sorry Computer, You're Not a Teapot - The History of the Web
Afficher la fréquence du CPU et la température dans htop

It is possible to display the temperature and the CPU frequency with htop. Simply press F2 and enable both in the display options.

Git Notes: git's coolest, most unloved­ feature - Tyler Cipriani

Notes stow metadata about anything tracked by git—any object: commits, blobs, and trees.

The git project itself offers an example of git notes in the wild. They link each commit to its discussion on their mailing list.

Other folks are using notes for things like:

  • Tracking time spent per commit or branch
  • Adding review and testing information to git log
  • And even fully distributed code review

Review notes are used by Gerrit (Wikimedia) and many google projects. For example:

commit d1d17908d2a97f057887a4afbd99f6c40be56849
Author: User <user@example.com>
Date:   Sun Mar 27 18:10:51 2022 +0200

    Change the thing

Notes (review):
    Verified+1: SonarQube Bot
    Verified+2: jenkins-bot
    Code-Review+2: Reviewer Human <reviewerhuman@wikimedia.org>
    Submitted-by: jenkins-bot
    Submitted-at: Tue, 14 Jun 2022 21:59:58 +0000
    Reviewed-on: https://gerrit.wikimedia.org/r/c/mediawiki/core/+/774005
    Project: mediawiki/core
    Branch: refs/heads/master

There is also an extension from Google to git notes dedicated to code review: https://github.com/google/git-appraise. Request review, comment and review and merge are included.

Its authors have declared it a “fully distributed code review”—independent of GitHub, GitLab, or any other code forge.

Git notes are however a pain to use. Mhmhmhm #idea #project on top of the git note commands?

For commits, you can make viewing and adding notes easier using fancy options in your gitconfig3. But for storing notes about blobs or trees? Forget it. You’d need to be comfortable rooting around in git’s plumbing first.

Much of the value of git repos ends up locked into forges, like GitHub. Git notes are a path toward an alternative and it could make it possible to distribute the history of an entire project.

Building a website like it's 1999... in 2022 - localghost

The headlines of the content picture well what content is in this post:

  • The web used to be weirder
  • Animated GIFs (WordArt)
  • Music
  • Cursor trails
  • Webrings
  • Guestbooks
Welcome | manpageblog - a small and lightweight blog engine.
SQLite, la solution pragmatique en production pour le web

Le NoSQL est également plus adaptée pour le développement agile car les données ne sont pas structurées pendant les itérations.

Le SQL a réussi à traverser les âges car: il est simple, il est rapide et il est stable.

Les avantages de SQLite:

  • facilité d'administration: tout le contenu peut être visualisé par lecture d'un fichier.
  • facilité de déploiement: il est possible de pousser les BDD en production et de les migrer
  • simplicité: sqlite est intégré avec tous les langages de programmation
  • capacité: une BDD peut contenir plus d'un million de TB

Ses désavantages:

  • requêtes concurrentes:
  • les types de données limitées: NULL, INTEGER, REA L, TEXT, BLOB. Il n'y a pas de BOOL ni de dates.
  • les données sont faiblement validées: "abcd" dans INTEGER o 20 charactères dans VARCHAR(5) passent.
  • la sauvegarde des données est à faire soit même
  • l'hébergement n'est pas possible avec tous les hébergeurs
Documentation · BaseAdresseNationale/api-depot Wiki
Fintech is a scam. — Joan Westenberg

It's because after objectively examining the incentives and outcomes, fintech as an industry categorically fails to deliver meaningful progress to consumers. [...] It's about our obligations to each other and our duty to leave the world more equitable than we found it. Fintech, in its current form, categorically fails that duty.

Everything wrong with tech in 2023 (in no particular order) — Joan Westenberg
10 Minutes Email - E-mail de 10 min jetable
Firefox Development Is Moving From Mercurial To Git
Andrew M McCall - Golang, Javascript, PHP, Wordpress
S/I Webring - About

The idea of this webring is to allow anyone to have a cute little badge on their website that shows their relationship (whether platonic or romantic) with a certain character!

Fushra Pulse · GitHub

Smoothen the fork of Firefox

7 myths designers and developers believe about web accessibility - localghost
  1. The majority of your users don't have access needs
  2. Accessibility is optional
  3. Access needs come from permanent disabilities
  4. Accessibility is a barrier to good design
  5. Accessibility is hard to implement
  6. React apps are inherently inaccessible
    7 Automated testing will catch all accessibility problems
Les outils de surcouche d’accessibilité web : mensonges et boules de gomme - La Lutine du Web
Epoch

About the Unix epoch. It provides usages in different languages and a description of the Year 2038 and the 32-bit timestamp format.

There is only one form of passive income worth celebrating. It’s a UBI. — Joan Westenberg

As author Sam Harris said, “In a world of true abundance, you shouldn’t have to work to justify your life.”

UBI stands for Universal Basic Income.

Proponents of UBI — and I count myself among them — argue that it offers a safety net that enables individuals to pursue education, start businesses, or engage in creative endeavours without the fear of financial ruin, creating a more innovative, entrepreneurial, and dynamic society.

UBI is grounded in the principle of shared prosperity and the intrinsic value of each individual, irrespective of their economic contribution.

Experiments in Finland and Canada have shown that providing a basic income does not significantly diminish people’s desire to work. Instead, it affords them the flexibility to pursue work that is meaningful and suited to their skills rather than being trapped in the cycle of low-paying or unsatisfying jobs.

With a correct basic income, you can safely strive for the progress of humanity.

Learn Lua in 15 Minutes
Briser les règles - Catherine DUFOUR
TypeScript and React: Enforcing Props for Accessibility - DEV Community

aria-label and aria-labelledby are exclusive. So they can be enforced for components in typescript:

type ToggleSwitchProps = {
  name: string;
  checked: boolean;
  handleToggle: () => void;
  size?: "sm" | "lg" | "base";
  classNames?: string;
} & ({ ariaLabel: string; ariaLabelledBy: never } | { ariaLabel: never; ariaLabelledBy: string });