295 private links
Problems with deepcloning with JSON.stringify() / JSON.parse():
- Recursive data structures: JSON.stringify() will throw when you give it a recursive data structure. This can happen quite easily when working with linked lists or trees.
- Built-in types: JSON.stringify() will throw if the value contains other JS built-ins like Map, Set, Date, RegExp or ArrayBuffer.
- Functions: JSON.stringify() will quietly discard functions.
The solution: the function structuredClone.
Search a specific podcast through all platforms.
Available in RSS feeds et API too.
Latest standard of the year 2022
Un taux de conformité sur la base de RGAA est nécessaire d'après un decret de 2019.
Limitations entre le niveau de conformité et l'expérience utilisateur:
- Le RGAA évolue sur deux principes: la présence d'éléments "accessibles" et leurs pertinences.
- Un critère non conforme avec une seule erreur a exactement le même poids dans le calcul des taux que ce même critère non conforme avec une multitude d’erreurs
- À moins d’être à 100 %, sans aucune exemption ni dérogation, un taux de conformité ne peut pas révéler un niveau d’accessibilité pour l’utilisatrice ou l’utilisateur car il n’intègre aucune évaluation de criticité: un bouton login inaccessible aura un énorme impact ! Cette notion de « missions premières » d’un site n’est pas prise en compte dans le calcul de ses taux de conformité.
De plus:
- le niveau d'accessibilité est évalué à un instant T. Qu'en est-il après ?
- des environnements de tests sont utilisés: dernière version d'un navigateur + NVDA/JAWS/VoiceOVer. D'autres environnements sont utilisés par les utilisateurs, qui sont en dehors de la couverture de test
- la complexité intrinsèque du site peut rendre son utilisation complexe, et donc être moins accessible.
- les appelations « Accessibilité: totalement conforme » (100%), « Accessibilité : partiellement conforme » (50-99%), « Accessibilité : non conforme » (<50%) prennent une place prépondérante. On parle plus de score, pourcentage et points que de l'accessibilité concrète des personnes. L'objectif est bien souvent d'être alors partiellement conforme, ce qui représente une faible accessibilité en soi (cf:article).
2.9 milliards d'utilisateur sur Facebook, avec 1.9 milliards d'utilisateur actifs.
3.58 milliard d'utilisateurs sur Meta (+12%).
Le revenu moyen par utilisateur est de 10 dollars en moyenne. 52 dollars aux US et Canada, 16.,5 en Europe.
Use git to push and pull to get content, share them.
The author compares git repositories with the RSS feeds: a git repository is more versatile.
text is small.
👍
La direction interministérielle du numérique permet de travailler sur du logiciel libre, pour l'intérêt des citoyens français.
Elle recrute: https://www.numerique.gouv.fr/rejoignez-nous
Donner l'adresse du site en
hxxps://ludovic-bois.com/index.php
afin d'éviter que les gens cliquent sur ce lien rapidement et qu'il soit référencé dans les moteurs de recherche.
Some examples of why C is faster than Java, because C and algorithms
Utiliser Renovate pour gérer la mise à jour de ses dépendances. Sur Github et Azur, cela se fait en un clic. Ici pour Gitlab, une installation préalable est nécessaire.
A smaller format than SVG. It is a side project for now, but it looks promising.
I see IconVG in the comments too.
Les arguments relevés semblent pertinent:
- les tests passent avant le typage → ok mais pourquoi ne pas avoir les deux et laisser ce choix par projet ?
- la lisibilité des en-têtes de fonction peuvent très bien être améliorée
- les annotations requirent leurs propres imports, ce qui peut conduire à des imports circulaires (cf: https://stackoverflow.com/questions/22187279/python-circular-importing/22187343#22187343)
Le château Senden
Contexte: senden signifie "Envoyer" en allemand. Ce mot est utilisé pour envoyer un message, lettre, email, formulaire. Le nombre de blague possible !
Comment pister l'origine d'une requête dans une BDD
Une faille de sécurité concernant ZeroBin et la suppression d'un document via un token dans l'URL.
A way to render conditionally the attributes of a tag.
Creating an object and setting the attributes as prop of the object if they should be rendered. Then use the spread operator on it:
<script>
export let value = "";
export let id = "";
export let placeholder = "";
export let type = "text";
let conditionalAttributes = {};
if (id) conditionalAttributes.id = id;
if (placeholder) conditionalAttributes.placeholder = placeholder;
if (type) conditionalAttributes.type = type;
</script>
<input {...conditionalAttributes} bind:value={value} />Create and check the outline of a webpage.
EDIT: Since this extension is not maintained anymore, it could be useful to improve it, fix some bugs if there is some and make it even better :)