Monthly Shaarli
February, 2021
Les questions pour comprendre un sujet [ou comment poser les bonnes questions]
QUESTIONS DE VÉRITÉ
- Comment sait-on que c’est vrai?
- Qu'est-ce qui vous permet de dire ça?
- Comment le savez vous?
- Quelles sont vos preuves?
QUESTIONS DE CURIOSITÉ
- Qu'est-ce que c'est?
- Comment ça marche?
- À quoi ça ressemble?
- Qu’est-ce qu’il y a à l’intérieur?
QUESTIONS DE CAUSALITÉ
- D'où ça vient?
- Pourquoi ça se passe comme ça?
- Qu'est-ce qui explique ça?
- Comment en sommes-nous arrivés là?
QUESTIONS D'EMPATHIE
- Est-ce qu'on ne peut pas voir ça autrement?
- Quels sont les autres points de vue sur ce sujet?
- Qu'en pensent vos adversaires?
- Est-ce la seule manière de voir les choses?
QUESTIONS DE SOLUTION
- Et si on faisait autrement, qu'est-ce que ça impliquerait?
- Qu'est-ce qu'il faudrait faire?
- Est-ce la meilleure option?
- Qu'est-ce qu'on peut faire dès maintenant?
Setting the property name into brackets give the ability to evaluate its value as an expression. Thus custom property names can be created:
let a = {
['foo' + 1]: i,
}
console.log(a.foo1) // print 1
Naming a Slice Using slice Function, Prompting User for a Password at Runtime, Find Close Matches of a Word/String, Working with IP Addresses, Debugging Program Crashes in Shell, Defining Multiple Constructors in a Class, Caching Function Calls Using Decorator, Find the Most Frequently Occurring Items in a Iterable
La longueur (L) d’un objet se mesure généralement de droite à gauche ou de gauche à droite, par définition elle est plus grande que la largeur.
La largeur (l) est la plus petite dimension dans la base horizontale
La hauteur (h) se mesure dans le sens vertical, du point le plus bas (la base) vers le point le plus élevé de l’objet (le sommet)
Le terme profondeur (p) s’utilise lorsque l’on mesure une distance de haut en bas
Pour les sacs, la règle générale : Longueur x largeur x hauteur
Un écran au format 16/9 signifie que la largeur est 16/9 fois (1,77777777778 pour être précis) plus grand que la hauteur.
Pour les vues en 2D: largeur x hauteur
Wildcard is a browser extension that empowers anyone to modify websites to meet their own specific needs, using a familiar spreadsheet view. It’s a research project as part of my PhD at MIT, with my advisor Daniel Jackson.
On me signale ceci: Si vous avez activé la synchro des favoris dans Chrome sans mettre de mot de passe, Google collecte les statistiques de chargement des pages en se servant de votre historique de navigation. Cela permet à Google de mesurer la performance des pages web de tous les serveurs du monde avec de vraies statistiques: Ce qui se passe dans le navigateur de chaque internaute. Pratique pour avoir les temps de chargement des pages pays par pays. Ingénieux. Mais Creepy.
About Facebook not displaying news in Autralia and the broken architecture of the Internet (failed to avoid choke points)
Pour retrouver votre téléphone, Google vous propose son système intégré à Android (https://www.google.com/android/find). Mais vous pouvez ne pas apprécier car :
1) Cela vous oblige à activer la collecte des coordoonées GPS dans les réglages de votre compte Google.
2) Ça ne marche que si le téléphone a une connexion à internet à disposition (ce qui n'est pas génial quand on a le forfait Free à 2€ avec 50 Mo de données mobiles).Donc cette petite application, FindMyDevice, résoud le problème: Elle est pilotable entièrement et uniquement par SMS. Voici les commandes principales:
- fmd locate : Renvoie les coordonnées GPS et l'identification de l'antenne GSM (CID/LAC/MMC/MNC).
- fmd ring : Fait sonner le téléphone pendant 15 secondes (même si le téléphone est en mode vibreur/silencieux). (utilisez "fmd ring long" pour le faire sonner pendant 3 minutes).
- fmd stats : Si le WiFi est actif, renvoie tous les points d'accès WiFi proches.
- fmd lock
: Verrouille le téléphone et affiche optionnellement un message. - fmd delete : Efface le contenu du téléphone.
Bien entendu, il ne faut pas que n'importe qui puisse vous envoyer ces commandes: Le mot-clé (fmd) est configurable. Vous pouvez autoriser seulement certains numéro à envoyer ces commandes, ou utiliser un code PIN d'activation que vous seul connaissez (envoyez alors fmd
pour autoriser temporairement un téléphone à envoyer aussi des commandes).
À notez que vous pouvez n'accorder les autorisations à l'application qu'en fonction des commandes qui vous intéressent (vous pouvez par exemple interdire la localisation GPS si vous voulez juste pouvoir le faire sonner. Ou encore interdire l'utilisation de la commande d'effacement du téléphone).Sous Android 10, l'application semble bien démarrer en même temps que le téléphone et fonctionner correctement en tâche de fond.
Pensez à bien autoriser le GPS pour l'application même quand elle est en arrière-plan, et aussi l'exclure de l'optimisation de batterie.C'est le genre d'application qu'on est bien content d'avoir installé quand on perd son téléphone (j'ai déjà pu récupérer un téléphone perdu avec une application similaire. Et il a été perdu à un endroit totalement innatendu. On ne l'aurait jamais retrouvé sans la localisation GPS par SMS).
Et cette application respecte votre vie privée puisqu'elle est totalement autonome et ne fait appel à aucun service sur internet.Astuce : Après avoir envoyé une commande "lock", FindMyDevice vous enverra un SMS au moment où quelqu'un interagira avec l'écran de verrouillage ("LockScreenMessage: Usage detected."). Vous savez alors que quelqu'un a votre téléphone en main: Vous pouvez l'appeller !
TL;DR;
overflow: scroll
always display a scrollbar. So we want auto
to hide it when it is not necessary.
On peut faire pleins de choses avec Minecraft: encore un exemple ici
Google dominates the web-browser market with Google Chrome. Now alone by itself, the company can change the rule as it wants.
Here the third cookie will be removed for good reasons; but an AI in Chrome will process the browser history to chuck the user in a similar group. Other websites will then have the obligation to integrate this changes for Google Ads, or they will have to do without 63% of the users
Le chargeur sur smartphone sera maintenant unique ! Il s'agira de l'USB-C 👍
Parce que Windows 10 c'est:
Le contrôle total de l’utilisation du « produit », aucune échappatoire, à tout moment les règles et conditions du service peuvent changer. L’accomplissement de la logique propriétaire, RIEN DE MIEUX que vendre un service. Qu’une entreprise veuille gagner de l’argent dans un monde capitaliste ok, que sa mécanique de vente aille jusqu’à éteindre tous droits et privilèges de l’utilisateur… Avec un service si tu n’es plus client… tu n’es plus utilisateur.
Pas d’installation silencieuse (les « mises à jour » qui remettent ce que tu avais supprimé), de fonctionnalités et outils imposés (Edge, Cortana, OneDrive), de contenus non désirés (il faut vivre une fois la pub sur Windows, magique). On appelle cela le respect de l’utilisateur, indirectement notre confiance grandit envers l’outil.
Globalement le Libre manque de moyens notamment d’argent. Certains gros projets reçoivent des dons, quelques développeurs rémunérés par leur entreprise bossent sur : Le noyau Linux, Debian, Ubuntu, Gnome… La majorité des autres projets crèvent la dalle [...]
Microsoft : Plus de 150 000 employés dont 40% affectés à l’ingénierie, seconde capitalisation boursière mondiale de 1 592 milliards USD, 37,2 milliards de dollars de chiffre d’affaires et 13,9 milliards de bénéfices nets au dernier trimestre [note: en décembre 2020].
On compare un O.S Linux avec Windows à jeu égal ? Microsoft et Windows devrait atomiser Linux et les distributions Linux, le rapport de force est de 100 contre 1. [...] le simple fait de mettre Linux et Windows côte à côte démontre à quel point Windows se fout de l’utilisateur.
Ce qui sauve les distributions Linux est un grain de sable, une valeur ancrée au plus profond de l’Histoire du logiciel libre et de Linux : L’utilisateur au centre. Tout est fait autour de l’utilisateur, tout est fait pour lui. Parfois malheureusement c’est insuffisant, les logiciels libres sont souvent moches, peu ergonomique, ces critiques sont justifiées. Nous manquons de moyens et de bras, des graphistes, designers, communicants.
Et encore, je pourrais citer tout le blog
OUI pour les raison déjà listés sur cette page
Why this website is the best motherfucking website 😍
There is a Better Motherfucking Website 🤣
And the original Motherfucking Website
[...] le but du tailleur est de faire des vêtements qui vous aillent bien. C’est l’essence de son métier, de sa réputation, de son business. Le but d’un producteur de vêtements est de les vendre. C’est très différent. Le métier est différent et les produits seront différents. En fait, le vêtement peut même être immettable, on s’en fout s’il se vend.
Alors, oui, Signal n’est pas parfait. Mais il est très bien alors installez-le par simple soutien citoyen envers ceux qui ne souhaitent pas être totalement pistés par Facebook. C’est bien leur droit, non ? En fait, la question est plutôt inverse : en quoi auriez-vous le droit d’imposer Whatsapp à vos contacts qui ne le souhaitent pas ?
The WhatsApp privacy policy update is a classic bait-and-switch: WhatsApp lured users in with a sleek interface and the impression of privacy, domesticated them to remove their autonomy to migrate, and then backtracked on its previous commitment to privacy with minimal consequence.
May be useful to share if someone ask why not using Whatsapp, Facebook, Snapchat, etc...
et une traduction en français du framablog.
Compile python code to LLVM code, can be run on GPU ! ⭐️
Don't start leaning Rust by implementing a doubly linked list or a graph !
Sous le coude en cas de besoin. Du bon PostgreSQL
Similar to BeautifulSoup ! ❤️
Convert ASCII into SVG
Design some schema in ASCII easily
Le canal de données WebRTC est une modélisation d'un tuyau virtuel entre les deux parties qui communiquent, tuyau dans lequel circuleront les données.
Le multimédia, lui, passe via SRTP, les données nécessitant une plus grande fiabilité passent par SCTP lui-même transporté sur DTLS (RFC 6347) lui même sur UDP.
Bonjour les rapaces, bonjour la nouvelle taxe 🤔
Cela ressemble à un travail constamment en cours !
C'est vrai que la liste est énorme ! 😱
(via Le Warrior du dimanche)
Some arguments against, because it is good to have different point of view; or at least knowing what can be improved 😄
A blog with pertinent posts related to dev topics
Sanitizing String Input, Taking Slice of an Iterator, Skipping Begining of Iterable, Functions with only Keyword Arguments (kwargs), Creating Object That Supports with Statements, Saving Memory with slots, Limiting CPU and Memory Usage, Controlling What Can Be Imported and What Not, Comparison Operators the Easy Way
Test the connection through WebRTC and identify the eventuals problems
Voir les statistiques et données de webRTC (dans Firefox). Cela est aussi possible dans les autres navigateurs en se renseignant.
Ce RFC décrit les généralités sur WebRTC.
git-bundle
: package a git repository
git namespacing: share a codebase between repositories
git hooks: run custom executable on git actions
and more
Publishing private packages as public ones to get the code executed !
- Le salaire
- L’équilibre des forces et charge de travail
- Absence de vision
- Inertie
- Absence de courage managérial
- Sécurité psychologie
- Equilibre vie pro/ perso
- Ligne rouge morale franchie
- Culture d’entreprise transformée
- Absence de qualité
- Absence de progression
- Les problèmes en premier, les produits en deuxième
- Définir l'audience
- Résoudre ses problèmes: lister les travaux effectués → lister leurs inefficacités → lesquelles ont nécéssités beaucoup de temps, d'argent, de frustration ?
- Produire ses propres expériences de vie: expériences acquises → frictions rencontrées → simplification ?
- Idées basées sur la vision: comment changer le monde (éloigner le négatif ou rapprocher le positif ) ? → pour quelles raisons n'est-ce pas une réalité ? → énumérer les moyens de résoudre ces obstacles
- Reproduire et améliorer
- croiser les industries: lister les produits de valeurs → ajuster ces produits au secteur / audience
- Améliorer les produits abandonnés mais utiles: trouver des produits en demande avec des notes faibles (<3.5 étoiles, beaucoup de téléchargement, üas mis à jour depuis une longue période) → créer une meilleure version
- Changer le lieu d'une solution
- Automatisez les services et produits des marketplaces
- Décomposer un produit
- Groupes de données publiques: explorer des groupes de données publiques, trouver les audiences qui en bénéficient (croisement, plus accessible) → fournir ces données à cette audience
- Trouver des signaux:
- vendre des piochesaux mineurs d'or: lister les tendances, trouvez des opportunités pour servir les participants de la tendance,
- Recherche scientifique: accéder aux agrégateurs de recherche scientifique → rechercher les sujets pertinents pour le public ciblé → résoudre les problèmes exposés
Voir les resources en bas de l'article pour avoir des idées concrètes
You are a poet and a mathematician. Programming is your poetry.
You are a hacker. You make hardware dance to your tune.
You are a maker. You build things for people to use.
― josephg.com
Chacun aura sans doute sa définition, mais je vous propose la mienne : un riche, c’est quelqu’un qui n’a pas besoin de travailler pour vivre. [...] « riche » en fait un terme qu’on devrait remplacer par « bourgeois », au sens premier du terme – au sens marxiste.
Relisez cette phrase histoire de bien vous imprégner de ce que ça signifie : il aurait fallu 25000 ans à Bernard Arnault pour amasser sa propre fortune avec son propre salaire. Une sorte de double indécence.
Les lieux où se faire tester
Google follows the rule "embrace, extinguish and extinct" of Microsoft. Chromium features (bookmark synchronization, safe-browsing feature, search suggestion, spell-checking, etc..) are provided by Google and are not a part of Chromium; but Google has long provided API keys for ditributors of Chromium builds to use. But as of March 15, non-Chrome builds of Chromium would lose access to these APIs.
As response, many Linux distributions may remove the chromium package from their dependancies.
this move on Google's part is just highlighting a situation that has existed for years already: you might use Chromium as a way of avoiding proprietary software, but if you use Chromium with features like synchronization, that objective has not been met. [...] Similar to Android: there is a core built with free software, but getting its full functionality requires accepting layers of proprietary code on top of it.
The commenting system collect as much as data as possible 👎
76 requests and 2MB of data for 0 comment. This is no good.
The alternative is Hyvor Talk, founded by the author.
Permet de faire des petits schémas avec un style gribouillé à la main ⭐️
Les export sont au format JSON (pour pouvoir le rééditer), PNG et SVG !
A password with 256 bits of entropy is practically immune to brute-force attacks large enough to quite literally burn the world, but is quite trivial to crack with a universe-scale fuel source.
A password with 327 bits of entropy is nearly impossible to crack even if you burn the whole observable universe trying to do so.
Ouaip c'est une excellente initiative 👍
Comment on fais alors pour régler le problème à la source 🤔
Calculate the size of the webpage vs the size of the screenshot of it. It can then be compared with with a bloat score (BS): WebBS = TotalPageSize / PageImageSize
Using an ARCHITECTURE.md file next to the README and CONTRIBUTING file to make it easy for newcomers to know where the modifications should be made.
A map of the search engines (crawler that build their own index and the meta that queries the crawlers)
"En garde à vue, la demande des flics du code PIN doit donc au minimum s’accompagner d’une réquisition écrite du procureur exigeant d’accéder à votre téléphone ; deuxième condition : une enquête doit avoir été menée disant que des données du téléphone ont pu être utilisées pour commettre une infraction. En tout état de cause, le moment de la garde à vue ne permet pas de vérifier tout ça."
Donc non, on ne donne pas son code PIN aux flics. Il faut un papier signé du juge ou du procureur.
I am impressed by the quality of these fonts at a glance.
The handwritted LiebeHeide looks amazing. The Trico Script is cool with its three colors, but mostly unreadable.
Etna can be reused easily on websites.
Loggia looks somehow irregular. Collection is well, a strange collection of characters. The Q project font pushes the limit of what a font can be (even animated?!). Sentinel Ornaments uses special characters to display ornaments around texts. Carta Nueva is such a cute penned typeface.
The auhor also list other typefaces without description.
Dans le plus grand des calmes !
Special reward for 2020 🤣
about tree data structures and their diversity
Wow I definitely need to read this on my free time !
Oh shit ! Using HTML instead of a lot of Javascript. Need to be tested.
Bien vrai ! et je préfère être refusé que mal embauché.
Le classique "les mots de passes était en clair" 💥
Avec de bonnes données personnelles bien valides 😞
Le fameux clip qui déchaîne les passions, du président de la République, en passant par une des plus grosses chaîne Youtube suivi en ce moment par 6.39 millions d'abonnés, à la plateforme Youtube.
Si je comprend bien la nouvelle fonction de protection de Firefox, c'est en gros d'activer la fonction "containers" automatiquement sur tous les sites. Pour l'expliquer simplement:
Sans ce système, les cookies tiers ne sont pas compartimentés.
- Vous visitez le site A qui dépose le cookie d'un site tier (B).
- Vous visitez un site C. Le site tier B reçoit le cookie déposé lors de la visite de A.
- B sait que vous avez visité les sites A puis C, puisqu'il y avait le même cookie.
Avec ce système, les cookies tiers sont compartimentés:
- Vous visitez le site A qui dépose le cookie d'un site tier (B).
- Vous visitez un site C. Le site tier B ne voit pas le cookie déposé lors de la visite de A. Il va vous en déposer un nouveau.
- B ne sait pas que c'est vous qui avez visité les sites A et C, car il a reçu 2 cookies différents.
La seule exception sera les cookies utilisés pour les connexions inter-sites (genre "Se connecter avec GitHub").
Exact, j'ai bien compris la même chose.
C'est quand même là qu'on voit la différence dans la manière de penser entre une organisation qui veut protéger votre vie privée (Mozilla) et une autre dont le but est de la monétiser (Google).
Solution de Google pour le problème des cookies tiers: On met une grosse IA totalement opaque dans le navigateur (controllée par Google seul) et qui lit tout votre historique de navigation afin de mieux vous profiler (https://sebsauvage.net/links/?NNbb8w)
Solution de Mozilla: On réfléchit à un système qui vous protège au mieux sans vous bloquer, et en respectant vos données.
Voilà pourquoi je ne veux pas de Chrome/Chromium.
Pour rappel sur l'IA de Google: https://shaarli.lyokolux.space/?0k8Icw
(via https://sebsauvage.net/links/?searchterm=total%20cookie%20protection)
Check the meaning of a dependency version
À propos de l'outil zxcvbn qui permet d'estimer la force d'un mot de passe avec efficience. L'outil est surtout adapté pour l'environnement culturel US.
L'outil est implémenté dans plusieurs langage, voir le README du projet pour cela ! Avec le lien du repository bien sûr 😉
Wow ! I might read this in the future. Seems interesting and full of knowledge !
(via https://sebsauvage.net/links/?xdvSfw)
C'est agréable d'avoir deux avis opposés de libristes francophones importants sur le libre !
A reason to use sqlite for small projects.
SQLite is not client/server, however. The SQLite database runs in the same process address space as the application. Queries do not involve message round-trips, only a function call. The latency of a single SQL query is far less in SQLite. Hence, using a large number of queries with SQLite is not the problem.
An ode for the text:
- most stable & durable
- most flexible
- Pictures may be worth a thousand words, when there's a picture to match what you're trying to say.
- precisely controlled level of ambiguity, precision, context and elaborated content
- most efficient communication technology
- easily indexed, searched, translated
- it is asynchronous, compared, diffed, clustered, corrected, summarized, filtered algorithmically
- it permits multiparty editing, branching conversation, lurking, annotation, quoting, reviewing, struc
- most socially useful communication technology (in 1:1, 1:N, M:N)
Comme WebRTC laisse beaucoup de libertés pour implémenter les communications audio et vidéo entre deux navigateurs, ce RFC indique les bonnes pratiques à utiliser: lorsqu'il y a un serveur central, lors de fédération(s) de plusieurs serveurs de communication; les conditions d'accès à la caméra et au microphone; le consentement entre les pairs communicants; etc...
Il part du principe que le navigateur est un outil de confiance.
Supprimer les fichiers de langues …/plugins/…/lang/…
Des illustrations pour les projets. Sous une licence similaire à la CC-BY-SA-NC.
(via https://sebsauvage.net/links/?TfRHvw)
Yet another tool to create different diagram based on a syntax
Available type of diagrams:
Data Flow Chart, Sequence Diagram, Flowchart Diagram, Graph, Onion Layer, Tree Layout, Horizontal Tree Layout, System Layers, Timeline ❤️, Layer Stack, Mind Map, State Machine, Entity Relationship, Class Diagram
A collection of free single-purpose online tools for web developers...
Different useful tools: triangle generator, color shades generator, gradient generator, page dividers, svg to jsx, svg compressor, base64 encoding, fake data generator, symbols collection, lorem ipsum, css cursors, keyboard events codes.
under the MIT licence.
En mathématiques, une conjecture est une assertion pour laquelle on ne connaît pas encore de démonstration, mais que l'on croit fortement être vraie, en l'absence de contre-exemple.
TL;DR It may works; but don't use literal in python !
42ko d'économisé, sois 50Tb de bande passante !
CSS width and height does not include the border(s) and padding by default. box-sizing: border-box
include them in the border.
The browser calculate a box with max-content
as if it has infinite space. For min-content
, it pretends it has zero space. Easy at the end !
min, max and clamp define boundaries for the box :) Clamp is simply a min-max combined into one: clamp(MIN, VAL, MAX)
Des publications régulières sur des sujets variés
Utiliser les annotations, accessible via self.__annotations__
.
Par exemple pour typer ou vérifier les variables qui arrivent d'une DB sans passer par SQLAlchemy; les exporter en JSON en vérifiant que le format est bien compatible;
Comment tuer la concurrence, par Google:
- De version en version de ton OS, tu restreint les droits des applications pour qu'elles ne puissent plus fonctionner correctement (Par contre tu laisses les pleins droits à tes propres applications).
- Tu implémentes l'équivalent, mais intégré à ton écosystème Google (donc sans ces restrictions).
- Tu flag les applications tierces qui ont les mêmes fonctionnalités comme malveillantes.
Par exemple l'excellente application Cerberus pour retrouver son téléphone.
https://framapiaf.s3.framasoft.org/framapiaf/media_attachments/files/105/694/163/536/377/874/original/000fd8ffd888c399.jpg
(Et peu importe que Google ait une application qui fait exactemenet la même chose (https://www.google.com/android/find), mais inférieure en fonctionnalités, et qui ne peut pas être pilotée par SMS.)Par exemple, pour l'activation du WiFi et du GPS : Google peut se permettre de vous les activer même si vous les avez explicitement coupés, mais il n'est plus possible de donner ce droit à des applications non-Google.
Adding junior engineers makes the senior engineers on his team better, because the constant "Why" questions force them to articulate and confront their own assumptions.
La formule mathématique pour cuire parfaitement des oeufs à la coque !
git tag v1.0.0 8bad64f6e9 -f
: the -f
option force the tag to update if it already exists.
Then push with git push origin --tags --force
Je cite @Sylvhem@eldritch.cafe:
« Richard Stallman invented free software because printers were shitty.
Now we have free software that run on rockets, but the printers are still shitty. »
Un moteur de recherche respectueux de la vie privée, pas seulement un proxy mais un réel outil.
Si on le compare avec les énergies fossibles, le nucléaire tue moins et fait moins de dégâts
Le web c'était pas mieux avant car les pages étaient certes plus légères mais prenaient tellement de temps à ce charger...
Et la compatibilité s'est au final amélioré, même si ce n'est toujours pas parfait.
Le vrai problème, c’est que nos attentes ont évolué encore plus vite.