Poupi et Boulonix

Il y a quelques années de ça, je brillais dans les salons parisiens.

Plus exactement, on se retrouvait à plein dans une coloc de potes et on piachait comme des otaries alcooliques ayant raté la 5ème étape de leur sevrage. C’est des bons souvenirs.

L’un des potes organisait des sortes de potlatch d’échange. Tu viens avec un cadeau, tu repars avec un autre. Les créations personnels étaient encouragées, même si dans les faits, la plupart des potes achetait un truc. Sauf moi, qui suis une otarie alcoolique très très créative.

J’avais fait ça :

La personne qui l’a reçu a décidé de l’appeler Poupi. Bon, chacun ses choix.

Il était très viril, avec sa machoire géante. Mais certaines pièces ne tenaient pas très bien et ses pattes étaient toutes molles. Il était systématiquement affalé. C’était une sorte de chien glandeur.

À présent, je brille dans les salons-événements corporate de ConcreteWorld.🌏, comportant eux aussi des potlatchs d’échange. Il y aura un prochain article relatant le dernier en date, en attendant, je peux déjà vous présenter la création que j’y ai apportée.

Il s’appelle Boulonix. Cette fois-ci, c’est moi qui ai choisi le prénom.

Le corps est une plaque métal d’un lecteur de DVD. Ça a été un peu compliqué à enrouler, mais l’avantage c’est qu’elle a plein de petits trous de vis, dans laquelle j’ai pu passer des fils électriques.

Les pattes sont des boîtes de thé en métal dont j’ai tordu un côté. J’ai percé des trous dedans pour faire passer un fil et l’accrocher au corps. Mais ça ne lui permettait pas de tenir. Les pattes s’écartaient et le chien se couchait par terre. Or, je voulais vraiment faire mieux qu’avec Poupi.

Alors, pour chaque patte, j’ai percé un trou au milieu, j’y ai fait passer un fil que j’ai ensuite accroché de l’autre côté du corps. C’est un peu bancal, il se tient dans une position bizarre, mais au moins il n’est pas vautré tel une otarie alcoolique.

La tête est une boîte en plastique de coriandre, périmée depuis 2015. J’aurais préféré un matériau plus noble, mais comme ça c’était facile de percer des trous dedans (pour les yeux, la bouche, etc.).

Les oreilles sont des cuillères à absinthes avec le manche plié. C’est amusant parce que ça sous-entend que je suis un mec qui boit de l’absinthe, à la Van Gogh peintre maudit. En vrai, c’est bidon. On trouve de l’absinthe un peu partout maintenant, car ils ont retiré le produit qui rend fou et n’ont gardé que l’alcool.

J’ai rempli l’intérieur du corps et de la tête avec du papier bulle, ça aide à donner l’impression que c’est un vrai chien avec des organes, et pas juste un squelette vide.

Il possède bien évidemment un collier à son nom. C’est une médaille de gosse que j’ai trouvé par terre, sur laquelle j’ai collé des bouts de fil. Le collier en lui-même est une lanière de badge corporate, estampillée ConcreteWorld.🌏. Ça a beaucoup fait rire les collègues quand ils ont vu ça.

Son petit manteau vert pour pas qu’il ait froid est également très stylé. C’est une chute d’un chemin de table provenant d’une orgie quelconque.

Je suis particulièrement fier du fait que je n’ai pratiquement pas mis de scotch (un matériau pas noble du tout, même pour de la récup). Tout ne tient que par les fils électriques.

Les seuls bouts de scotch utilisés sont sur l’un des trous de la boîte à coriandre (j’avais percé comme un bourrin, et ça a fait une sorte de fissure dont j’ai voulu limiter la propagation), ainsi que pour refermer le manteau. Je m’y suis autorisé, car le manteau n’est pas le chien en lui-même.

L’élément le plus hautement raffiné, c’est le flexible de douche traversant tout le corps, de la bouche jusqu’au trouduc’. On peut donc donner à manger à Boulonix. Il se nourrit de petites vis et de composants électroniques. Ensuite, on l’incline vers l’arrière et il cacate sa nourriture. Trop bien.

C’est par là que sortent les petites vis.

On notera que le flexible de douche est l’un de mes matériau de prédilection, puisque c’est également ce qui fait la queue de Poupi.

En voyant ce chef-d’œuvre, une Colléguette m’a demandé si elle pouvait en avoir un pour son bureau. Je ne vais pas pouvoir résister à une telle occasion de flatter mon ego. Il est donc fort possible que je fabrique un autre chien dans les mois à venir. Mais ce ne sera pas pour tout de suite, là j’ai envie de coder quelques trucs.

Et pour rester dans le thème, voici Ajay Rochester qui promène son chien.

 

#copinage : Ode à Caïssa

Coucou, et Joyeux Anniversaire-de-Isaac-Newton à tous !

Vous vous souvenez certainement de mon petit article sur le polar « Sans droit ni loi ».

Jacques-Yves Martin a réitéré son forfait, et nous a sorti l’épisode suivant des aventures de Boris Thibert le policier justice-holique.

Il a même re-réitéré son forfait puisqu’il a déjà pondu un troisième livre, mais je ne l’ai pas encore lu. On va donc rester sur « Ode à Caïssa » pour l’instant.

