[…] j'ai plus confiance dans NPM/PyPI/[…] pour empaqueter correctement une lib […]
Je suis le mainteneur de quelques paquets sur NPM et PyPI, et je ne vois pas ce qui aurait pu m'empêcher d'y mettre n'importe quoi. Du coup, il me semble bien que faire confiance à un paquet sur NPM/PyPI revient à faire confiance au quidam qui l'a empaqueter.
Pour ma part, les paquets que j'ai mis sur NPM/PyPI ne dépendent d'aucun autre paquet dont je ne suis pas le mainteneur. C'est d'ailleurs un argument de « vente » de mes bibliothèques, cependant plus pour des considérations de légèreté que de sécurité.
Tiens, je viens de voir qu'il y a maintenant un bouton Report malware dans NPM…
Pour nous émanciper des géants du numérique : Zelbinium !
Pour autant que je sache, le noyau Linux est essentiellement codé en langage C. Or, il n'était pas, et ça ne l'est toujours pas, inhabituel de coder les SE en langage C. Le commentaire en question ne s'applique donc pas dans le cas de Linus codant Linux en langage C, à moins que le terme « jadis » ne fasse référence à une autre épisode de sa vie…
À la limite, ce commentaire aurait pu s'appliquer à la réécriture de Unix par Thompson et Ritchie, car ils ont alors utilisé un tout nouveau langage spécialement développé dans ce but, à savoir… le langage C :-). Mais c'était une autre époque…
Pour nous émanciper des géants du numérique : Zelbinium !
L'avantage, avec Termux, c'est que ce n'est pas cantonné à Python, et ça donne un avant-goût de ce qu'est Linux à ceux qui ne connaissent pas. Et, concernant les toolkits graphiques, il y a un paquet sous Termux (python-tkinter ; pas testé) qui permet d'installer Tkinter.
Mais il est clair que, pour programmer, un ordinateur, portable ou fixe, est, de loin, préférable à un smartphone ou une tablette. Mais ce sont ces derniers auxquels les jeunes ont généralement accès en premier de nos jours…
Pour nous émanciper des géants du numérique : Zelbinium !
Même chose, avec un professeur qui a tenté d'utiliser ma HP-28S pour calculer la moyenne des élèves pour les bulletins…
Les élèves avaient abandonné l'idée de me l'emprunter depuis que le professeur de mathématique l'avait qualifiée de « Rolls-Royce des calculatrices » (sic) et expliqué comment fonctionnait la notation polonaise inversée…
Pour nous émanciper des géants du numérique : Zelbinium !
Si ton rejeton était au lycée ou à la fac, il aurait probablement déjà un smartphone, et il pourrait alors s'initier à Python avec Termux (Android) ou iSH (iOS), en installant les paquets adéquats.
Quitte à subir le phone-qui-sert-à-tout, autant en tirer le maximum…
Pour nous émanciper des géants du numérique : Zelbinium !
À noter qu'un piano bien accordé a des octaves dont le rapport en fréquences n'est pas exactement de deux (sauf peut-être pour l'octave centrale), comme le voudrait la théorie…
Pour nous émanciper des géants du numérique : Zelbinium !
Ahhh, l'assembleur sur le ZX81…
En ce qui me concerne, je n'avais qu'un désassembleur. Du coup, je programmais directement en langage machine, utilisant le désassembleur pour vérifier si je ne m'étais pas trompé dans les opcodes. Et je vérifiais plutôt deux fois qu'une, car la moindre erreur se soldait souvent par un redémarrage. Il fallait alors réinstaller le désassembleur, ce qui prenait un certain temps, vu que l'installation se faisait à partir d'une cassette audio…
Pour nous émanciper des géants du numérique : Zelbinium !
Histoire de ne pas avoir un train de retard, il faudrait aussi se pencher sur la recharge sans fil…
Et qu'en est-il de la charge rapide ? Est-ce juste une question de puissance ou est-ce qu'il y a communication entre le chargeur et le smartphone ? Et, dans ce dernier cas, le protocole est-il standardisé ? Parce que si on est obligé d'avoir le chargeur propre à chaque marque pour bénéficier de la charge rapide, USB-C ou pas, on n'aura rien gagné…
Pour nous émanciper des géants du numérique : Zelbinium !
Un pass sanitaire est un certificat numérique matérialisé par un code QR. Celui qui est en possession d'un certificat correspondant à une vaccination complète + délai qui va bien, même s'il est postérieurement testé positif (ce qui reste possible même en étant vacciné), il lui suffit de présenter le certificat correspondant à la vaccination pour être considéré comme possédant un pass valide.
C'est une démarche similaire qui est évoqué dans ce journal. Au lieu d'utiliser le certificat des 3 injections, invalide car trop récent, l'auteur va utiliser dans l'intervalle celui, valide, correspondant aux 2 injections.
Les codes QR correspondants aux certificats peuvent simplement être imprimés sur papier ; on peut donc en accumuler autant que désiré. Seul compte celui présenté lors d'un contrôle.
Quant à l'application TousAntiCovid, l'on peut y stocker plus d'un certificat. J"en connais qui, en plus du leur, y stocke celui d'un tiers (conjoint…), au cas où ce dernier ne serait pas en mesure de présenter le sien. Là aussi, seul compte celui présenté lors d'un contrôle.
Le stockage des certificats dans TousAntiCovid n'est qu'une facilité. Le pass sanitaire n'est en rien lié à l'application TousAntiCovid. On peut imprimer le code QR correspondant, le stocker sur son smartphone sous forme d'image, ou y stocker le PDF qui l'accompagne, et présenter n'importe lequel de ces documents lors d'un contrôle.
Pour nous émanciper des géants du numérique : Zelbinium !
Selon un reportage que j'ai vu à ce sujet, avec ce service, il ne sera pas nécessaire de présenter le pass sanitaire à l'embarquement. Vu que ce dernier va devenir obligatoire pour certains trajets, il devra nécessairement être traité en amont, et je doute que ce sera TousAntiCovid Verif qui sera utilisé…
Pour nous émanciper des géants du numérique : Zelbinium !
On peut se connecter à Ameli avec son compte des impôts (entre autres) en passant par FranceConnect, via le bouton correspondant présent sur la page de connexion…
Pour nous émanciper des géants du numérique : Zelbinium !
Plus sérieusement, plusieurs indices pointent à du rot13:
aucun secret n’est donné, donc l’algo est probablement “absolu”
on est dans un contexte très relax, donc OP n’a probablement pas passé 10 plombes à chiffrer son message, et ne s’attend pas à ce que les lecteurs y passent 10 plombes non plus, donc le déchiffrement est probablement accessible en ligne en 2 secondes avec une bête recherche Google
le message ne contient que des lettres, donc l’algorithme ne fait probablement rien de bien compliqué niveau chiffrement: un charactere est mappé vers un autre charactere, plutôt que de travailler sur un block qui mapperait vers de l’hexa “aléatoire”>
la structure du message chiffre ressemble beaucoup à une vraie phrase: longueur des mots, avec notamment l’apostrophe
… le message ressemble à une prière d'un adepte de Cthulhu.
Pour nous émanciper des géants du numérique : Zelbinium !
J'avais corrigé la version GUI, mais j'avais oublié de reporter la correction dans la version CLI. Comme la simulation prend pas mal de temps avec les paramètres par défaut, j'ai rajouté l'affichage de la progression.
Au final, ça donne :
#!/usr/bin/env python3fromrandomimportrandintfromstatisticsimportmean,median,pstdevimporttimeNB_PEOPLE=500AMOUNT_START=2000NB_LOOP=5000000RATE=0.2DRATE=0.05defpays(customer,seller,base):# no advantage for the poorest as no poorestifseller==customer:customer-=base*RATEseller+=base*RATE# poorest receive the money so add DRATE in the transferelifseller>customer:customer-=base*(RATE+DRATE)seller+=base*(RATE+DRATE)# poorest pay the money so deduct DRATE in the transferelse:customer-=base*(RATE-DRATE)seller+=base*(RATE-DRATE)returncustomer,sellerpeople=[AMOUNT_START]*NB_PEOPLEtimestamp=time.time_ns()for_inrange(0,NB_LOOP):# select two random peoplewhileTrue:a=randint(0,NB_PEOPLE-1)b=randint(0,NB_PEOPLE-1)ifa!=b:breakbase=min(people[a],people[b])people[a],people[b]=pays(people[a],people[b],base)iftime.time_ns()-timestamp>1500000000:print(f"{round(100*_/NB_LOOP)}%",end='\r')timestamp=time.time_ns()print(f"{round(100*_/NB_LOOP)}%",end='\r')# final, show the resultspeople=sorted([int(p)forpinpeople])print(f"Last tranfert base: {base}.")print(f"people: {', '.join(str(p) for p in people)}")print(f"avg: {mean(people)} | median: {median(people)} | pstdev: {pstdev(people)}")
#!/usr/bin/env python3fromrandomimportrandintfromstatisticsimportmean,median,pstdevNB_PEOPLE=500AMOUNT_START=2000NB_LOOP=5000000RATE=0.2DRATE=0.05defpays(customer,seller,base):# no advantage for the poorest as no poorestifseller==customer:customer-=base*RATEseller+=base*RATE# poorest receive the money so add DRATE in the transferelifseller>customer:customer-=base*(RATE+DRATE)seller+=base*(RATE+DRATE)# poorest pay the money so deduct DRATE in the transferelse:customer-=base*(RATE-DRATE)seller+=base*(RATE-DRATE)returnseller,customerpeople=[AMOUNT_START]*NB_PEOPLEfor_inrange(0,NB_LOOP):# select two random peoplea=randint(0,NB_PEOPLE-1)b=randint(0,NB_PEOPLE-1)base=min(people[a],people[b])people[a],people[b]=pays(people[a],people[b],base)# final, show the resultspeople=sorted([int(p)forpinpeople])print(f"Last tranfert base: {base}.")print(f"people: {', '.join(str(p) for p in people)}")print(f"avg: {mean(people)} | median: {median(people)} | pstdev: {pstdev(people)}")
[^] # Re: Developers: Let distros do their job
Posté par Claude SIMON (site web personnel) . En réponse au lien "Si vous maintenez une distribution Linux, je vous en supplie, n'utilisez pas Flatpak et Snap". Évalué à 3.
Je suis le mainteneur de quelques paquets sur NPM et PyPI, et je ne vois pas ce qui aurait pu m'empêcher d'y mettre n'importe quoi. Du coup, il me semble bien que faire confiance à un paquet sur NPM/PyPI revient à faire confiance au quidam qui l'a empaqueter.
Pour ma part, les paquets que j'ai mis sur NPM/PyPI ne dépendent d'aucun autre paquet dont je ne suis pas le mainteneur. C'est d'ailleurs un argument de « vente » de mes bibliothèques, cependant plus pour des considérations de légèreté que de sécurité.
Tiens, je viens de voir qu'il y a maintenant un bouton
Report malware
dans NPM…Pour nous émanciper des géants du numérique : Zelbinium !
# Pas libre, mais…
Posté par Claude SIMON (site web personnel) . En réponse au lien Visual Studio Code dans votre navigateur. Évalué à 5.
…peut-être qu'on aura un jour un https://vscodium.dev…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Discussions intéressantes sur HackerNews
Posté par Claude SIMON (site web personnel) . En réponse au lien Kerla : OS en Rust. Évalué à 6.
Pour autant que je sache, le noyau Linux est essentiellement codé en langage C. Or, il n'était pas, et ça ne l'est toujours pas, inhabituel de coder les SE en langage C. Le commentaire en question ne s'applique donc pas dans le cas de Linus codant Linux en langage C, à moins que le terme « jadis » ne fasse référence à une autre épisode de sa vie…
À la limite, ce commentaire aurait pu s'appliquer à la réécriture de Unix par Thompson et Ritchie, car ils ont alors utilisé un tout nouveau langage spécialement développé dans ce but, à savoir… le langage C :-). Mais c'était une autre époque…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: 86% des recruteurs ne trouvent personnes pour leur poste
Posté par Claude SIMON (site web personnel) . En réponse au lien La maîtrise de l'orthographe et de l'expression orale est "fondamentale" pour 86% des recruteurs. Évalué à 5.
Ah ça, ça dépend de la BD :-) !
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: paywall…
Posté par Claude SIMON (site web personnel) . En réponse au lien Calculatrice NumWorks : Oui, les calculatrices existent toujours, et elles fonctionnent avec Python. Évalué à 3.
L'avantage, avec Termux, c'est que ce n'est pas cantonné à Python, et ça donne un avant-goût de ce qu'est Linux à ceux qui ne connaissent pas. Et, concernant les toolkits graphiques, il y a un paquet sous Termux (
python-tkinter
; pas testé) qui permet d'installer Tkinter.Mais il est clair que, pour programmer, un ordinateur, portable ou fixe, est, de loin, préférable à un smartphone ou une tablette. Mais ce sont ces derniers auxquels les jeunes ont généralement accès en premier de nos jours…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: paywall…
Posté par Claude SIMON (site web personnel) . En réponse au lien Calculatrice NumWorks : Oui, les calculatrices existent toujours, et elles fonctionnent avec Python. Évalué à 2.
Il y avait aussi le RPL, le langage de programmation de certaines HP.
Tout comme la RPN, ce langage s'appuyait sur une pile, et ça donnait donc :
mais on pouvait aussi écrire :
voire carrément :
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: paywall…
Posté par Claude SIMON (site web personnel) . En réponse au lien Calculatrice NumWorks : Oui, les calculatrices existent toujours, et elles fonctionnent avec Python. Évalué à 3.
Même chose, avec un professeur qui a tenté d'utiliser ma HP-28S pour calculer la moyenne des élèves pour les bulletins…
Les élèves avaient abandonné l'idée de me l'emprunter depuis que le professeur de mathématique l'avait qualifiée de « Rolls-Royce des calculatrices » (sic) et expliqué comment fonctionnait la notation polonaise inversée…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: paywall…
Posté par Claude SIMON (site web personnel) . En réponse au lien Calculatrice NumWorks : Oui, les calculatrices existent toujours, et elles fonctionnent avec Python. Évalué à 2.
Si ton rejeton était au lycée ou à la fac, il aurait probablement déjà un smartphone, et il pourrait alors s'initier à Python avec Termux (Android) ou iSH (iOS), en installant les paquets adéquats.
Quitte à subir le phone-qui-sert-à-tout, autant en tirer le maximum…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: « Google is evil »
Posté par Claude SIMON (site web personnel) . En réponse au journal Google is evil : ce qu’on trouve dans une plainte contre eux. Évalué à 4.
Je viens découvrir que c'est aussi disponible sous forme d'extension pour Firefox : https://addons.mozilla.org/en-US/firefox/addon/nitter-redirect
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: « Google is evil »
Posté par Claude SIMON (site web personnel) . En réponse au journal Google is evil : ce qu’on trouve dans une plainte contre eux. Évalué à 5.
Je crois que https://nitter.net était utilsé au détour d'un commentaire.
Ça donne respectivement ça et ça pour les fils mentionnés dans ce journal…
Pour nous émanciper des géants du numérique : Zelbinium !
# Soit dit en passant…
Posté par Claude SIMON (site web personnel) . En réponse au journal CPU Ex0174 BASIC pour débutants. Évalué à 1.
…, par rapport au titre, le BASIC est, par définition, pour débutants, BASIC étant l'acronyme de Beginner's All-purpose Symbolic Instruction Code…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Diapason
Posté par Claude SIMON (site web personnel) . En réponse au journal "Corps Célestes", musique libre pseudo-classique. Évalué à 4.
À noter qu'un piano bien accordé a des octaves dont le rapport en fréquences n'est pas exactement de deux (sauf peut-être pour l'octave centrale), comme le voudrait la théorie…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Sniff
Posté par Claude SIMON (site web personnel) . En réponse au journal Clive Sinclair bronsonisé. Évalué à 4. Dernière modification le 21 septembre 2021 à 17:38.
Ahhh, l'assembleur sur le ZX81…
En ce qui me concerne, je n'avais qu'un désassembleur. Du coup, je programmais directement en langage machine, utilisant le désassembleur pour vérifier si je ne m'étais pas trompé dans les opcodes. Et je vérifiais plutôt deux fois qu'une, car la moindre erreur se soldait souvent par un redémarrage. Il fallait alors réinstaller le désassembleur, ce qui prenait un certain temps, vu que l'installation se faisait à partir d'une cassette audio…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Recyclage
Posté par Claude SIMON (site web personnel) . En réponse au lien Professionnels, ne dites plus « smurfing » mais « schtroumpfage ». Évalué à 3.
… weekend est plus rapide à dire que
fin de semainevacancelle… :-)Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: et USB-C ?
Posté par Claude SIMON (site web personnel) . En réponse au lien L’Allemagne exige 7 ans de mise à jour et de pièces détachées pour les smartphones. Évalué à 4.
Histoire de ne pas avoir un train de retard, il faudrait aussi se pencher sur la recharge sans fil…
Et qu'en est-il de la charge rapide ? Est-ce juste une question de puissance ou est-ce qu'il y a communication entre le chargeur et le smartphone ? Et, dans ce dernier cas, le protocole est-il standardisé ? Parce que si on est obligé d'avoir le chargeur propre à chaque marque pour bénéficier de la charge rapide, USB-C ou pas, on n'aura rien gagné…
Pour nous émanciper des géants du numérique : Zelbinium !
# Imaginez que ça se répande…
Posté par Claude SIMON (site web personnel) . En réponse au lien Les coiffeurs sont des blagueurs. Évalué à 10.
http://www.bouletcorp.com/2009/09/17/
Pour nous émanciper des géants du numérique : Zelbinium !
# Ahhh, les grands-mères et le bicarbonate de soude…
Posté par Claude SIMON (site web personnel) . En réponse au journal J'ai mangé une pomme. Évalué à 10.
http://www.bouletcorp.com/2017/11/02/recettes-de-grand-mere/ (Linux inside (si si !)).
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Question conne
Posté par Claude SIMON (site web personnel) . En réponse au journal Troisième dose. Évalué à 6.
Un pass sanitaire est un certificat numérique matérialisé par un code QR. Celui qui est en possession d'un certificat correspondant à une vaccination complète + délai qui va bien, même s'il est postérieurement testé positif (ce qui reste possible même en étant vacciné), il lui suffit de présenter le certificat correspondant à la vaccination pour être considéré comme possédant un pass valide.
C'est une démarche similaire qui est évoqué dans ce journal. Au lieu d'utiliser le certificat des 3 injections, invalide car trop récent, l'auteur va utiliser dans l'intervalle celui, valide, correspondant aux 2 injections.
Les codes QR correspondants aux certificats peuvent simplement être imprimés sur papier ; on peut donc en accumuler autant que désiré. Seul compte celui présenté lors d'un contrôle.
Quant à l'application TousAntiCovid, l'on peut y stocker plus d'un certificat. J"en connais qui, en plus du leur, y stocke celui d'un tiers (conjoint…), au cas où ce dernier ne serait pas en mesure de présenter le sien. Là aussi, seul compte celui présenté lors d'un contrôle.
Le stockage des certificats dans TousAntiCovid n'est qu'une facilité. Le pass sanitaire n'est en rien lié à l'application TousAntiCovid. On peut imprimer le code QR correspondant, le stocker sur son smartphone sous forme d'image, ou y stocker le PDF qui l'accompagne, et présenter n'importe lequel de ces documents lors d'un contrôle.
Pour nous émanciper des géants du numérique : Zelbinium !
# Linux sous Android
Posté par Claude SIMON (site web personnel) . En réponse au lien Faites tourner Linux nativement sur vos téléphones et tablettes. Évalué à 4.
Un autre moyen, plus facile à mettre en œuvre, d'avoir Linux sur sa tablette/son téléphone Android : Termux.
Un petit commentaire sur le sujet que j'avais écris à l'occasion d'un journal : https://linuxfr.org/users/tla47/journaux/apps-open-source-pour-android#comment-1859279
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Et TousAntiCovid Verif ?
Posté par Claude SIMON (site web personnel) . En réponse au lien Le code source de TousAntiCovid publié, mais... il est incomplet et sous licence propriétaire. Évalué à 4.
Pour Air France, je crois que c'est probablement déjà le cas :
https://corporate.airfrance.com/fr/communique-de-presse/air-france-lance-ready-fly-un-service-de-verification-des-documents-de-voyage
Selon un reportage que j'ai vu à ce sujet, avec ce service, il ne sera pas nécessaire de présenter le pass sanitaire à l'embarquement. Vu que ce dernier va devenir obligatoire pour certains trajets, il devra nécessairement être traité en amont, et je doute que ce sera TousAntiCovid Verif qui sera utilisé…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: effectivement
Posté par Claude SIMON (site web personnel) . En réponse au journal Améli et la Souveraineté Numérique. Évalué à 10.
On peut se connecter à Ameli avec son compte des impôts (entre autres) en passant par FranceConnect, via le bouton correspondant présent sur la page de connexion…
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Je préfère les énoncés simples mais hyper compliqués à résoudre
Posté par Claude SIMON (site web personnel) . En réponse au journal Deux petits problèmes de math niveau lycée.. Évalué à 5.
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Code ?
Posté par Claude SIMON (site web personnel) . En réponse au journal Un article de "Pour la science" m'ayant amené à coder pour une petite vérification perso.... Évalué à 2. Dernière modification le 23 juillet 2021 à 08:07.
J'avais corrigé la version GUI, mais j'avais oublié de reporter la correction dans la version CLI. Comme la simulation prend pas mal de temps avec les paramètres par défaut, j'ai rajouté l'affichage de la progression.
Au final, ça donne :
Pour essayer en ligne :
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Code ?
Posté par Claude SIMON (site web personnel) . En réponse au journal Un article de "Pour la science" m'ayant amené à coder pour une petite vérification perso.... Évalué à 3.
Il me semble que c'est celui de ce commentaire : https://linuxfr.org/users/fdf/journaux/un-article-de-pour-la-science-m-ayant-amener-a-coder-pour-une-petite-verification-perso#comment-1860111, mis à part le problème de virgule signalé au commentaire qui suit.
Voici la version corrigée :
On peut la tester ici : https://replit.com/@AtlasTK/LFR124926-cli-python (ça prend du temps avant que le résultat ne s'affiche).
Et la version avec une GUI, pour pouvoir modifier les paramètres sans avoir à modifier le code source : https://replit.com/@AtlasTK/LFR124926-python.
Pour nous émanciper des géants du numérique : Zelbinium !
[^] # Re: Common Lisp
Posté par Claude SIMON (site web personnel) . En réponse au journal Un article de "Pour la science" m'ayant amené à coder pour une petite vérification perso.... Évalué à 5.
Voilà la version Python, mais avec une interface graphique ; ça permet de plus facilement jouer avec les paramètres : https://replit.com/@AtlasTK/LFR124926-python
Pour nous émanciper des géants du numérique : Zelbinium !