Aller au contenu
Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Mon TOP des codes informatiques ésotériques (JSFuck, Turing Paint, PiFS…etc)

Êtes-vous développeur ? Et quel est le langage que vous utilisez ? Python ? C++ ? PHP ? Java ?

En matière de développement, tout est toujours très normé. Les langages, les plateformes, les systèmes qui les exécutent… etc. Tout fonctionne de manière logique, en suivant des règles établies, décrites dans de la doc technique, des RFC…etc. Mais que se passerait-il dans votre cerveau cartésien si je vous disais que certains langages, certaines plateformes voire certains systèmes informatiques ne respectent aucune norme informatique établie et jouent uniquement selon les propres règles de leurs créateurs ?

Qui a dit que ça devait être logique l’informatique ? Est-ce qu’inventer un langage de dev impraticable ou à but artistique a un sens ? Pas forcément, mais c’est beau… C’est parfois du génie, toujours très inspirant et aussi amusant de tordre les conventions établies et de casser les codes de ce qui se fait dans le domaine de l’informatique.

Je suis tombé par hasard sur le site Esoteric.codes qui justement traite de toutes ces approches originales et j’en ai vu qui m’ont beaucoup plu et que je vais vous détailler ici. A voir maintenant quel éditeur vous conviendra pour développer dans ce que je vais vous présenter.

Au sommaire :

Turing Paint

Dans le cas de Turing Paint, il s’agit tout simplement de dessiner les instructions du programme dans un bon vieux MS Paint. Instructions qui sont alors suivis par l’interpréter qui suit les traits dessinés en noir, jusqu’à une intersection (une branche) noire, bleue ou rouge et chaque intersection a sa propre instruction ce qui fait de ce schéma tout moche un circuit avec des portes logiques.

Un exemple de schéma Turing Paint

PingFS

Le PingFS, c’est encore un concept bien barré puisqu’il consiste à stocker dans le cloud de la donnée sans véritable l’écrire dans un espace de stockage. Le concept est simple, la data est découpée et ajoutée à des paquets ICMP qui rebondissent d’une machine à une autre, un peu comme un jonglage infini. Ainsi, rien n’est stocké, mais votre donnée est bien présente… Original non ?

Schéma PingFS

The 128-Language Quine Relay

Autre projet de génie, le 128 Language Quine Relay qui consiste à créer un programme en Ruby qui générera un programme en Rust qui à son tour produira un programme en Scala et ainsi de suite, passant au total par 128 langages de développement pour déboucher au final sur du code en Ruby… Je vous l’avais dit que c’était très conceptuel.

Liste des 128 langages utilisés par Quine Relay

FolderFS

FolderFS est un système de fichiers qui stocke la donnée uniquement dans les noms de dossiers de Windows. Et comme un dossier Windows pèse 0 ko et est considéré comme une donnée structurelle, le délire c’est de se dire que sa donnée pèse zéro kilo-octet. C’est rigolo, mais bien évidemment limité à quelques milliards de dossiers sous Windows.

BodyFuck

Le BodyFuck, c’est le langage qui va permettre aux développeurs de perdre leurs petits kilos en trop. Ici, le principe est simple : Programmer avec les mouvements de son corps. Il vous faudra bien sûr une webcam.

Si vous sautez, ça augmente la taille d’un registre. Si vous vous accroupissez, ça la baisse, si vous bougez à gauche ou à droite, ça swap les registres mémoire ou place un pointeur…etc.

Open & Shut

Open & Shut est un projet magnifique puisqu’il permet d’écrire sans toucher son clavier. Comment est-ce que cela est possible ? Et bien grâce au morse. En ouvrant et fermant l’écran de votre ordinateur, vous pourrez composer vos meilleures punchlines jusqu’à ce que les charnières pètent.

Exemple d'écriture en morse avec Open & Shut

JSFuck

Inspiré du langage BrainFuck, le JSFuck consiste à produire du JavaScript avec uniquement 6 caractères. Oui, je sais c’est fou, mais ça fonctionne !

Démo de JSFuck

PiFS

Alors celui là, je crois que c’est mon préféré. Comme toutes les données ne sont finalement qu’une suite de nombre, sachez qu’il est possible de les trouver dans la suite de Pi. Car Pi n’est pas réductible algébriquement parlant et n’importe quelle séquence de nombre s’y trouvera forcément. Il suffit donc de considérer que tout ce qui compose votre vie numérique est présent dans Pi, et se reposer entièrement sur des pointeurs qui diront au système d’exploitation où aller chercher les données.

Page de recherche dans le nombre Pi

C’est beau ! Ne cherchez pas d’utilité à tout ça, ni vraiment de sens. C’est simplement pour la beauté des algos et de l’art !

Si tous ces concepts et bien plus encore vous plaise, je vous invite à jeter un œil au site Esoteric.codes.


Les articles du moment