Dans cet opus, notre policier-justicier est plongé dans une enquête avec pillage de tombe maya, trafic mafieux d’objets d’art, recherches archéologiques, et vodka pour arroser le tout.

Comme je suis le critique littéraire le plus original du monde, je vous propose mon avis sous forme de plan basique j’aime / j’aime pas.

 

Les trucs qui m’ont énervé

*)

Parfois, pour désigner un personnage, l’auteur n’indique pas son nom, mais sa qualification ou son métier. Au lieu d’écrire ça :

Gilbert Trouzlup ouvrit la porte.

Il écrit ça :

L’universitaire ouvrit la porte.

Je suppose que ça part d’un bon sentiment, et que le but est d’éviter de trop nombreuses répétitions de « Gilbert Trouzlup ». Mais je trouve que ça ampoule fortement le style d’écriture. On se croirait dans un livre de grammaire du collège.

Le mec bizarre en noir ouvrit la porte noire bizarre.

*)

Le héros est assez tourmenté, et se lance souvent dans des réflexions et des songes alambiqués et turlupinesques. C’est tout à fait acceptable et c’est entièrement assumé. Ce qui m’énerve, c’est que lesdits tourments sont trop explicitement décrits.

On retrouve très souvent dans la narration le motif suivant : un dialogue de quelques phrases entre le héros et un autre personnage, puis un paragraphe expliquant les tourments que ce dialogue a déclenché dans son esprit. Eh bien ce paragraphe est à chaque fois un peu trop long et un peu trop détaillé.

On l’a compris que le héros était tourmenté, on arrive assez facilement à deviner ce que déclenche en lui chaque dialogue. Ce n’est pas la peine de le blablater en long en large en travers.

Quelques exemples (décrits assez vaguement, pour pas spoiler) :

  • Page 148 : dialogue entre Boris et Marion, suite au coup de fil « de l’universitaire ».
  • Page 153 : re-dialogue entre Boris et Marion, après l’invitation à dîner.
  • Page 158 : réaction de Boris à une remarque du mec de la BRB, au sujet de Marion.
  • Page 168 : turlupinage au sujet de l’affaire Dufrêne, suite à une mise en garde de son chef de service.

 

Les trucs qui m’ont plu

*)

Les tourments et les songes de Boris.

Je viens de dire dans le paragraphe précédent que le fait de les décrire trop explicitement m’énervait. Mais le fait qu’il ait des tourments et la nature de ses tourments me plaît, et donne de la profondeur au personnage.

*)

Le code indéchiffrable.

Il est relativement simple, mais l’idée est bonne. Et le lecteur motivé pourra essayer de le décrypter de lui-même. (Je dois avouer que je n’y suis pas arrivé).

Pour le coup, et en rapport avec le pinaillage que j’ai fait lors de mon article sur son précédent livre, je pense qu’il aurait fallu écrire « un code indécryptable », et non pas « un code indéchiffrable ». Mais je pinaille, je pinaille.

Un code indéscrichicryptiblable.

*)

La logistique autour de l’activité de fouilles et de trafic d’œuvre d’art.

C’est peut-être une conséquence des films d’Indiana Jones, mais on a souvent tendance à croire que la découverte de trésors archéologiques se résume à une aventure de quelques jours avec de l’action, des flingues, des explosions, un trou dans le sol, et hop c’est fini.

C’est évidemment un peu plus compliqué que ça. Les recherches préalables peuvent prendre des années, le transport et la vente (légal ou pas) peuvent prendre des semaines. C’est assez bien décrit dans le livre, et je suppose que c’est assez réaliste, même si je n’y connais rien dans ce domaine.

*)

Les relations entre le héros et les autres personnages, génératrice de tourments, bien évidemment.

Sa copine Camille, sa coéquipière Marion, son chef, ses collègues, les personnes qu’il interroge, etc. Boris est constamment en train de se demander ce qu’ils pensent, s’il est à la hauteur de leur confiance ou leur amitié, pourquoi ils ont réagi comme ci ou comme ça. Il y a un bon tas de psychologie là-dedans qui est tout à fait intéressant.

*)

Je suis mentionné dans les remerciements !

L’auteur salue ma « chouette » participation et mon coup d’œil aiguisé. Si ça c’est pas la classe !

 

Pour la suite

Les premières pages de « Sans Droit ni Loi » mentionnait (un peu par hasard), la cité maya de Chichén Itzá. Ce livre y accorde une part beaucoup plus importante. Je ne sais pas si ça a été fait exprès. Parfois, on place des éléments narratifs dans une histoire en se disant « ça servira peut-être pour après ».

Si j’ai bien tout suivi, le troisième roman de Jacques-Yves Martin ne fait pas intervenir Boris Thibert. Mais peut-être qu’une histoire prochaine remettra sur la scène ce héros et tous les éléments narratifs pré-installés. Nous avons maintenant à notre disposition un super-méchant, un changement important dans la vie personnelle de Boris, une nana paumée en cure de désintoxication, sans oublier Franck, l’ami d’enfance qui ne demanderait qu’à être réutilisé de manière plus conséquente. Tout cela promet d’être captivant.

Maya Milano, ça a presque un rapport avec la culture Maya

Eleet Codeurz !!

Dans mon article précédent, je me la suis pété parce que je suis un super blogueur.

