Message épinglé

Documentez l'avancement de votre projet avec et les commits conventionnels:

Cette convention légère permet d'indiquer l'intention de votre commit d'une façon organisée et lisible par humains et machines.

Exemple:

feat(logging): warn when the content-type header is missing

Ce message indique une nouvelle fonctionnalité dans le module logging ajoutant un message d'avertissement lorsqu'un header est manquant.

🇫🇷 conventionalcommits.org/fr/v1.
🇬🇧 conventionalcommits.org/en/v1.

Une manière classique d'étendre les fonctionnalités d'une librairie est l'ajout de hooks. Un hook permet d'exécuter du code lors d'un événement particulier (après l'initialisation d'une nouvelle requête http par exemple)

Exemple avec un client 🇬🇧 github.com/sindresorhus/got/bl

Une des raisons pour laquelle l'authentification à deux facteurs par clef de sécurité est plus sécurisée que Google Authentificator ou par ex est qu'elle résiste aux tentatives de phishing

Un attaquant peut tout à fait vous demander votre identifiant/mot de passe ET votre code à usage unique pour s'authentifier à votre place

La clef de sécurité ne génère pas un code à usage unique, et ne peut pas être volée sur un formulaire malveillant

mrisher.medium.com/phishing-an

Jules Sagot a partagé

Lorsqu'un serveur HTTP reçoit une requête, il est préférable de valider les données contenues dans cette requête

En effet, la requête pourrait avoir des champs malformés (user_id au lieu de userId par ex) ou de mauvais type ("123" vs 123)

AJV est un package NodeJS permettant de réaliser cette validation de requête, évitant ainsi des bugs liés aux données d'entrées dans votre application

🇬🇧 ajv.js.org/guide/why-ajv.html

Une interface en ligne de commandes (CLI) est très pratique pour réaliser les tâches d'administration de votre projet ⌨️

J'ai choisi le paquet NodeJS Commander npmjs.com/package/commander pour mon CLI

Il m'a fallu une heure pour ajouter une commande réalisant les migrations de la base de données. Un CLI a donc aussi l'avantage de permettre d'administrer son serveur à moindre coût (par rapport à une interface web par ex) ⚡

Vous avez une idée de business mais n'avez pas ou peu couché l'idée sur papier ?

@johackim présente 10 méthodes pour approfondir cette idée et passer à l'étape suivante: le prototype 🚀

johackim.com/10-etapes-pour-pr

La version 0.23.2 de corrigeant le bug de lecture de vidéo est disponible sur le dépôt de l'équipe NewPipe

Voici un tutoriel pour installer le dépôt NewPipe sur F-Droid 🇬🇧 newpipe.net/FAQ/tutorials/inst

Une fois le script de migration écrit, il va falloir configurer la librairie pour qu'elle tienne compte de cette migration

Vous pouvez utiliser une expression avec wildcards qui correspondra aux fichiers de migrations, et préciser la façon dont Umzug doit traiter ces fichiers

Dans notre cas, on exécute simplement le fichier SQL up ou down récupéré avec le wildcard lors de la migration ascendante/descendante

🇬🇧 github.com/sequelize/umzug#add

Pour réaliser une migration de base de données, il faut commencer par définir le périmètre de cette migration. Est-elle liée à une fonctionnalité, une version spécifique ?

On va écrire deux scripts pour ce périmètre de migration: un script d'upgrage qui réalise la migration et un script de downgrade qui l'annule

Si l'application a besoin d'une nouvelle table pour sa version 1.0.0, on créera deux scripts: 1.0.0-up.sql qui contient la création de table et 1.0.0-down.sql qui la supprime

Lors d'un changement de version d'une application web, on a parfois besoin de modifier le schéma de la base de données

Cette modification de la base de données peut être réalisée avec un script de migration, écrit en SQL ou avec un ORM

Si votre application utilise NodeJS, le package umzug permet de réaliser votre migration npmjs.com/package/umzug peu importe l'ORM/driver SQL que vous utilisez

Jules Sagot a partagé

Just moved NodeKit over to @codeberg from G****b.

Old: github.com/small-tech/nodekit

New: codeberg.org/nodekit/app

Will be moving all my other currently active projects over as well in the coming days.

#nodekit #codeberg #github #git #hosting

Jules Sagot a partagé
Jules Sagot a partagé

@gitea needs your help to implement #ActivityPub 🙏

Browse the task list maintained by @ta180m at gitea.com/Ta180m/gitea/issues/, pick one and help #Gitea move towards #federation. If you are not sure how to help, just reply and someone in the @forgefriends community will guide you.

🚀 boost appreciated!

Jules Sagot a partagé

USB-C will be the new standard port for all Europeans.

This means more savings for EU consumers and less waste for the planet:

🔌 mobile phones, tablets, cameras… will all use USB type C
🔌 harmonised fast-charging technology
🔌 unbundling of sale of chargers

#DigitalEU

Jules Sagot a partagé
Jules Sagot a partagé

VSCode isn't timeless enough. It needs to be more like emacs.
---
RT @bbatsov
This morning I've jotted down some thoughts on the topic of making Emacs "modern" batsov.com/articles/2022/06/01 So, who needs modern Emacs?
twitter.com/bbatsov/status/153

Jules Sagot a partagé

I'm shocked and sad about #M66B's (Marcel #Brokhorst) decision to quit work on all his awesome and important #floss #Android #apps #Netguard #FairEmail etc. But I totally understand his resignation, after years of David fighting against #Gooliath. This is were we're heading, folks. See #Pegasus #pMail yesterday. ☹️

Thanks for all your work, support and sacrifices, Marcel. 🙏 All the best and I hope things smh fall into place for you. 🤞

Thanks for nothing, Google. #fckGoogle #redecentralize

Jules Sagot a partagé
Jules Sagot a partagé

De la musique codée sur 24 bits et 192kHz ? Ça ne sert à rien, et c'est l'ingénieur Chris Montgomery, notamment concepteur du codec audio Vorbis, qui l'affirme : people.xiph.org/~xiphmont/demo

Contrairement à une (tenace) idée reçue, une forme d'onde numérique n'est *PAS* un escalier, et vous n'obtenez pas d'escalier lorsque vous convertissez un signal numérique en analogique !

Preuve en vidéo avec exemples à l'appui : xiph.org/video/vid2.shtml (sous-titres FR disponibles)

#audio #musique #audiophile

Plus anciens
Mastodon Chapril

Chapril, membre du collectif CHATONS, un projet de l'April. Une fois votre compte créé, vous pouvez notamment vous abonner au compte de l'April (l'abonnement au compte admin de cette instance étant automatique).