Ivre, il écrit une fonction qui pèse 100 Mo pour savoir si un nombre est pair
Les amis, on ne va pas se mentir : en tant que développeurs, vous êtes forcément déjà tombés sur des aberrations de programmation, qui ont probablement su vous donner de belles sueurs froides.
Je pense notamment à ces forçages à gros coups de IF ou SWITCH (qui a connu les GOTO ?), incrustés dans le code du fait d'une mauvaise conception, souvent parfois par flemme, et pour certains cas dans l'urgence ("TODO : refactoriser ce bout de code", OUAIS OUAIS, C'EST ÇA OUAIS !).
Qui sait, vous avez peut-être même quelques-unes de ces petites abominations à votre actif ? 👀
Rassurez-vous : il existe bien pire que tout ce que vous avez pu voir ! Au détour de mon surf sur les internets, je suis tombé sur un package JavaScript assez... particulier. 😅
Sobrement prénommé is-even (comprenez "est pair"), celui-ci se présente comme une fonction visant à indiquer si le nombre qui lui est transmis en paramètre est pair.
Seul hic, son unique fichier pèse quasiment 100 Mo (94,8 Mo pour être précis) ! Vous avez bien lu. CENT. P*****. DE. MEGA. OCTETS.
Alors comme moi à mon arrivée sur la page de ce projet, vous devez probablement vous demander quoi le fuck ?! GitHub s'avoue d'ailleurs lui-même vaincu face à la taille du fichier pour sa preview :
Mais figurez-vous que c'est bien lorsque l'on force l'ouverture dudit fichier que toute la magie opère :
ET BIM !
Des IF. Des ELSE. De la condition de grosse brutasse (comparaison stricte avec le triple égal), et de l'alternance true/false, évidemment.
Et c'est comme ça jusqu'à 1 000 001.
Avouez que du coup, on comprend mieux les 100 Mo. 👀
Rassurez-vous : ce projet du développeur vénézuélien Samuel Mariña, qui comptabilise 1200 étoiles sur GitHub et pas moins de 195 forks (😱) est bien évidemment à caractère humoristique. Il suffit pour cela de jeter un œil à son README :
"Ce projet est 100% sérieux et a été créé pour aider la communauté. Il y a beaucoup de situations où les jeunes développeurs éprouvent des difficultés pour déterminer si un nombre est pair, alors j'ai décidé de les aider en créant ce magnifique package. Avec un peu de chance, celui-ci sera un jour complet..."
Afin d'aider encore plus de monde dans sa démarche, on notera que Samuel a également pensé à créer le package is-odd, qui permet de savoir si un nombre est... impair (ben ouais, non mais fallait y penser aussi) !
On espère néanmoins pour lui et les contributeurs de son projet que le fichier a été généré de manière automatisée. 👀
Rappelons gentiment que le moyen le plus simple pour déterminer si un nombre est pair est la division par 2 : si le reste (modulo, opérateur % en JavaScript) de celle-ci vaut zéro, c'est que votre nombre est pair. 😉
À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.
Articles similaires
Pour la blague, il invente MordorJS : un outil où chaque ligne fait un seul caractère
Les meilleurs easter eggs cachés dans vos langages et outils de développeurs
Pour la blague, il invente MordorJS : un outil où chaque ligne fait un seul caractère
Les meilleurs easter eggs cachés dans vos langages et outils de développeurs
Insolite : il crée un langage de programmation avec des M&M's
Guide Michelin 2025 : un code spaghetti décroche sa première étoile
Plus de contenu
Quand on me transmet une doc technique de 500 pages
C'était sans compter sur la lib
Aucune hésitation possible
Quand le commercial me demande d'avoir un peu plus d'entrain face au client
Quand je relis une doc technique que j'ai écrit il y a 4 ans
Quand je corrige un bug juste en remplaçant == par ===
Quand le commercial s'engage sur des délais sans nous consulter en réunion client
Quand je tombe sur un projet en ligne qui va me faire gagner plusieurs jours de dev
Quand on me transmet une doc technique de 500 pages
C'était sans compter sur la lib
Aucune hésitation possible
Quand le commercial me demande d'avoir un peu plus d'entrain face au client