Maintenant, je me la pète en tant que super-codeur.

CodinGame

J’ai récemment découvert le site Coding Game, qui me plait beaucoup. Le concept de coder un bot de jeu qui va s’opposer à d’autres bots est très amusant. Et j’avoue être devenu un petit peu dépendant aux Clash of Code. Ce sont des challenges d’un quart d’heure contre d’autres gens, dans lesquels il faut écrire un petit algo assez simple. Il y a trois modes de compétition : être le plus rapide, écrire le code le plus court possible, ou être le plus rapide mais en déduisant ce qu’il faut faire uniquement à partir des tests d’exemples.

On peut également proposer ses challenges et ses puzzles. Pour l’instant, j’ai contribué à la hauteur de deux Clashs, qui ont été acceptés. Et j’ai encore d’autres idées. Youwouwou.

Je suis à une position respectable dans le classement global. Quant au classement spécifique du Clash of Code, je me promène glorieusement parmi les 100 (voire les 50) premiers. Sur un total mondial de 100 000 personnes. Brag ! Brag !

47ème

Galvanisé par ces honneurs, et alors que je me prenais une dose de CommitStrip, je tombe sur un concours de code organisé par un machin quelconque. Je m’inscrit, participe, et après 2 heures de chauffage de neurones, j’obtiens la classieuse place de 47ème.

Vous pouvez voir les résultats ici (https:// www. blogdumoderateur.com/resultats-battledev-novembre-2018/).

Je trouve un peu étrange qu’il y ait plusieurs participants nommés « mon_pseudo_xxx ». Ça ressemble à quelqu’un qui a triché et qui s’est inscrit plusieurs fois pour avoir plusieurs cadeaux. Mais d’un autre côté, tricher de cette manière en utilisant des pseudos semblables serait particulièrement stupide. Bon, osef.

Il y avait des cadeaux pour les 45 premiers. Pas de bol pour moi. Mais je n’aurais pas su quoi en faire. Je veux pas aller à Las Vegas, et si je gagne une console de jeux, je vais encore me faire chronophager. 47ème, ça me va très bien.

Pas tout à fait un contest de code, mais un contest quand même.

Par contre, je me demande si y’aurait pas moyen de tricher un peu à leurs compétitions.

Lorsqu’on envoie son code, celui-ci est testé sur des données d’entrées, que l’on peut récupérer en écrivant dans la sortie (stderr).

Bien entendu, on n’a pas accès aux résultats attendus, afin d’éviter des solutions stupides codées en dur, du style :

data_in = input()
solutions = {
    "data_in_1": "solution_1",
    "data_in_2": "solution_2",
    "data_in_3": "solution_3",
    ...
}
print(solutions[data_in])

Les deux derniers exercices du concours peuvent être résolus avec une solution bourrine, codée rapidement mais nécessitant beaucoup de temps d’exécution. Le système ne l’accepte pas, car il y a une limite. Si le code proposé tourne pendant plus de quelques secondes sans renvoyer de solution, il est arrêté automatiquement.

Or donc, il doit être possible de coder à la porcasse la solution bourrine, de la faire tourner avec les données d’entrées sur son ordinateur à soi (ou sur un super-calculateur dopé à la testostérone), et de récupérer les solutions attendues. Il ne resterait plus qu’à soumettre une solution moche en dur contenant ces solutions, hop ni vu ni connu j’t’embrouille.

Je ne sais pas si ça marche, je n’ai pas eu l’occasion de tester. Pour l’avant-dernier exercice, j’avais trouvé la solution élégante. Pour le dernier, j’ai eu du mal, et le concours était déjà clôturé depuis une demi-heure lorsque j’ai trouvé la solution bourrine. Pas assez bon pour tricher !

Sur CodinGame, ce genre d’astuce idiote ne marche pas, car les Clash of Code ont deux types de tests :

1) Ceux montrés à l’utilisateur. On connait les données d’entrée et les données de sortie. Ils sont joués lorsqu’on envoie son code pour test, avant l’envoi final. Le résultat est clairement affiché.

2) Les valideurs. On ne connait ni les entrées ni les sorties. Ils sont joués uniquement lors de l’envoi final du code. Ce sont eux qui comptent. Ça permet d’éviter complètement les solutions codées en dur ou précalculées bourrinement.

Quand le Clash est bien construit, chaque valideur correspond à un test. C’est à dire qu’un code « honnête » qui échoue à un test devrait échouer au valideur correspondant. Un code « malhonnête » réussit tous les tests, mais échoue à tous les valideurs.

Dans la réalité, ce n’est pas toujours le cas. Pour certains Clash mal fichus, on peut se retrouver avec des codes honnêtes passant tous les tests mais échouant à un ou deux valideurs. En général ça énerve. C’est le jeu ma pauvre Lucette.

Il faut trouver l’algorithme permettant de trouver la solution pour pouvoir tricher et proposer un code fournissant directement la solution.

Prout !!

Après me l’être pété avec mon blog et mes talents de codeur, je vais maintenant me la péter avec mes prouts (ha ha ha !) (en fait non, j’ai pas l’intention de me la péter avec ça).

Depuis plusieurs années, dans toutes les entreprises dans lesquelles je travaille, je tente de faire des vœux de non-flatulence. Je ne les tiens jamais. Ni les vœux, ni les prouts.

