Pru-Pra-Prok sur github

Wouwi-zouwi m’sieurs-dames et tous les autres.

J’ai mis mon dessin animé sur github. Vous vous en souvenez peut-être, c’était ce truc là :

C’est par ici : https://github.com/darkrecher/pru-pra-prok

Rien de nouveau par rapport à la version initiale (qui date de plus de 10 ans). Mais j’ai tout de même pris le temps de le recompiler avec gcc sous MingW32, et de documenter le tout de la manière la plus détaillée possible, afin d’offrir à d’autres personnes la possibilité de modifier, mâchonner, recompiler, créer ses propres dessins animés, etc.

J’ai toujours été agacé par les gens qui libèrent leur code source sans y ajouter la documentation nécessaire à son exploitation. « Huuurrrrr duuuurrrrr. Tu fais makefile et ça marche ». J’essaye donc de ne pas faire comme eux.

Après, ça vaut ce que ça vaut. On trouvera facilement des logiciels d’animations infiniment meilleur que ce truc (rien que Scratch, par exemple).

La githubisation de ce projet fait partie de mon grand plan « vidage de fonds de tiroir de tous mes vieux bouts de code ». C’est bientôt terminé, il ne me reste plus qu’un pack de mini-projets. Ensuite je pourrais passer à autre chose. Soyez assurés que vous serez les premiers informés de la suite des événements.

Pour finir cet article, je propose de glisser du domaine des dessins animés vers celui du cinéma, avec cette image du film Dikkenek.

(Tiens, ça me fait penser au catalogue des 3 Belges dans les copains des Tilleuls … Aucun lien, désolé).

Introduction à une introduction à la karmagraphie

Aujourd’hui (ou plutôt la semaine dernière) (ou plutôt il y a 15 jours, le temps que je finisse cet article), Eurod’ et moi, on s’est fait engueuler par Random. Selon ce dernier, il semblerait que nos journées de Travail ne soient « pas optimisées », parce que « on discute trop ».

Eurod’, c’est mon collègue. Il s’appelle comme ça parce qu’il est fan d’Eurodance. Il met la radio pendant qu’il bosse. Moi ça me dérange pas, rappelons que je suis un inconditionnel d’Ace of Base. Mais du coup, on se fait régurgiter les mêmes chansons plusieurs fois par jour dans nos pauvres oreilles, jusque à ce que les circonvolutions en soient tellement sales qu’elles se collent entre elles. C’est assez peu ragoûtant. Toutes les radios font ça, qu’elles soient web ou à ondes, j’ai jamais compris pourquoi. Le patrimoine musical Eurodance est suffisamment bigarré, éclectique et foisonnant pour qu’on y trouve facilement 24 heures de chansons excellentes sans doublons, non ? Enfin ce n’est pas le sujet.

Ace of Base

« L’amour est mon moteur, et tu dois être du carburant ».

Random, c’est notre chef. Il s’appelle comme ça parce que son état « bien ou mal luné » est totalement soumis au hasard. Attention, il s’appelle bien « Random », et non pas « Random() ». Ce n’est pas un simple appel à la fonction, mais la fonction elle-même. Enfin, ce n’est pas le  sujet.

135607-12 evil moon

« Mal luné » : une expression à la con.

Et donc quand Random a sorti cette remarque, j’ai voulu répondre que nos discussions avaient pour sujet notre Travail. Le vrai Travail : le sérieux, le couillu, le viril, celui pour lequel on me donne un salaire pharaonique, celui pour lequel « je me lève le matin ».

C’est faux, je me lève le matin pour un salaire de serf, et rien n’est couillu nul part, mais ce n’est pas le sujet.

Random ne m’a pas laissé le temps de finir ma phrase, il m’a balancé que c’était « des discussions inutiles », et que « mes états d’âme sur le C++, on pouvait s’en passer ».

C’est assez étrange. Il aurait pu riposter de manière bien plus simple, en arguant que nos discussions ne concernent pas à 100% le Travail. Et ce serait la vérité.

Je tiens toutefois à préciser que c’est pas de ma faute si on parle pas à 100% de Travail. C’est 100% la faute à Eurod’. Moi, de manière générale j’aime pas trop discuter, parce que j’aime pas trop les humains. Mais ce n’est pas le sujet.

Bref, voilà. Random a décidé de m’attaquer sur mes états d’âmes C++iens, je l’ai mal pris, et je considère cela comme une insulte et un affront. (Qui ne saurait se laver autrement que dans le sang, mais on ne va pas le faire).

