Bonjour LinuxFr,
Cette nuit, j'ai utilisé la dernière IA à la mode dont tout le monde parle pour écrire un petit jeu en ligne. Je n'ai pas écrit une seule ligne de code moi-même, j'ai juste guidé l'intelligence artificielle pour lui faire écrire le code, pour faire le design, puis pour corriger ses bugs, pour ajouter les fonctionnalités une par une. À la fin, je lui ai demandé d'écrire un README pour Github, et de choisir une licence, et j'ai (…)
Journal TousAntiCovid Carnets, sans TousAntiCovid
Bonjour à tous,
Le semaine dernière, ma dépêche sur la vérification de pass sanitaires avec sanipasse a quelque peu déchaîné les passions.
Depuis, j'ai reçu beaucoup de retours, et outre les personnes outrées de l'outrecuidance de proposer une vérification de passe sanitaire, la majorité était très enthousiaste. Je propose donc ici petit résumé de ce qu'il s'est passé sur sanipasse depuis.
Article "French Health Pass"
J'ai écrit un article en anglais sur le fonctionnement technique des passes sanitaires. Je (…)
Sanipasse : le déconfinement libre !
Je suis fier de vous présenter aujourd’hui l’application sanipasse.
Les passes sanitaires
Aujourd’hui, lorsque l’on se fait tester ou vacciner contre le COVID-19, on reçoit une attestation numérique, sous forme d’un QR code, qui prouve que l’on n’est pas contagieux.
Jusqu’à aujourd’hui, la seule application qui permettait de lire ces codes était le fameux TousAntiCovid, qui permet seulement d’importer son certificat sanitaire dans son application, et n’affiche pas la totalité des informations contenues dans le certificat.
L’application officielle de vérification de ces certificats, TousAntiCovid-Vérif est propriétaire, n’est pas publique, et la sécurité de son implémentation ne peut pas être vérifiée. Elle n’est, aujourd’hui, pas disponible aux petits organisateurs d’évènements privés, qui souhaiteraient pouvoir vérifier les certificats de leurs invités.
J’ai donc décidé de créer une nouvelle application, et je l’ai appelée sanipasse.
Journal Regain d'activité sur WBO
J'ai déjà mentionné ici WBO auparavant. C'est mon projet de tableau blanc interactif en ligne sous licence AGPLv3 (version en ligne, github)
Il permet de faire de petits schémas ou des dessins sur une page blanche, qui sont visibles en temps réel par tous les utilisateurs connectés sur la même page. C'est très utile notamment lors d'une visioconférence, lorsque l'on travaille à plusieurs sur une idée qui a besoin d'un support visuel.
Et les visioconférences, en ce (…)
Journal Vélib' et open data
Ce court journal pour vous présenter un petit dataset qui pourrait intéresser certain.e.s d'entre vous (les plus parisien.ne.s):
J'ai récolté l'historique des disponibilités de vélos sur l'ensemble du réseau Vélib' depuis décembre 2019.
Le résultat est sur le dépôt github suivant: lovasoa/historique-velib-opendata.
Pourquoi ?
Paris met à disposition sous licence ODBL la disponibilité des vélibs en temps réel. Mais elle ne fournit aucun moyen d'accéder à l'historique de ces données. C'est dommage, car avoir des données historiques permettrait par (…)
Journal Chaînes de formatage et sécurité en python (solution au "Petit Défi Python")
La semaine dernière, je vous proposais un défi de cybersécurité en python. Si vous ne l'avez pas encore vu, allez tenter votre chance sur Github avant de lire la suite de ce journal, ce sera plus intéressant.
La vulnérabilité
La première étape du défi était de trouver où était la faille de sécurité. L'application étant toute simple, ce n'était pas très difficile. Le script python contient les deux lignes suivantes:
to_format = f"Printing a {self.width}-character wide box: [Age:
(…)
Journal Petit défi Python
Aujourd’hui, je propose à ceux qui s’ennuient un petit défi de cybersécurité en Python.
Voici un script Python qui semble trivial, et qui contient une faille de sécurité :
#!/usr/bin/env python3
import random
SECRET = ''.join(random.choice("0123456789") for i in range(64))
class Sandbox:
def ask_age(self):
self.age = input("How old are you ? ")
self.width = input("How
(…)
Journal regex-wordsearch : Faire une recherche dans le dictionnaire par expression régulière
Les expressions régulières sont un outil très pratique pour rechercher un texte correspondant à un certain motif. Elles sont très connues et leur usage est très répandu parmi les programmeurs, et les informaticiens en général. Cependant, et je pense que c'est dommage, elles ne sont pas enseignées à l'école, et sont assez peu connues de la population générale des utilisateurs de l'outil informatique.
Récemment, ma compagne a été chargée d'une nouvelle mission. Elle doit déchiffrer et traduire du russe en (…)
Journal Une nouvelle interface graphique pour WBO
Il y quelques temps, j'ai évoqué ici WBO, un logiciel libre de dessin collaboratif en ligne (dépêche).
Le logiciel a bien évolué depuis l'annonce précédente, avec quelques nouvelles fonctionnalités, la plus importante d'entre elles étant le zoom qui facilite la navigation à l'intérieur du tableau. Mais la nouveauté la plus visible est sans doute la nouvelle interface graphique, qui vient d'être déployée, et dont je suis plutôt fier.
Voilà une capture d'écran de la nouvelle interface:
Et (…)
WBO : un tableau blanc interactif
WBO est une application Web de dessin collaboratif en temps réel (licence GPL v3). Est‐ce qu’il vous est déjà arrivé de passer plusieurs minutes à expliquer un concept simple lors d’une vidéoconférence alors qu’un petit schéma aurait suffi ? WBO résout ce problème en permettant la création de croquis partagés en temps réel entre plusieurs utilisateurs.
Journal Tous les parsers JSON sont mauvais
Introduction
Ce weekend, je me suis intéressé au langage JSON, aux parsers JSON par défaut de plusieurs langages de programmation, et j'ai fait des découvertes intéressantes.
Je pense que le langage JSON n'est plus à présenter à personne, mais au cas où vous vivriez dans une grotte depuis 1999,
petit résumé rapide: JSON est un format de données, très utilisé notamment sur le web, et qui a l'avantage d'être plutôt compact, assez lisible par les êtres humains, et surtout implémenté (…)
Journal toutf8: autodétecter et convertir de n'importe quel encodage de caractères vers UTF8
Les fichiers textes encodés avec des codecs exotiques, c'est toujours énervant. Il existe des tonnes et des tonnes normes d'encodage de caractères différentes, parfois partiellement compatibles entre elles, qui font qu'ouvrir un fichier texte est parfois une galère.
Personnellement, j'ai souvent le problème avec des sous-titres de films en français où en russes, qui ne sont jamais dans le même encodage de caractère, et dont il faut à chaque fois deviner l'encodage, avant de le convertir.
Pour résoudre ce problème (…)
Retour d'expérience sur sql.js
J'aimerais parler ici de mon expérience lors du développement de sql.js, un port de SQLite en JavaScript. Pour ceux qui ne s’intéressent pas aux technologies du web, la deuxième partie de cette dépêche pourrait quand même vous intéresser, on va parler de SQLite.
Note : cette dépêche a initialement été postée en tant que journal.
Journal web moderne, bases de données et beauté logiciel libre
J'aimerais parler ici de mon expérience lors du développement de sql.js, un port de SQLite en javascript. Pour ceux qui ne s’intéressent pas aux technologies du web, la fin de ce journal pourrait quand même vous intéresser, on va parler de SQLite.
Web moderne
Ceux d'entre vous qui s'intéressent aux technologies modernes du web ont certainement entendu parler d’emscripten, et d’asm.js.
Emscripten est un compilateur de bitcode LLVM en Javascript. Il permet de compiler du (…)
Journal defense.gouv.fr
Ah Nal !
Voilà un petit bookmark intéressant pour ceux qui ont confiance en les compétences informatiques de notre gouvernement : Le réseau du musée de l'homme
Oui, c'est bien le site du ministère de la défense, et oui, la page se termine bien par:
Note
Remember to disable this verbose error page when in production !