Je suis heureux et fier de vous annoncer que j’affiche actuellement un uptime de non-flatulence boîtale de plusieurs semaines ! Ça a l’air stupide et puéril, dit comme ça, mais le caca, le pipi et les prouts sont pour moi des notions fondamentales constituant une base de mon existence. C’est important pour moi et je ne me pensais pas forcément capable de réussir cet exploit d’abstinence gazeuse. Je le dois à mes voisines d’open-space, qui sont (il faut bien le dire), des personnes un peu tatillonnes concernant les conventions de bienséance.

Malheureusement, cet exploit m’a fait découvrir une caractéristique inconnue de mon corps, qui me plonge dans d’incommensurables tourments.

Lorsque je me retiens, les gaz de prouts se répartissent dans mes tuyaux internes, dérèglant mon fonctionnement biologique et provoquant des bruits incongrus. Si c’était juste des gargouillis de ventre, ce ne serait pas gênant, voire plutôt rigolo. Mais c’est pas le cas. Mon corps saturé en pétogaz émet des sortes de « ♪♫ ppûûûûûûûû », qui semblent provenir du bas (c’est à dire des intestins proche de l’anus). Je fais des bruits de prouts sifflants alors que je ne proutte pas ! Et vu que ce ne sont pas des prouts, je ne peux pas les retenir !

J’ignore si les collègues autour de moi entendent ces bruits. J’ignore s’ils comprennent ce que c’est ou s’ils croient que ce sont des vrais prouts. Je n’ose rien dire. Je plonge dans la folie des conventions sociales. J’ai peur.

La solution toute simple aurait été d’aller aux toilettes à la moindre petite envie, afin d’éradiquer toute particule de gaz proutal qui aurait tenté de squatter mon corps. Sauf que ça ne fonctionne pas. Pour une raison que je ne m’explique pas, l’envie de prout s’évapore (ha ha) pendant que j’effectue le trajet depuis mon burlingue-open-space jusqu’aux toilettes.

C’est peut-être le fait de se lever et de marcher, qui fait bouger mes organes de sorte que les gazoprouts se réorganisent et se replient stratégiquement pour ne pas être éjecté au moment où je serais sur le trône. Je pousse je pousse et rien ne sort. Ou alors c’est peut-être le changement de température, qui modifie le taux de concentration des proutogazs et déclenche une reconfiguration de l’entropie. Mystère. Et dès que je reviens à mon burlingue, l’envie se ressent à nouveau.

Si quelqu’un a une solution pour ça, j’achète. Je suis prêt à tester n’importe quoi : des mouvements de yoga prouto-déclencheurs, des massages d’anus, une machine sonique temporelle qui annule rétroactivement tous les sons d’une zone donnée dans une période donnée, … Je prends tout.

Merci d’avance.

Ce blog a presque 10 ans et demi

Je-ne-sais-plus quand, je-ne-sais-plus quelle marque de voiture avait décidé de faire une campagne marketing sortant un peu de l’ordinaire, et avait fêté les « dix ans et demi » de sa caisse.

Le premier article de ce blog est paru en juin 2018. Je vous propose donc une campagne marketing qui méta-sorte de l’ordinaire, en fêtant ses « presque 10 ans et demi ».

Joyeux presque-demi-anniversaire, nom de dieu de bordel à cul de pompe à sperme d’enculerie de chiotte de Jérôme Cahuzac à merde de vieille pute borgne de blog !

Et comme le veut la presque-demi-coutume, voici une presque-demi-rétrospective en vrac.

Pendant presque 10 ans et demi, ce blog a amassé :

du texte, des images, des dessins, des seins, des fesses, des top modèles de femmes rondes, très rondes, très très rondes, du nu, de l’érotisme, de la pornographie, du pixel art, des réflexions sur le fabuleux monde du travail, des pétages de plombs, des jeux vidéos, de la culture jeu-vidéoludique, du théâtre, des maths, des algorithmes, du python 2, du python 3, du Korn Shell, du Pascal, du C++, un roman dont vous êtes l’héroïne, des contributions à feu le magazine 42, une campagne de crowdfunding, des chansons pipi-caca, des contes sur le Revenu de Base Inconditionnel, des récits corporate, de la masturbation physique et intellectuelle, du hacking, des bitcoins, de la monétisation hasardeuse d’urls, de l’alsacien, des commentaires intéressants/rageux/stupides/réconfortants/amicaux/constructifs/destructeurs/spammesques/sources-imagesques/chaotiques, des couleurs de textes vomitives, des fiches cuisines désespérantes, des liens vers mes articles chez Sam et Max, des souvenirs, des soupapes de sécurité nécessaires, de la karmagraphie, de l’alcool, des Collègues Machin, Des MégaChefs Bidules, des relectures à 3 heures du matin et des énumérations à rallonge.

Merci à toutes ces femmes aux formes harmonieuses qui offrent des images d’elles à l’internet, et que je collecte avec avidité.