Voyez-vous, je suis chercheur du CNRS en geekologie, moi. Je connais plus de 15 langages de programmation différents, moi (dont le glapumBasic, qui ne possède qu’une seule instruction, et c’est une grossièreté). J’étudie la sémanticologie, la syntaxologie, la grammaticologie, moi. J’ai écrit un article scientifique sur l’expression du vide, moi. J’ai dressé une taxonomie des méthodes d’échanges de A et B, moi. J’ai créé un langage permettant de coder en alsacien, moi (basé sur le C++, au passage). J’ai découvert que « Vulture repellent doesn’t work », moi. Et bien d’autres choses encore, moi.

Crap->Obfuscate.Repeat(Repeat(…));;;

Alors mes états d’âme sur le C++, ça constitue une analyse ontologique fine, détaillée et pertinente, que beaucoup d’autres chercheurs du CNRS seraient prêts à tuer père et mère le prix fort pour l’avoir. Capito ?

Comme vous êtes gentils et que vous êtes sur mon blog, je vous résume rapidement cette analyse. Ainsi, vous aurez seulement à tuer votre chien le prix moyen pour l’obtenir. Ça vous va ? Oui ? Merci, vous êtes des gens géniaux et gentils, et j’aime bien être avec vous dans ma tête.

Mon analyse du C++

Il s’agit d’un vieux langage. C’est pourquoi il ne possède pas tous les raccourcis syntaxiques dont on a l’habitude maintenant. Je rappelle qu’il faut écrire deux fois la même chose, respectivement dans le .c et le .h, que les chaînes de caractère sont implémentées de plusieurs manières différentes, et qu’on peut préciser qu’un caractère est signé ou non signé, ce qui n’a aucun sens.

Métaphoriquement parlant, le codeur C++ est donc une sorte de moine tibétain solitaire perdu au milieu des paysages aride de la taïga russe. Le fait qu’il puisse y avoir d’autres moines solitaires autour de lui ne le rend pas moins solitaire.

moine

#define FALSE TRUE

Pour autant, ce langage conserve son utilité. Notamment dans les cas suivants :

  • lorsqu’on veut « rester proche de la machine » (ce n’est pas sale)
  • dans le cadre de la réalisation de micro-contrôleurs de tondeuses à gazon
  • à des fins pédagogiques, pour expliquer « ce qui se passe sous le capot ».

En revanche, programmer à un haut niveau d’abstraction, manipuler une interface graphique riche, ou bidouiller de la communication complexe de web service, tout cela en C++, c’est complètement crétin. Et le fait que ce soit du Microsoft Visual C++ millésime 2048 n’arrange rien à l’affaire, voyez-vous.

Random m’a reproché d’exprimer cette vérité, alors que j’en avais besoin pour m’exutoirer cathartiqement. J’ai mal pris ce reproche et c’est ce que j’ai voulu raconter ici, afin d’exutoirer cathartiquement le fait que je n’ai pas le droit de m’exutoirer cathartiquement sous prétexte que c’est « pas optimisé de dedans le Travail ».

C’est tout ce que je voulais dire et je ne me sens pas très bien.

Ce n’est pas tout ce que je voulais dire et je ne me sens pas très bien.

Car je dois malgré tout reconnaître que, dans ce nouveau boulot qui est actuellement le mien, je jouit d’un gros mieux, à savoir :

Le Métier

metier à tisser patrimoine

Métier complètement con, ou quoi ?

Que veux-je dire par là ? Quel est ce nouvel venu dans notre vocabulaire ?

Les informaticiens n’ont pas de Métier. Leurs compétences et leurs savoir-faire ne méritent pas d’être inscrit dans l’encyclopédie de Diderot et D’Alembert. Ce ne sont que des geekeries absconses de gamins attardés qui n’ont pas grandi.

Les informaticiens sont au service d’autres gens, qui eux, ont un vrai Métier. Quelque chose dont ils sont fiers, quelque chose de couillu, de viril, le truc pour lequel ils « se lèvent le matin ».

Bull Humps Donkey Bull Humps Statue

Une allégorie de la virilité du Travail.

Parfois, le vrai Métier des vrais gens auquel l’informaticien se met au service est chiant. C’était le cas de mon ancien boulot, avec les tondeuses à gazon, machines à laver, accélèromètres, et autres trucs que je savais même pas ce que c’était, je ne reviens pas dessus.

Et parfois, le Métier est fun, rigolo et intéressant. C’est le cas de mon boulot actuel. Je fais des applications informatiques orientée karmagraphie. Ça ne m’empêche pas de trouver le boulot chiant et privateur de liberté, mais ce ressenti personnel s’applique à tous les boulots, et à la notion de Travail en général.

