Aller au contenu
OneKitly
Daniel Okonkwo

Articles de Daniel Okonkwo

Développeur front-end et rédacteur Tech · Voir le profil

· 14 min de lecture

Construire un tableau Markdown de zéro, sans compter les tirets à la main

La plus petite chose qui soit encore un tableau tient en deux lignes : une ligne d'en-tête et une ligne de séparation. Voici pourquoi la seconde est obligatoire en GitHub Flavored Markdown, où les tableaux à barres n'existent pas du tout, et ce qu'un générateur fait que la saisie manuelle ne peut pas faire.

· 15 min de lecture

XML vers JSON : attributs, répétition et le piège du tableau à un seul élément

Deux documents qui ne diffèrent que par le nombre d'enfants produisent deux formes JSON différentes, et aucun convertisseur ne peut les distinguer sans schéma. Plus ce que celui-ci fait réellement des attributs, du contenu mixte et des espaces — et la seule chose qu'il ne sait toujours pas consigner.

· 16 min de lecture

CSV vers JSON : les cinq cas qui cassent tous les convertisseurs

Délimiteurs entre guillemets, sauts de ligne intégrés, types ambigus, en-têtes en double et encodage. Chaque cas a été passé dans le convertisseur et la sortie exacte est reproduite ici — y compris les deux qu'il ne rattrape pas.

· 8 min de lecture

Découper un fichier trop gros pour être envoyé

Le dernier recours quand plus rien ne peut être compressé. Cela fonctionne, avec trois arêtes vives : les morceaux ne servent à rien seuls, l'ordre est absolu, et le mégaoctet que tu régles n'est pas celui de la limite.

· 20 min de lecture

Transformer des notes en un PDF qui mérite d'être archivé

Le texte brut n'a pas de mise en page : tout convertisseur doit donc en inventer une pour toi. Voici exactement les décisions que prend celui-ci — page, marges, police, retours à la ligne — ce qu'il fait d'une tabulation et d'une longue ligne, et ce qu'il te reste à ajouter pour qu'une note mérite d'être conservée.

· 20 min de lecture

Pourquoi ton CSV casse les accents et les dates dans Excel

Trois pannes totalement différentes se cachent derrière la même phrase. L'une est l'encodage, l'autre le séparateur, la troisième Excel qui devine des types en ouvrant le fichier — et le remède diffère pour chacune. Voici comment les distinguer en cinq secondes.

· 19 min de lecture

Couper et assembler de l'audio sans clic à la jointure

Ce petit clic à l'endroit du montage n'est pas un défaut du logiciel. C'est une marche dans la forme d'onde, et une marche est de l'énergie large bande — soit la définition même d'un clic. Voici l'arithmétique, mesurée, et les deux endroits où poser une coupe pour qu'il ne se produise jamais.

· 16 min de lecture

Nettoyer un texte en désordre : l'ordre des opérations qui compte vraiment

Retirer les balises avant de décoder les entités, couper les espaces avant de dédupliquer, écraser les blancs en dernier. Trois ordres exécutés dans Node, un pipeline de neuf étapes dans le bon sens, et les caractères invisibles — U+00A0, U+200B, U+FEFF — qui survivent à tout nettoyage naïf.

· 16 min de lecture

MP3, WAV, FLAC : ce que chaque conversion détruit réellement

L'un de ces formats stocke les échantillons, un autre les mêmes échantillons compressés, le troisième une supposition sur ce que tu aurais entendu. Quelles conversions entre eux sont gratuites, lesquelles sont seulement coûteuses, et lesquelles sont des portes à sens unique — avec l'arithmétique de chacune.

· 15 min de lecture

Récupérer le son d'une vidéo sans une deuxième génération de perte

La bande-son de ta vidéo est déjà passée une fois par un encodeur avec perte. Que l'extraction t'en coûte une seconde dépend entièrement du bouton choisi parmi les trois — et « extraire en MP3 », celui vers lequel tout le monde se tourne, est celui qui coûte.

· 17 min de lecture

L'encodage d'URL expliqué : le pourcentage et là où ça coince

L'encodage par pourcentage se décide composant par composant, et c'est de là que vient toute la confusion. Une barre oblique est légale dans un chemin et doit être échappée dans une valeur de requête ; une espace est %20 dans un chemin et peut être + dans un corps de formulaire. Voici les ensembles exacts de la RFC 3986, les trois fonctions JavaScript qui divergent, et les pièges.

· 14 min de lecture

Pourquoi un GIF de trois secondes pèse plus lourd que la vidéo d'origine

Un GIF n'a pas de vraie compression vidéo : chaque image est une image entière, plafonnée à 256 couleurs. Cela donne une arithmétique que tu peux faire de tête — largeur fois hauteur fois nombre d'images — et trois leviers à tirer quand la fenêtre d'envoi dit que le fichier est trop lourd.

· 17 min de lecture

Entropie d'un mot de passe : ce qu'un indicateur de robustesse ne peut pas savoir

L'entropie mesure le processus qui a produit un mot de passe, pas les caractères qui le composent. H = L x log2(R) n'est vrai que si chaque caractère a été tiré au hasard — c'est précisément pourquoi un indicateur qui note un mot de passe inventé par un humain sur ses classes de caractères mesure la mauvaise chose.

· 17 min de lecture

Ce qu'il y a dans un JWT — et ce qu'il ne protège pas

Un JWT est signé, pas chiffré. Quiconque détient le jeton peut décoder la charge utile et lire chaque revendication. Voici un vrai jeton, décodé sans aucune clé, plus les trois attaques que la signature est censée arrêter et le seul problème qu'elle ne peut pas résoudre.

· 12 min de lecture

Quelle résolution vidéo choisir, et ce que chaque palier coûte en mégaoctets

Passer du 1080p au 720p ne divise pas l'image par deux : cela retire 56 % des pixels, et nettement moins que cela du fichier. Voici l'échelle avec les vrais comptes de pixels, des débits honnêtes et le poids de trois minutes à chaque palier — plus la raison pour laquelle une source à faible débit ne rétrécit presque pas.

· 13 min de lecture

camelCase, snake_case, kebab-case : laquelle, et pourquoi tu choisis rarement

Les conventions ne relèvent pas du goût. Le trait d'union est l'opérateur moins : kebab-case ne peut donc pas être un identifiant dans la plupart des langages - et c'est précisément pourquoi CSS et les URL l'utilisent. Avec en prime l'aller-retour sur les acronymes qui corrompt les noms en silence, et la règle qui le corrige.

· 15 min de lecture

Faire passer une vidéo sous une limite d'envoi sans tâtonner

Le curseur de qualité ne sait pas viser une taille de fichier — ce n'est pas son rôle. Mais la limite et la durée de ton plan fixent déjà le débit auquel tu as droit, et une division te dit si la résolution que tu utilises peut seulement tenir.