Merci à Ginger BBW, Monique, Alicia Loren, Norma Stitz, Zohra, Shiva Glamour, Buffie, Sasha, Milena Velba, Curvy Nurse, Selene, Keisha Evans, Simone Fox, Eden Mor, Maritza Mendes, Charda XL, Jenny Hill, Diamond, Minka, Ice Kreams, Shauna Moon, Dawn Perignon, Stefani, Victoria, Viva La Valerie, Serenity Davis, Hitomi Tanaka, Ashley, Assshley, Rhonda, Cherrylicious, Chessie Moore, La Cicciolina, Honey Juggs, Teddi Barrett, Mandy Blake, Princess Lissa, Colette Pillow Boobs, Taylor Stevens, Bootyliscious, Victoria Secret, Scented Kisses, Amazon Kitty, Chelsea Charms, Thunder Thighs, Chloe Vevrier, Diana Doll, Lolo Ferrari, Miss Mina BBW, Sicilia Curves, Lady Snow, Busty Merilyn, Cassie Bombshell, Nadine Jansen, Karola, Lisa Lipps, Leah Jane, QT Pie, Melonie Rose, Anorei Collins, Renee Ross, Ariana Angel, Sofia The Rose, Busty Babydoll, Shameless Angel, Re-Victoria, Miosotis Claribel, Plump Princess, Haydee Rodriguez, Desiree Devine, Platinum Puzzy, Lana BBW, Tiffany Towers, Alice Webb, Juicy Jacqulyn, Beshine, Beth Ditto, Juicy Little Fat Girl, Jade 125Q, Dors Feline, Rachel Aldana, Denise Milani, Mya Jane, Uniquely Made Diva, Summer Lashay, Gloria Sutters, Dominican Poison, Lady Seductress, Re-Monique, Veronica Bottoms, Megan Belet, Velvet D’Amour, Cotton Candi, Miss D.G., Spicee Cajun, Kati, Maria Moore, Lacey Wildd, BBW Secret, Natalie Fiore, Mz Buttaworth, Shanice Richards, Roxxy, Kaori, Lailani, Mara Jane, Treasure Chest, Peaches Larue, Mary Boberry, Lisa Canon, Micky Bells, BBW Cajun, Lorna Morgan, Gigi Starr, Jezra Matthews, Poetry Travis, Disha, Clémentine Desseaux, Tweety Is Tumbln, Britt, Tess Holliday, Mistress Cathy, Winking Daisys, Kellie Kay, Xdragon Queenx, boundqueen, BBW Superstar XXX, Cassandra Calogera, Ashley Ellison, Miina Kanno, Whitney Thore, Joy, Courtney Pearson, Jordan Carver, Miss Twin Towers, Jamie Lopez, Tokyo Rose et une foule d’autres dames inconnues mais splendoyantes.

Certaines d’entre elles ont des vies pas aussi faciles et amusantes que ce qu’elles montrent sur leurs photos. D’autres sont carrément mortes. Essayons de nous en rappeler de temps en temps. Ceci est bien entendu valable pour toutes les autres personnes qui exposent professionnellement leur corps sur internet (hommes ou femmes, avec rondeurs ou pas).

Pour fêter ça, voici l’une des toutes premières images pornographiques que j’ai récupéré d’internet. Ça devait être en 1999. J’avais pas internet à la maison, mais je faisais un boulot d’été de prestige : développement d’un intranet en HTML statique, d’une base de donnée Access, ou quelque chose du genre. Il n’y avait pas de contrôle boîtal à cette époque transitive.

Par contre, je ne sais pas du tout qui c’est.

Tout au long de ces années, je vous ais fait de nombreuses promesses de textes et autres créations, dont une grande partie n’a jamais été tenue et est tombée aux oubliettes. Au début, j’essayais d’écrire au moins deux articles par mois, pour ensuite passer à un par mois. Et même avec cette diminution, cette cadence a, elle aussi, été parfois galvaudée de manière scabreuse. Le calendrier affiché à droite en est un malheureux témoin.

Mais je suis toujours là. Je m’accroche, comme un capitaine (crochet), comme une émission de télé (crochet), comme une pine (hochet), comme un brochet, comme un gros chais, comme un troquet, comme un torché. Et j’égrène mes énumérations. Il serait d’ailleurs très amusant que je vous énumère toutes les énumérations effectuées ici.

J’ai plein d’idées de code, de jeux vidéos et de sites web. Très peu arrivent à l’aboutissement. Certains n’arrivent même pas à l’étape de commencement. Mais autant que possible, je continuerais ce blog. C’est un fil conducteur dans la nébuleuse inachevée de mes projets et de mon histoire.

Merci de me lire et de m’avoir lu, de commenter et d’avoir commenté, depuis le moment où vous avez commencé de me lire et de commenter, jusqu’au moment où vous arrêterez / avez arrêté de me lire et de me commenter.

 

Encore des petites icônes en pixel art

Et hop, c’est cadeau.

J’ai refait un jeu de piste pour amuser mes collègues de ConcreteWorld.🌏. Pour être précis, c’est un challenge de hacking. Un peu comme ce qu’on trouve sur le site root-me.org.

Je n’ai pas voulu vous montrer mon précédent challenge, car il est pourrissable et je préfère ne pas l’ouvrir au grand public.

Je ne peux pas non plus vous décrire le challenge que je viens de créer, car il révèle quelques vulnérabilités d’outils utilisés en interne dans la boîte. Rien de grave ni de tonitruant, mais je vais éviter de brailler ça sur tous les toits.

