everyuuid.comest une page simple présentée sous forme de liste, qui affiche côte à côte un index numérique et une chaîne UUID- Chaque entrée se compose d’un nombre long avec des zéros de remplissage et de l’index, puis d’un UUID avec tirets sur la ligne suivante
- La chaîne UUID suit le format UUID V4, dont le troisième groupe commence par
4, avec des valeurs affichées comme497dcba3-ecbf-4587-a2dd-5eb0665e6880 - Le contenu ne fournit aucune explication sur le mode de génération, l’usage, l’API ou le code, et se rapproche davantage d’une consultation directe de la liste elle-même
- La plage vérifiée va de 0 à 49, et l’essentiel des informations de la page se concentre sur le titre et la liste des UUID
Structure affichant côte à côte des nombres et des UUID
- Le titre est Every UUID V4
- Le corps de la page est composé d’une liste répétant des éléments numériques et des chaînes UUID
- La plage résumée va de 0 à 49
Façon dont les éléments sont affichés
- Chaque élément suit une structure sur deux lignes
- Première ligne : une longue chaîne de
0suivie du numéro d’index - Deuxième ligne : une chaîne UUID séparée par des tirets
- Première ligne : une longue chaîne de
- Voici les premiers exemples
000000000000000000000000000000000000 0497dcba3-ecbf-4587-a2dd-5eb0665e6880
- Le dernier élément fourni est le suivant
00000000000000000000000000000000000 4908716598-71f7-4e8b-9fff-e36d2c5d21fe
Une page plus proche d’une liste de données que d’une explication
- Les chaînes UUID utilisent le format d’écriture UUID avec des tirets
- Aucune explication n’est donnée sur le principe de génération des UUID, le critère de tri, l’étendue complète, la fonction de recherche, la licence ou la méthode d’implémentation
- Seule une liste de données est fournie, sans explication technique ni guide d’utilisation
2 commentaires
oh... 👀
Commentaires sur Hacker News
Le plus impressionnant, c’est que la recherche fonctionne réellement. Comme pour tout grand tour de magie, une fois l’explication donnée, cela paraît presque très simple
Pour celles et ceux qui sont curieux, voici un billet expliquant le fonctionnement du projet : https://eieio.games/blog/writing-down-every-uuid/
Au début, je n’ai essayé de chercher que des UUID exacts, puis j’ai été encore plus surpris en découvrant que cela prenait aussi en charge la recherche en texte intégral
Bien sûr, je suis aussi fier du fait que cela offre autant d’utilité pratique. On peut enfin trouver et utiliser l’UUID qui convient exactement à son besoin
J’en ai déduit cela en voyant qu’un résultat différent apparaissait chaque fois qu’on avançait ou reculait dans les résultats ; je me demande combien elle en génère réellement
Cela reste quand même une astuce assez géniale
Au lieu de chercher dans un corpus, on utilise l’entrée pour générer l’index du corpus. Ici, c’est la liste des UUID ; pour un correcteur orthographique, ce serait la liste des mots du dictionnaire
On dirait qu’un hacker a divulgué tous les UUID
Je vais devoir vérifier si mon UUID figure dans la fuite
10b82756-f8b4-4fee-a508-adeadbeef5ebBon, eh bien, il est temps de formater
Très utile. Si j’oublie un UUID, j’irai le consulter. J’utilise aussi toujours ce site pour me souvenir de mes clés privées Bitcoin : https://privatekeys.pw/keys/bitcoin/1
Vraie clé : solde désormais à 0
Parfois, quand je génère un UUID et que je ne l’utilise nulle part, je me sens un peu coupable. J’ai l’impression de l’avoir gaspillé
event_uuid, qui combine un UUID, un grand entier, un numéro de compte et une dizaine d’autres identifiantsC’est très pratique pour faire des jointures quand on ne sait pas sur quelle colonne joindre
SELECT TOP 1...ORDER BY NEWID()pour choisir un seul enregistrement dans une table de plusieurs millions de lignesDes millions d’UUID ont donc été générés, et l’un d’eux a été sélectionné par hasard comme la plus petite valeur, ce qui a renvoyé l’enregistrement associé. Quel gaspillage monumental
Le passage disant que « le navigateur ne voulait pas rendre une fenêtre plus haute qu’un billion de billions de pixels, donc il a fallu gérer nous-mêmes le défilement et le rendu » est amusant. En pratique, quand on essaie ce genre de chose, c’est assez décevant, et on n’approche même pas le billion de pixels
Il y a cinq ans, quand je travaillais chez Fastmail, un client utilisant IE avait mis environ 200 000 e-mails dans sa boîte de réception, ce qui cassait la barre de défilement ; voici donc les limites que j’avais vérifiées à l’époque, et j’en ai revérifié quelques-unes à l’instant
Firefox ignorait autrefois les déclarations interprétées comme supérieures à 17 895 697 pixels. Aujourd’hui, il les borne à ce niveau, mais avec un écart d’environ 3 pixels, donc il n’est pas immédiatement clair de savoir ce qui se passe exactement
IE ignore les déclarations interprétées comme supérieures à 10 737 418.23 pixels. WebKit borne la valeur aux alentours de 2²⁵, soit environ 33 554 432 pixels
Lors de mes anciens tests, Chromium se comportait comme WebKit, mais aujourd’hui il borne vers 22 360 882 pixels. J’utilise actuellement un écran avec un facteur d’échelle de 1,5, donc il est possible que 2²⁵ soit lié aux pixels physiques ; toutefois, je crois que j’utilisais un écran à l’échelle 2× lors de mes premiers tests
J’avais aussi écrit un message plus détaillé avec des liens vers le code source concerné : https://news.ycombinator.com/item?id=34299569
Je suis aussi très curieux de savoir comment ces nombres sont déterminés, et ce qui commence à casser si la limite n’existe pas. Les comportements étranges autour de
clientHeighten donnent peut-être un indice45678910px: https://thewisenerd.com/works/45678910px.htmlJ’aimerais annoncer un nouveau package
npmappeléget-uuid. En interne, il appelleeveryuuid.com, choisit un numéro de ligne aléatoire et renvoie cet UUIDnpmqui utilise ce package et renvoie un GUID après avoir supprimé les-entre les chiffres. Vive la réutilisation du codeEt j’attends aussi avec impatience le jour où je me rendrai compte que ton package ne fait pas exactement ce que je veux et où je le forkerai
Ça me fait penser à https://libraryofbabel.info/. Le site semble hors ligne maintenant, mais on peut essayer l’Archive : https://web.archive.org/web/20241112121646/https://libraryof...
C’est une implémentation amusante inspirée de la nouvelle https://en.wikipedia.org/wiki/The_Library_of_Babel, et elle prétend « contenir toutes les pages possibles de 3 200 caractères ». En revanche, le jeu de caractères est limité et ne contient pas de tirets, donc on ne peut pas y trouver ces UUID
Une lecture à la fois amusante et terrifiante si l’on comprend l’ampleur de très, très grands nombres
Je pensais que ce serait une liste de tous les domaines
.comcorrespondant à des UUID valides. Je me demande combien il pourrait réellement y en avoirMise à jour : déjà partagé dans un autre commentaire : https://news.ycombinator.com/item?id=42342653
Les techniques de compression ont tellement progressé qu’on peut désormais parcourir une page web de plus de 340 undécillions d’octets
Nous vivons vraiment une époque extraordinaire
Je suis étonné de voir un site web qui contient d’un seul coup plus d’un écran de contenu sans afficher une animation de chargement de plusieurs secondes quand on fait défiler
Je me demande si les développeurs d’applications web modernes pourraient exploiter cette technologie d’une manière ou d’une autre
Le matériel informatique est 1 000 fois plus rapide qu’en 1995, il y a 30 ans, mais les logiciels ont tellement gonflé qu’ils restent malgré tout plus lents, ce qui est absurde
Vidéo connexe : « Will Software Stop Getting Slower? » Jonathan Blow
https://www.youtube.com/watch?v=4ka549NNdDk