Bref donc, la karmagraphie est un métier rigolo. Et maintenant que je l’ai découvert, je peux me fendre d’une petite

intro-

duction

à la

karma-

graphie

Sauf que je vais pas la faire tout de suite car j’ai pas le temps. Ce sera le prochain article !

The Temptations To Be Continued 86

To be continued, comme disent les Jackson Five.

Et vu que je viens de mettre des gens avec des belettes en guise de coiffure, et que mon nouveau l’ami de l’internet voulait une alternance belette/nichons, voici l’autre moitié de l’alternance. Moitié qui est constitué d’une double dose de nichons, donc 4.

tumblr_m1uyvijxiN1qcru98o1_400 Nadine Jansen Milena Velba

Mmmrrrrppppffflllmmmm !!!

À bientôt !

Programmer en C++, en alsacien

Buschur métame zé mézieurs !!

Auchaurtui, tans ce plog, kekeu choss d’apsolument inkroyap ! Nouss allons rékonzilier les tradizion réchionales afec le monte moterne, krasse à:

La prokrammation C++ en elsassien

Pour commencer, je vais arrêter avec mon faux accent. C’est chiant à écrire, chiant à lire, et en plus je ne suis même pas originaire de cette belle région, (mais je la kiffe, na!).

alsacienne culotte

Y’a des gens, ils se sont fait chier pendant des années à apprendre les subtilités de cette langue alémano-teutonne, et tout ça pour quoi? Pour finalement découvrir que ça ne leur permettait absolument pas de créer des logiciels. C’est inadmissible. Voilà pourquoi j’ai décidé d’y remédier.

J’ai créé un fichier .h, qui redéfinit la vilaine syntaxe du C++ avec du bel alsacien bien de chez nous. Grâce à moi, du code abscons de ce genre:

int main(int argc, char *argv[])
{
int nombre_de_bieres = NOMBRE_DE_BIERE_AU_DEPART;
...
}

deviendra ceci:

numerik_surkrut des_esch_s_angfang_vom_program
s_brucht_sich numerik_surkrut de_zahl_von_parameter on_de_nor text_surkrut parameter des_esch_e_wandtafle so
esch_fong_e_wurst_on
esch_bruch_e numerik_surkrut het_ver_nome zahl_von_beer het_ver_vertigkeitsmaaser ZAHL_VON_BEER_OM_ANGFANG hopla
...
_s_gilt

Et là c’est mieux.

Par convention, et pour une immersion plus naturelle du truc dans le truc, j’ai décidé que les variables s’appelleraient « surkrut » (choucroute) et les blocs de code « wurst » (saucisse).

À noter que la transcription est assez permissive. La fin du programme peut se noter « esch_hop_s_wurst_vertig » (j’ai fini la saucisse), ou bien « _s_gilt » (à la vôtre !)

Ne parlant pas vraiment alsacien moi-même, c’est Geoffrey, l’un de mes nombreux amis de l’internet, qui m’a fait les traductions. Qu’il en soit infiniment remercié, puisse le chemin de sa vie être recouvert de choucroute garnie et qu’un millier de camions de femmes turpides dansent lascivement devant lui, avec un millier de milliers de bières.

RCLE020402_18_Mar02_08 topheavy

Image qu’a pas grand-chose à voir, mais on s’en fout.

Je vous mets le contenu du fichier directement ici. Il manque encore 2-3 trucs, mais soyez assurés que je créerai de nouvelles versions de plus en plus enrichies. (hahaha! nan.)

#define des_esch_s_angfang_vom_program main
#define hopla ;
#define sand <<
#define ens_surkrut_usgang cout
#define on_geh_e_schrett_vor << endl
#define geh_e_schrett_vor << endl
#define esch_vott_de_huffe_von using namespace
#define fundamant_denks std
#define numerik_surkrut int
#define text_surkrut char *
#define des_esch_e_wandtafle []
#define on_de_nor ,
#define s_brucht_sich (
#define so )
#define met (
#define e_fonktion_wie_di_ruckschekt
#define nex_von_allem void
#define on_wie_servert_on
#define esch_fong_e_wurst_on {
#define esch_hop_s_wurst_vertig }
#define _s_gilt }

choucroute pied
// Ceux qui programment avec leurs pieds ne seront pas déçus!

#define ken_surkrut
#define ken_surkrut_werd_gebrucht ()
#define esch_bruch_e
#define het_ver_nome
#define het_ver_vertigkeitsmaaser =
#define so_long_wie while (
#define ens_fall_wie if (
#define no )
#define s_meust_gemort_xen )
#define oder else
#define mor_d_nachst_wurst do
#define e_besele_weniger --
#define e_besele_meh ++
#define esch_meh_als >
#define esch_weniger_als <
#define oder_egal =
#define esch_egal_als ==
#define esch_verschid_als !=