Pour vous consoler, je vous donne tous les petits icônes que j’ai dessinés pour les flags intermédiaires.

J’en ai profité pour ajouter la catégorie « dessins » dans ce blog. Va falloir que je reparcours tous mes articles pour les recatégoriser. Ça me rappellera quelques souvenirs. Chouette.

Ces icônes pixel-art ont été fait sous Paint.Net. Paint, ça permet de faire de la peinture. La peinture c’est bien :

Ah, et sinon, je me suis inscrit sur root-me. Mais pour l’instant je n’y ai pas fait grand-chose. Peut-être plus tard.

 

À la chopraine ! Comme on disait dans les années 90.

Vieille soirée du nouvel an chez Gloubiboulga

Les fonds de tiroir de mes anciens écrits continuent d’être raclé à en faire des copeaux, avec cet article provenant d’un résumé de soirée datant de plus de 10 ans. Pas de raison précise pour laquelle j’irais sortir ça maintenant plutôt que pas-maintenant.

Ça s’est passé dans la société Gloubiboulga, dont j’ai déjà pondu un article relatant un week-end à Barcelone.

Dans le but de rester cohérent avec mes récents récits corporate, quitte à être pas-cohérent avec le sus-mentionné récit corporate gloubiboulguien, les personnages seront précédés de leur titre de noblesse : « Collègue X », « Chef Y », etc. Alors qu’avant j’utilisais les titres neutres « Monsieur », « Madame ».

On n’est plus à ça près. Go !

Je téléphone à Chef Ion car je ne parviens pas à trouver le restaurant de rendez-vous. Celui-ci est dans la rue du Bourg L’Abbé. J’étais dans le passage du Bourg L’Abbé. J’ai jamais pu supporter ces connards qui donnent le même nom à plusieurs trucs d’une même ville.

Bourre l’abbé.

Pour rappel : à Gloubiloulga, j’officie en tant qu’ouvrier-codeur-prestataire missionné ad vitam eternam « en régie ». Par conséquent, je ne connais pratiquement pas mes collègues de boîte. Disons que le peu qu’ils connaissent de moi provient du fameux week-end sus-mentionné.

Tout le monde attend devant l’entrée du restau comme des gentils petits macarons. MégaChef Poulet est là. Un collègue quelconque que je ne connais pas m’aborde et me demande si je suis bien un gloubiboulguien. Je réponds par l’affirmative. Il s’excuse et m’explique que s’il a posé la question, c’est parce que juste avant, un autre collègue a fait une blague et lui a fait croire qu’une nana random qui passait par là faisait partie de la boîte. Ha ha ha. Ambiance complètement fofolle, dites donc.

Nous entrons et investissons la salle spécialement privatisée pour nous (j’adore ce novlanguisme).

Collègue Scofield, membre du CE et principal organisateur de la soirée, nous propose de nous asseoir.

« Asseyez-vous et buvaillons », nous suggère notre collègue.

Certes, il a le pouvoir (voire le devoir) de nous ordonner cela, dans le but de faire progresser la soirée le long de sa timeline. Mais quand même je trouve qu’il aurait pu y mettre un peu plus de tact, préparer le terrain psychologiquement, etc.

Vous l’avez deviné : gros stress général, plus personne n’ose bouger. Qui va s’asseoir où ? Comment être sûr de se retrouver à côté de personnes socialement compatibles et hiérarchiquement équivalentes ? Par quoi commencer ? La banquette ou les chaises ? La table rectangulaire ou la ronde ? En plus, il reste encore des gens dans le vestiaire, ce qui provoque un surcroît d’incertitude dans les variables du système.

Et là, est-ce que tu sais ce qu’il fait, lecteurtrice ? Nan mais est-ce que tu sais ce qu’il fait ? Il amorce le mouvement, et va se poser pil poil au milieu de la banquette ! L’air de rien, comme s’il avait fait ça toute sa vie !

L’heure n’est plus à la réflexion : mouvements désordonnés et anarchiques de tous les Gloubiboulguiens. Je me cacafouille complet et échoue sur une chaise, avec Chef Ion à ma droite et MégaChef Poulet à ma gauche. NOM TE TIEU TE PUTAIN TE PORTEL TE MERTE !!!

Gloubiboulguiens rush

Les entrées arrivent. Tartare de saumon. Après un temps supposé raisonnable, le serveur reprend lesdites entrées. Je manque de me faire piquer ma part que j’avais pas finie, mais je réagis au quart de tour et obtiens le droit de consommer ma dernière bouchée. Un jour, j’organiserai des concours de mangeage lentement.

Soirée sans thème spécifique, ou en tout cas, pas un qui aurait nécessité des danseuses de flamenco. Y’a juste le serveur qui se donne l’air d’être homosexuel jusqu’à l’œsophage, mais en vrai il fait semblant pour attirer les nanas. L’ambiance est chaude et cosy, avec des lumières tamisées et des petites bougies flammotant sur les tables. Colléguette Souricette râle parce qu’elle y voit que d’alle pour dépiauter ses gambas avec son p’tit couteau et sa p’tite fourchette.

Faut vraiment être un kamikaze social pour prendre des gambas dans un restau. Le truc impossible à bouffer. Même si par miracle tu y arrives, tu as les doigts qui puent. Et c’est pas un rince-doigts de 10 centimètres carré qui va régler le problème.

