Tim a repris une application Visual Basic antérieure à 2000 et écrite avant VB .Net. Elle ajoute un seul zéro aux années inférieures à 1000. Pour le décès de Caesar Augustus en 14 AD, elle produit « 014 ». La forme sur quatre chiffres serait « 0014 ». Aucune date de ce type n'a été enregistrée, et un formatage ultérieur l'a rendue inutile.
Illustration : The Dev Dispatch
Le problème tient en quelques lignes. Le code vérifie si l'année est inférieure à 1000, puis ajoute un zéro. Ce remplissage—présenté comme gérant les dates historiques, la fondation de la Tang Dynasty par exemple—échoue pour toute année antérieure à 1000 AD. Caesar Augustus meurt en 14, d'où « 014 » au lieu de « 0014 ». L'application n'a jamais utilisé ces dates. Un traitement ultérieur s'appuie sur les types de date intégrés, rendant cette logique superflue. La notation hongroise ajoute à l'obscurité; le préfixe vnt reste inexpliqué.
historical-date.vb
mnYear% = CInt(Year(vntDate))
If mnYear% < 1000 Then
msYear$ = "0" & Trim$(CStr(mnYear%))
Else
msYear$ = Trim$(CStr(mnYear%))
End If
Pas de compte ni de mot de passe — saisis simplement ton adresse e-mail et nous t’envoyons un lien de connexion à usage unique. Première visite ? Tout se met en place automatiquement.
Ton évaluation sera appliquée automatiquement après ta connexion.
Vérifie ta boîte mail
Nous avons envoyé un lien de connexion à …. Ouvre-le sur cet appareil — cet onglet te connectera automatiquement.
Rien reçu ? Vérifiez le dossier spam — et marquez le message « Non spam » pour qu'il arrive directement la prochaine fois.
Remy Porter revient sur le premier projet web rémunéré de DJ, écrit à 19 ans. Pour choisir un contenu de bannière, le PHP parcourt les lignes, mémoris…
Une fonction d'authentification utilisée en production contient un TODO et renvoie true pour tout jeton reçu, selon une contribution anonyme. L'identi…
La Partial Function Application arrive dans PHP 8.6 et rend enfin l'opérateur pipe agréable à utiliser. Elle est aussi facile à mal lire. Un partial é…
Claude Code, Cursor, Codex et Grok Build, tout juste passé open source, écrivent désormais du code à toute vitesse. Un preprint de juillet testant 86 …
Commentaires
Pas encore de commentaire — écris le premier.
Lance la discussion
Pas de compte ni de mot de passe — saisis simplement ton adresse e-mail et nous t’envoyons un lien de connexion à usage unique. Première visite ? Tout se met en place automatiquement.
Ton évaluation sera appliquée automatiquement après ta connexion.
Vérifie ta boîte mail
Nous avons envoyé un lien de connexion à …. Ouvre-le sur cet appareil — cet onglet te connectera automatiquement.
Rien reçu ? Vérifiez le dossier spam — et marquez le message « Non spam » pour qu'il arrive directement la prochaine fois.