Fabuleux! Mettons-ny-ous tout de suite!

Je vais pas me contenter de coder un stupide « Hello World », comme une petite feignasse de merde. Je vous ai carrément concocté un « 99 bottles of beer ». Pour les gens normaux qui connaissent pas, renseignez-vous ici (http:// 99-bottles-of-beer.net/).

Edit 11/10/2009

Le programme sort bien évidemment les paroles en alsacien, et pas en vilain-américain-capitaliste-violacé-d-argent. Sauf que j’avais fait la traduction à l’arrache et c’était du petit nègre sorti du cul d’une machine de Turing névropathe. Geoffrey-mon-ami-de-l-internet a rephrazingué tout ça et c’est mieux. (Puisse la choucroute le camion-gonzesse-bière etc.)

Télécharger la dernière version du programme.

Vous pouvez le compiler sur l’ordinateur de votre grand-mère, ça marche et ça donne ceci:

99 Flashe beer uff d’Mura, 99 Flashe beer.
Drenk eins on geh widerch, 98 Flashe beer uff d’Mura.
Ken Flashe beer meh uff d’Mura, ken Flashe beer meh uff d’Mura.
Geh ens Gschaft on kauif der wedder meh, 99 Flashe beer uff d’Mura.

Par contre, le sens a un petit peu changé. La bière, au lieu de la « take one down and pass it around », on la « drenk on geh widerch » (bois-en une et continue). Mais ça reste tout à fait acceptable.

Digression: est-ce qu’on a encore le droit d’utiliser l’expression « petit nègre » pour indiquer qu’on parle avec plein de fautes? Je demande, parce que déjà, on n’a plus le droit de dire « tête de nègre », alors voilà quoi. Si j’ai offensé des gens, j’en suis désolé. (Bière, choucroute, camion, nichons.)

Lien vers un chouette dictionnaire françois-elsassien (http:// pagesperso-orange.fr/culture.alsace/dictionnaire_alsacien.htm).

À part ça, j’avais un oncle alsacien pure souche qui s’y connaissait vachement en langage et en histoire, mais il est mort. Dommage, il aurait pu m’aider.

medium allemande biere 2

Pas de jeu de mot avec « mise en bière », car elles sont si jolies.

Par ailleurs, comme je pige rien aux divers encodages de notre monde informatique torturé, j’ai pas mis les accents, trémas, et autres tuning de lettre tout bizarre. Avec ces stupides petits strüdels, on n’arrive jamais à ravoir ce que on a écrit au départ. Putain.

Village Dalzasse Pictures !!

Je ne suis pas le premier à avoir contribué au mariage entre l’Alsakie et le code informatique. Je ne serais qu’un fieffé paltoquet si je ne mentionnais pas ce splendide film qu’est Meytrix Reloatètt!!

Ça date un peu, mais moi j’adore et c’est de l’authentique. Allez voir le site originateur de la bande-annonce (http:// www. cigogne.net/Maytrix-reloatet-VA.html).

meytrix reloatett

Un film réalizé sans aukun trukaschh !!!

mélangeons nos cultures

Je ne suis pas le premier à avoir contribué au mariage entre l’Alsakie et l’Égypte mystérieuse et épicée. Je ne serais qu’un fieffé paltoquet si je ne saluais pas cette sympathique initiative de sculpture d’une superbe alsagyptienne aux yeux de chèvre morte.

alsagyptienne

Brrraaaiiiinnnssss !!!! (Traduction : Kougelhooooooof !!!)

La lala lalaaaaaaa

Pour finir, une petite chanson. C’est pas un truc pipi-caca de gamin de 10 ans. Non non. Cette fois-ci, c’est un peu plus adulte.

Je suis un alsacien,
je vais dans la forêt, avec mon gros fusil
chasser le papillon.
et le mammouth, dans la prairie,
qui broute broute broute, si joyeusement
et les saucisses, dans la boucherie,
qui pendent pendent pendent, si joliment.

‘s gilt!

Vous pouvez télécharger le mp3 ici.

Edit 11/10/2009

Durant mes recherches documentaires sur le l’intraweb, je suis tombé (complètement par hasard) sur cette sympathique photo. Je vous en fais cadeau.

chloe vevrier beer fest

Edit 11/10/2009

Edit(h Cresson)

OFRTP-UNION-FRANCE-CRESSON-20060711 Edith Cresson

invisible hamburger !

Edith 11/10/2009

botte cresson