Ces gambas me semblent plus intéressantes.

J’ai deux règles personnelles dans les restau, et je suis admiratif (voir totalement effrayé) par les gens qui parviennent à passer outre.

Règle 1 : simplicité d’ingestion. Pas de machins à dépiauter, décortiquer, découper, éplucher, égoutter, râcler, déconstruire, désencoquiller, entortiller, désentortiller, casser, flamber, tremper, mâchonner indéfiniment, extraire, trier, analyser, dégraisser, rétro-ingéniériser. Quand je tombe sur ce genre de problème, je me tâche systématiquement partout. Je vis cela comme une agression provenant de l’humain ayant fait cette putain de bouffe : il a bâclé son boulot et se marre en s’imaginant comment je vais galérer. Ça fait plusieurs années que je milite pour soit mis en place un système de notation avec des petites icônes sur les menus, indiquant pour chaque plat si c’est simple ou compliqué à manger, et le type de complexité.

Règle 2 : simplicité de prononciation. Parce qu’il faut spécifier oralement ce qu’on souhaite manger, et que je ne veux pas me rendre ridicule en prononçant mal un truc. Les restaurants de bouffe étrangère doivent donc être rigoureusement pré-étudiés. Au fait, saviez-vous qu’une grande partie des noms de pizzas inscrits sur les cartes des restaurants italiens ne sont là que pour contribuer au thème et à la décoration du lieu ? Ils ne correspondent en réalité à aucune recette : Capricciosa, Quattro fromaggi, Prosciutto, Sfincione, … Oui oui, vous avez bien lu, un « S » suivi d’un « F ».

Je choisis une escalope avec du riz.

Colléguette Sarkozette n’est pas parmi nous ce soir, mais j’ai quand même droit à quelques conversations de droite :

« La France c’est un pays où plus personne veut bosser. Tiens, par exemple, quand j’étais en congé maternité, j’essayais de faire les courses à des horaires inhabituels, 10h ou 3h de l’après-midi. Eh bien y’a autant de monde que les soirs et les week-ends. On se demande ce qu’ils foutent tous ces gens. »

« Quand je suis en déplacement, quelle que soit l’heure à laquelle je prends ma voiture, y’a toujours plein de monde sur les routes. Mais ils font quoi, tous ? Ou alors c’est que des commerciaux, comme moi. »

Nous étions en 2008, et la loi interdisant de fumer dans les bars et restaurants sortait à peine de son œuf. Bien que non-fumeur, j’ai eu du mal à m’y faire. Laissez-moi vous narrer cela.

Tel une moule sur une coque de bateau, je m’accroche à une discussion, afin de m’en faire une bouée de sauvetage de contenance sociale. Je regarde intensément les gens, avec mon air « ça m’intéresse trop ce que vous vous racontez, c’est pour ça que je vous écoute sans rien dire ». Ils se trouve que les gens en question sont des fumeurs. Et qu’est-ce qu’ils font ces enculés de leur race, au lieu de s’en griller une tout en continuant de parler ? Ils se carapatent dehors !

Ça aurait fait super bizarre que je les suive, car j’étais pas vraiment intégré dans leur conversation. Tel une moule errante, j’essaye alors de m’incruster ailleurs. Mais toutes leurs variables conversationnelles des discussions voisines sont déjà allouées et initialisées. Les interlocuteurs n’utilisent plus que les références : « il », « elle », « eux », « nous », etc. À ce stade, quand tu fais semblant d’écouter et de tout comprendre, c’est pas crédible.

Je me vois donc finalement affublé du statut de « SDF social ».

Quelques minutes auparavant, Chef Ion s’était amusé à cramer des piques-olives en bois dans la petite bougie tablaire. Je me suis dit que je pourrais effectuer une action du même type. Sans faire exactement pareil, bien sûr, sinon ça se voit trop que tu tentes de combler un leak de contenance sociale par un simple copier-coller d’action.

Parmi les déchets de mon assiette se trouvent des petites feufeuilles séchées de tomate-cerise (pourquoi y’avait-il ça avec mon dessert ? Mystère). C’est certainement brûlable. Je teste, effectivement, ça l’est. Mais trop, en fait. Surpris par une énorme flamme, je fais tout tomber dans la bougie. Rigolo, on se croit dans une mini-banlieue, avec une mini-poubelle illuminant la nuit. Mais maintenant ça sent le cramé, la bougie s’est éteinte, et des cendres de feuilles séchées et de feu ma contenance sociale s’éparpillent un peu partout.

À l’aide d’un dernier bout de pique-olive, Chef Ion transmet la flamme d’une autre bougie vers la mienne, la rallume, et m’achève ainsi d’un grand coup de condescendance.

Putain de loi anti-tabac de merde.

Collègue Poulet-Fils fait des aller-retours aux toilettes, car en plat principal, il a pris un début de gastro.

Voici ma blague de la soirée, qui a fait un bide alors que franchement j’en attendais un peu plus :

« Une gastro c’est un peu comme un buffer overflow. »

Mangeage du dessert. Puis les gens commencent à partir. On se retrouve à une demi-dizaine dans la salle de dancing du sous-sol, sans personne qui y dancing. Chef VisagePâle se prend une bière. Je m’apprête à faire de même, mais réalise qu’elle est à 9 euros. Voilà un dancing accompagné d’un fort sodomising.

