lundi 16 février 2009

Programmation poétique - Chapitre VI : Ton langage pue du cµl n°1

Disclaimer : Attention, article violent : âmes sensibles, femmes enceintes et handicapés du second degré s'abstenir. Malgré ses côtés provocateur, insultant et inutilement vulgaire, cet article se veut humoristique et satirique : l'auteur du présent article ne saurait donc être tenu pour responsable des symptômes suivants suite à sa lecture, même partielle (liste non-exhaustive, donnée à titre d'exemple) : nausées, vomissements, chocs anaphylactiques, chutes de phalange(s), déclenchements de diabète, crises d'épilepsie, ruptures de certitudes programmatiques, constipations, inflammations du nerf trollien, asthmes, infections du compilateur et céphalalgies.

~=o=~

Un mois que je dors plus, ma copine m'a lâché pour un orang outang ingénieur commercial, j'en suis au 6ème Blue Screen of Death de la journée, mon manager a été obligé de baisser mon salaire à cause de la crise (le pauvre, il va pas pouvoir s'augmenter cette année), ma gangrène au pied me fait un peu de soucis ses derniers jours, et en plus, à midi, c'était navets ou blettes.
Bref je suis pas jouasse.
Du coup, je vais cracher sur quelque chose pour me détendre : les langages de programmation par exemple. D'une part j'en ai croisé quelques uns ces derniers temps, et d'autre part, ils sont vachement moins forts à la bagarre que la plupart des gars sur lesquels je pourrais avoir envie de déverser ma bile (et accessoirement, il a été prouvé qu'ils n'appréciaient pas le contact de la salive ou de la bile d'autrui. C'est pas le cas de toutes les personnes sus-non-nommées...).
Donc, ton langage pue du cµl...


Fortran

Le Fortran pue du cµl.
Pour rappel, le Fortran n'est pratiqué que par de vieux clampins de scientifiques qui codent comme des pieds de cul-de-jattes malgré leur expérience paléontologique : goto partout, noms de variables et de fonctions d'un demi caractère, effets de bords, commentaires inexistants ou ridicules... que du bonheur. Le Fortran n'est pas sensible à la casse : c'est pas chouette ça ?
Il faut par contre porter au crédit des gens bossant sur ses compilateurs un exploit considérable : il n'existe absolument aucune norme pour la compilation de ce langage. Ce qui veut dire que l'on a aucune garantie que les résultats (résultats numériques j'entends : que du calcul en Fortran, on va pas non plus faire du web avec cette bouse !) donnés par un exécutable pondu par un compilo donné soit obtenus à nouveau avec un exe pondu par un autre compilo. Je rappelle aux enfants ici présents que le Fortran a grosso-modo 40 ans, ce qui laisse un rien de temps pour mettre en place ce genre de chose...
Je fais l'impasse sur les normes de codages moches, les variables globales COMMONS, la gestion des chaînes de caractères, la tentative lamentable d'insertion de la POO dans les versions récentes, les formats, les variables implicites, etc...
Le Fortran sent le vieux cµl.


OCaml

L'OCaml pue du cµl.
C'est un langage d'universitaires élitistes qui se la pètent avec leurs "tuples", "motifs", "inférence"... bref que des termes que personne ne b1te. Déjà que c'est assez fastidieux à lire, ça n'utilise que des concepts "rares" pour faire joli et gagner trois lignes de code, ou un effet de bord, voire un +1 en "beauté mathématique".
OCaml est sensé être super-méga-performant-pas-loin-du-C-et-du-Fortran, mais bizarement, personne ne l'utilise en calcul scientifique lourd... c'est d'autant plus c0n que c'est à peu prêt le seul endroit où ça sert, les perfs. OCaml ne supporte pas la surcharge des opérateurs, du coup pour aditionner 2 flottants, il faut utiliser l'opérateur "+." : c'est pas vilain ça ? La communauté OCaml est... non, en fait y en a pas.
Le truc probablement le plus ridicule : systématiquement, lorsqu'un débutant pose une question sur la POO en OCaml, il se voit répondre que c'est pas important, ou que c'est un peu spécial, ou que c'est pas utile dans son cas... A quoi ça sert de mettre "Objective" dans le nom, bande de blaireaux ?
L'OCaml sent le cµl usé sur les bancs de la fac.


Groovy


Le Groovy pue du cµl.
Déjà, son nom est naze. Ensuite, il ne tourne que sur la JVM, et ça, "çay mâl" (cf Java). C'est lent, hybride et pas beau. On verse chaque fois sa petite larme lorsque :

"toto".class

nous renvoie :

class java.lang.String

Pourquoi pas "java.jre_v1056.j2ee.lang.stdlib.groovy.String.gString" ? C'est vrai, quoi, ce serait beaucoup mieux précis plus bien !
Malgré tous les efforts de Sun, Groovy n'est pas populaire (c'est pas parce que ya trois c0uillons sous Grails...). Et de fait, ce langage ne sert à rien : JRuby, Jython, Javascript et compagnie sont déjà là (et mieux).
Groovy sent le cµl moitié Java, moitié Ruby et re-mi-ours derrière.


Io

Le Io pue du cµl.
Il faut franchement avoir le sens marketing d'une mouette albanaise (qui ne vend pas beaucoup de brosses à dents) et la maîtrise des outils de recherche web d'un crabe des îles Kouriles (qui, rappelons-le, n'ont pas encore l'ADSL) pour avoir l'idée sublime de nommer son langage "Io" (prononcé "Ayo" comme les rappeurs quand ils font "Ayo ayo, Wass'up N1gga !"). Deux lettres. Pratique pour Google ! Surtout quand ces deux lettres signifient "Input/Output", terme un tant soit peu employé en programmation... Crét1n...
La documentation fait l'impasse sur énormément de méthodes de base : pratique pour débuter !
A ce jour, il est possible d'estimer la taille de la communauté des utilisateurs de Io grâce à son reddit. Celui-ci compte 24 abonnés (3172 pour Ruby à titre comparatif). Il est cependant fortement probable que certains soient des redditeurs débutants s'étant trompés en s'y inscrivant. Une petite vingtaine donc.
Ah oui : il n'y a quasiment aucune lib, et les seules existantes ne marchent pas vraiment bien... mais bon, comme tout le monde s'en br4nle...
Io sent le cµl de vache grèque abandonnée.


Java

Java pue du cµl.
Java, c'est avant tout une machine virtuelle permettant la portabilité des applications, blablabla... Cela dit, vu que le C tourne toujours à plus d'endroit que la JVM, et bien... avant de sentir mauvais, le Java ne sert surtout à rien, à part à faire dresser le k1k1 des chefs développeurs (ceux qui codent plus quoi) en entreprise.
Chefs développeurs criant à tue-tête sur leurs ingénieurs software (autres appellations possibles) pour qu'ils tiennent leurs délais parce que "depuis qu'on utilise le framework "Swing 40K" au lieu du "JRE v6", on est sensé avoir un gain de productivité de 50% (au bas mot, c'était écrit chez Sun !) et que, ben, donc du coup, on a plannifié les dates de livraison avec ces chiffres et que là on est en retard bande de faignants !". Ben tiens, t'as qu'à coder toi, conn4rd.
Ingénieur software, sinistre p1sseur de code sur- ou sous-payé (non, pas entre les deux), qui passe plus de temps à se (dé)battre avec les spécs du clients et les design patterns imposés (et inutiles 90% du temps) qu'à apprendre à coder correctement ou même, à simplement coder ("de toute façon, il s'en fout, il est dans les télécoms de formation, alors hein !"). Du coup, avec le domaine web et le Fortran (cf ci-dessus), c'est probablement le Java qui a le "code moyen produit" le plus moche.
Enfin, le Java produit un grand nombre d'onomatopés à l'haleine lasse (qui pue donc) : "Sélannnn !", "Sarââââmmm !" ou "Saramsamèrlapuuuuuuute !". On pourra me montrer tous les benchmarks de la créations sensés prouver que Java n'est pas si loin du C++, je reste convaincu que c'est lent. En fait, j'ai même un indice : la petite icône de la JVM est toujours présente en bas d'écran quand les cris ci-dessus sortent de mon acerbe bouche. Si ça c'est pas un signe...
Techniquement, le code n'est pas beau et est verbeux, l'introspection est hyper-lourde, bref...
Le Java sent le cµl professionnel certifié par Sun (mais en retard sur son jalon).


~=o=~


Que les petits oubliés de la procédure se rassurent, ceci n'est qu'une première partie (à ceux qui se posent la question, oui, je ch1erais aussi sur le Ruby : qui aime bien châtie bien). Trop courte, je vous l'accorde, mais là je dois m'amputer le pied pour l'envoyer à un primate de mes amis, avant de "régler" un bug de Windows avec le crâne de mon supérieur hiérarchique, et d'aller me faire un petit roupillon (si j'arrive à digérer ces maudits navets).

2 commentaires:

Lefty a dit…

sur "Le Grattonaute", la rubrique s'appelle "Chérie, passe moi l' AK47"...

on sent ici la verve de l'utilisateur excédé par les promesses programmatiques non tenues...

on retiendra:
- le manque de production de brosses à dents par l'Albanie.
- l'existence d'un nerf trollien
- l "état de manque" manifeste de Kaamelott
- que Zeus aurait pu danser la Java avec Io sur un rythme Groovy en se faisant appeler Fortran, OCaml où.
(je sais, c'est TRÈS limite)

Sobe a dit…

Le nerf trollien, contrairement à ce qu'on croit, est le seul "organe" nécessaire à l'utilisation d'un ordinateur.

Tu peux être aveugle, sans pouce et paralysé, si tu as le nerf trollien, tu peux. Inversement, la plupart des vieux (et de pas mal de gonzesses, il faut bien le dire) en semble dépourvus : d'où leur difficulté à cliquer.