On se regarde dans le blanc des vieux, sans se parler puisque la musique hurle du Mylène Farmer. Colléguette EncoreUnPeuVerte_2, fan de cette étrange chanteuse, va dancinguer toute seule.

On sort. Après quelques phrases de convenance, je dit au revoir et pars, dans une direction au hasard, car je ne voulais pas prendre le risque de montrer qu’il m’était nécessaire de réfléchir pour déterminer le chemin me permettant de rentrer chez moi.

Une rue plus tard, je m’aperçois que ce n’est pas la bonne direction. Je ne fais, bien entendu, pas demi-tour, pour ne pas me taper la honte nucléaire ultime en repassant devant les autres. Du coup je me tape une station de métro en plus. Pas grave.

C’était globalement une chouette soirée gloubiboulguienne.

À l’époque, j’avais envoyé ce résumé à des potes. Je me permet de retranscrire la réaction de l’un d’entre eux :

« C’est clair que tu as des raisons de quitter ta boite ! Une soirée d’entreprise où tu payes tes coups, ca existe ?? merte ! »

Le prochain article de blog sera à propos d’un mini-projet de code (ou pas). En espérant que vous apprécierez. Mais sinon osef.

Solution alzheimerienne des tours de Hanoï

Comme promis, voici le deuxième article du mois. Ça fait un certain nombre de fois que je publie des articles courts, donc je voulais me rattraper.

Par contre, j’ai jamais promis que ce deuxième article serait intéressant.

Il s’agit céans d’un petit bout de code en python, résolvant le problème des tours de Hanoï de manière alzheimerienne.

Je vous en avais parlé il y a quelques années.

La manière alzheimerienne impose de ne pas se souvenir des coups joués précédemment, et de ne pas partir dans des trips de récursivité sous acide.

Le coup à jouer est déduit uniquement de la situation courante, c’est à dire la position des disques. Vous pouvez donc appliquer cet algorithme même si vous êtes atteint de la maladie d’Alzheimer. Ha ha ha.

J’ai pris le temps de remettre le code au propre, en PEP-8, avec des commentaires corrects. Le tout est sur mon github.

Explication de l’algorithme

Elle est dans la docstring du fichier python. Je vous la remets ici.

Il faut d’abord déterminer le nombre de « coupures » dans l’ordre des disques.

Lorsque deux disques de taille N-1 et N sont empilés sur un même poteau, il n’y a pas de coupure entre eux. Lorsqu’ils sont sur deux poteaux différents, on compte une coupure.

De plus, lorsque le gros disque du bas n’est pas sur le poteau de fin, on compte également une coupure.

Exemple :

  • Le disque 1 (le plus petit) est sur le poteau de départ.
  • Les disques 2 et 3 sont sur le poteau intermédiaire.
  • Le disque 4 (le plus gros) est aussi sur le poteau de départ.

 

      |           |           |
      |           |           |
      |           |           |
     +++        -----         |
  ---------    +++++++        |
  .................................

 

On compte les coupures en partant du plus gros disque vers le plus petit (mais on aurait pu compter dans l’autre sens).

  • Le 4 n’est pas sur le poteau de fin. +1 coupure
  • Le 4 et le 3 ne sont pas sur le même poteau. +1 coupure
  • Le 3 et le 2 sont sur le même poteau. OK
  • Le 2 et le 1 ne sont pas sur le même poteau. +1 coupure

Total : 3 coupures.

Cette dame s’appelle Miss Twin Towers, soit l’équivalent de deux tiers d’un jeu de tour de Hanoï

Si le nombre de coupures est impair, il faut déplacer le disque 1 (le petit).

Pour déterminer son poteau de destination :

Si le nombre total de disque est pair, le petit disque doit se déplacer vers l’avant :

poteau de départ -> poteau intermédiaire -> poteau de fin -> poteau de départ -> etc.

Si le nombre total de disque est impair, il doit se déplacer vers l’arrière :

poteau de fin -> poteau intermédiaire -> poteau de départ -> poteau de fin -> etc.

Si le nombre de coupures est pair, il faut déplacer un disque autre que le petit disque. Dans ce cas, il n’y a toujours qu’un seul mouvement possible.

Parmi les deux poteaux ne contenant pas le petit disque, l’un d’eux est vide. Il faut alors déplacer un disque du poteau non vide vers le poteau vide.

Parmi les deux poteaux ne contenant pas le petit disque, aucun n’est vide. Il faut prendre le plus petit disque parmi ces deux poteaux, et le déplacer vers l’autre.

Lorsque le nombre de coupures vaut 0, le jeu est terminé. Tous les disques sont sur le poteau de fin, dans le bon ordre.

Il faudrait une vraie démonstration mathématique pour prouver que cet algo fonctionne, mais je ne sais pas la faire. Ça semble fonctionner quel que soit le nombre de disques.

Les tours c’est fun

Pour finir, voici une image d’un vieux jeu que j’avais beaucoup aimé : Mystic Towers. Je n’ai pu profiter que de la version shareware, mais c’était quand même chouette

Oh, et il semblerait qu’on arrive déjà à la fin du mois. Il faut que je démarre un nouvel article. Diantre.