|

Écrivez
à AILES ! |

Retour
vers les blagues |
|
|
Le vrai informaticien,
le "Véritable"
|
Voici un texte trouvé sur les News en 1987
(!) + un autre actualisé datant en gros de 1997 (en
gras bleu). Ce qui suit est donc une concaténation des
2, avec commentaires ([en
italique rouge entre crochet]).
À une époque où l'on l'on ne parlait pas
encore de "processus de développement", RUP et
autres méthodologies, où les termes architectes, urbanismes,
refonte de SI étaient encore improbables... bref en un temps
où l'on parlait de "vrai informaticien"!
Aujourd'hui, en 2003, ce texte permet de mieux
comprendre le chemin parcouru et l'évolution de ce métier!
Et n'oubliez pas, vrai programmeur, de respecter
les
10 Commandements!
Par rapport aux innombrables copies de ce texte
que vous trouverez sans peine sur le net, celle-ci est bien la
seule à venir avec son questionnaire
expliquant quelques termes qui, en 2003, peuvent apparaître mystérieux.
Le sigle [q]
à côté de ces termes
surlignés vous mène directement à leur définition.
|
Au bon vieux temps (durant ce
qu'on appelle l'âge d'or de l'informatique), il était facile de
distinguer les HOMMES des JEUNOTS (la tradition les désigne aussi
respectivement par les dénominations de VÉRITABLES et de VISAGES PÂLES).
À cette époque, les VÉRITABLES étaient ceux qui connaissaient la
programmation des ordinateurs, et les VISAGES PÂLES étaient ceux qui
ne la connaissaient pas. Les VÉRITABLES préféraient des mots comme
\"DO 10 I=1,10\" ou encore « ABEND[q]
». Ils ne parlaient
d'ailleurs qu'en majuscules.
Le reste du monde disait des choses du
genre « Les ordinateurs sont trop compliqués pour moi » ou bien
encore « Les ordinateurs ne me disent rien, ils sont trop
impersonnels ». Des recherches récentes ont d'ailleurs montré que
les VÉRITABLES n'ont besoin de rien dire à personne, et qu'en plus
ils n'ont pas peur d'être impersonnels.
[Cette première partie - 1987 - fait donc
référence aux premiers basics, ou au FORTRAN - le C++ de l'époque -
et aussi à l'apparition de la micro-informatique, les premiers ZX81
et autres Alices ;)]
Cependant, comme toujours, les choses évoluent.
Nous sommes dans un monde où les braves mêmes peuvent disposer d'un
ordinateur dans leur four à micro-ondes, où les gosses de 12 ans
peuvent ridiculiser un VÉRITABLE aux ASTEROÏDS ou au PacMan, et où
n'importe qui peut acheter et même comprendre son propre ordinateur
personnel. Les VÉRITABLES risquent fortement l'extinction, sous la
concurrence des lycéens avec leurs Macintosh[q].
[Aouch... on est vraiment en 1987! PacMan ?
Asteroids ??? Aujourd'hui - 2003 -, on parle plus de IGI2, Lan parties
d'Unreal2, et autres Doom3. Et les petiots actuels peuvent toujours
ridiculiser leurs aînés, quelque soit le jeu et son époque!]
Il est donc clairement urgent de mettre en évidence
les différences entre un lycéen joueur de PACMAN typique et un VÉRITABLE.
En soulignant cette différence, nous montrons ainsi à des gosses un
modèle à suivre, une aspiration de perfection, une figure
paternelle. Cela contribuera à montrer aux employeurs de VÉRITABLES,
pourquoi ce serait une erreur de remplacer ceux-ci par des lycéens
joueurs de PACMAN (quelques en soient les économies de salaires réalisées).
[Tout ce paragraphe fait clairement allusion
aux autodidactes des années 1980...
et ces personnes sont très largement remplacés par des ingénieurs
formés. Reste la différence entre les p'tits jeunes pas chers et les
autres.]
LES LANGAGES DE PROGRAMMATION
Le critère le plus simple pour repérer un VÉRITABLE dans la foule
est son langage de programmation. Les VÉRITABLES utilisent le
FORTRAN, les VISAGES-PÂLES utilisent le PASCAL[q].
Niklaus Wirth, le concepteur de PASCAL participait à une conférence.
On lui demanda comment il fallait prononcer son nom. Il répondit :
- Vous pouvez soit faire un appel par nom en prononçant « Wiirt »,
ou faire un appel par valeurs, en prononçant « Woort ».
Visiblement, on peut détecter par cette réponse que Niklaus Wirth
est un VISAGE PÂLE.
Les VÉRITABLES, eux, ne connaissent qu'un seul mécanisme de passage
de paramètres, le passage par adresse, qui est implémenté dans les
compilateurs FORTRAN-G et -H des IBM/370[q]. Les VÉRITABLES n'ont pas
besoin de tous ces concepts abstraits pour effectuer leur boulot, ils
se contentent d'une perfo, d'un compilo FORTRAN et d'un café.
- Un VÉRITABLE fait du traitement de listes en FORTRAN.
- Un VÉRITABLE fait des manipulations de chaînes de caractères en
FORTRAN.
- Un VÉRITABLE fait de la comptabilité (pour autant qu'il en fait)
en FORTRAN.
- Un VÉRITABLE fait des programmes d'intelligence artificielle en
FORTRAN.
S'il ne peut le faire en FORTRAN, il le fait en Assembleur, s'il ne
peut le faire en Assembleur, c'est que cela ne vaut vraiment pas la
peine d'être programmé.
[Si le FORTRAN est le C++ de
l'époque, le COBOL représentait le java d'antan, comme le montre la
version 1997, dix ans plus tard]
Les vrais programmeurs
ne portent pas de pantalon élégant; ils préfèreront le jeans qu'on
leur a offert pour leur première communion qui, bien que sale et délavé,
est beaucoup plus pratique pour éponger la moiteur de leurs mains
lorsqu'on leur commande un vrai programme en COBOL.
Les vrais
programmeurs n'aiment pas les langages visuels ; ces langages ont été
crées afin que les mauvais programmeurs puissent eux aussi développer
des applications gourmandes en mémoire et en temps de calcul, et ce
dans le but de faire vendre un maximum de Pentium II.
Les vrais
programmeurs pour leur part, savent faire tourner les mêmes
applications sur des XT... De toutes façons, ils ne savent pas encore
qu'on a invente le pentium.
Les vrais
programmeurs détestent encore plus le HTML, ce langage que même les
Macintosh comprennent, et qui est destine a des non-programmeurs afin
de leur donner l'impression qu'ils sont de vrais programmeurs. S'ils
doivent développer un site Web, les vrais programmeurs utiliseront
Java, qui, étant proche du C, leur donnera l'impression de faire de
la programmation système alors qu'ils sont en train de faire un site pornographique.
[Amusant : le Java a en effet
fondé sa popularité sur les applets et le web... mais aujourd'hui,
aucun FAI ou presque ne propose des serveurs en java. La très grande
majorité d'entre eux fonctionnent en Php et MySQL]
Les
vrais programmeurs n'aiment pas Microsoft ; pour eux, Windows 95 est
un jeu d'aventure au scénario bien faible dans lequel on est toujours
perdant, inconvénient qui était inexistant, même sur leur Atari
2600, alors qu'ils n'étaient pas encore de vrais programmeurs.
LA PROGRAMMATION STRUCTURÉE
Ces derniers temps, les autorités académiques en informatiques sont
tombées d'accord sur la manie de la programmation structurée. Elles
prétendent que les programmes sont plus faciles à comprendre quand
leurs auteurs pratiquent des techniques ou langages spéciaux de
programmation.
Ces savants ne sont pas tous d'accord sur quels langages ou quelles
techniques il faut utiliser, et leurs exemples en général sont faits
de manière à tenir sur une page de publication scientifique,
visiblement insuffisant pour convaincre qui que ce soit.
[Pourtant, ce mouvement
allait donner lieue à la programmation
par objet!]
Quand j'étais sorti de l'école, je pensais être le meilleur
programmeur au monde. Mon programme de morpion était imbattable, je
programmais en 5 langages différents et j'étais cap d'aligner un
programme de 1000 lignes qui marchait du premier coup (OUI !).
Mon premier boulot dans le monde VÉRITABLE fut de lire et de
comprendre un programme de 200.000 instructions FORTRAN, puis de
diviser par deux son temps d'exécution. Tout VÉRITABLE vous dira que
la programmation structurée ne vous est pas d'un grand secours pour résoudre
ce genre de problème. Il faut du TALENT.
[En fait... les notions de
performances comptent toujours en 2003, mais pas pour un simple
programme client-lourd, plus pour une architecture distribuée aux nombreux
clients légers et à un serveur surchargé. Il fait alors des talents
d'architecte]
Voici quelques opérations sur l'attitude des VÉRITABLES vis à vis
de la programmation structurée.
- Un VÉRITABLE ne craint pas d'utiliser les GOTOs.
- Un VÉRITABLE peut écrire une boucle DO de cinq pages sans se mélanger
les pinceaux.
- Un VÉRITABLE préfère les IF arithmétiques, ça prend moins de
place mémoire.
- Un VÉRITABLE est capable d'écrire du code auto-modifiant si cela
fait gagner 20 nanosecondes.
[Typiquement le genre
d'optimisation à laquelle on ne se risque plus depuis longtemps... au
moins 10 ans!]
Un VÉRITABLE n'a pas besoin de commentaires, il préfère se fier
au code.
[Hélas, on trouve encore ce type de
spécimen]
Un VÉRITABLE n'a pas besoin de IF structurés, de REPEAT, de CASE
...OF, tout cela peut se simuler en FORTRAN, au besoin en faisant des
ASSIGN, GOTO.
Les structures de données reçoivent aussi beaucoup de publicité ces
temps-ci. Les
types abstraits de données, les pointeurs, les listes
et les chaînes de caractères sont devenus populaires pour certains
milieux.
Wirth, le VISAGE PÂLE susnommé, a même écrit un bouquin prétendant
que vous pouvez écrire des programmes partant de structures de données,
au lieu de faire l'inverse.
Ainsi que le sait tout VÉRITABLE, la seule structure de données réellement
utiles est le *tableau*. Les listes, les structures, les chaînes de
caractères, les ensembles, tout ça sont des variétés de tableaux
qui peuvent se programmer comme tels sans se compliquer la vie avec
des distinguos subtils.
[Certes, mais un des succès
de Java, et avant lui, des MFC - Microsoft Fundation Class - C++, a
bien été la mise à disposition de toutes ces structures toutes
faites!]
La pire des contraintes avec cette fantaisie de types de données est
que vous êtes obligés de les déclarer, et vous savez bien qu'un VÉRITABLE
langage de programmation doit reconnaître implicitement le type de
données sur le premier des six caractères du nom de la variable.
[Ce qui est en effet une des caractéristiques du FORTRAN qui a une
part de typage
statique déclaratif implicite]
LES SYSTÈMES D'EXPLOITATION.
Quel est le type de système d'exploitation qui est utilisé par les VÉRITABLES
?
MS-DOS ? Dieu merci non ! Après tout, MS-DOS est un système
d'exploitation joujou. Même les petites mémés et les lycéens
peuvent comprendre et utiliser MS-DOS.
UNIX est bien un peu plus compliqué. Un hacker typique sous UNIX
n'arrive jamais à se souvenir quel est le nom de la commande PRINT
valable pour la semaine. Mais quand on y pense un peu, UNIX n'est
qu'un jeu vidéo un peu mis en valeur. On ne travaille pas sérieusement
sous UNIX, on se borne à envoyer des vannes au monde entier par UUCP, à écrire des jeux
d'aventure ou à rédiger des articles scientifiques pour publication.
Non, un VÉRITABLE travaille sous OS/370. Un bon VÉRITABLE peut
arriver à trouver dans son manuel JCL la signification de l'erreur
IJK305I qu'il vient d'avoir. Un VÉRITABLE fortiche peut écrire du
JCL sans consulter ce manuel du tout. Un VÉRITABLE carrément extra
peut trouver des bugs enfouis dans un dump mémoire de 6 Mégaoctets
sans utiliser une calculatrice hexadécimale.
OS/370 est véritablement un système d'exploitation remarquable. Il
est possible la dessus de détruire des journées de travail avec un
blanc mal placé, ce qui incite les équipes de programmation à une
plus grande concentration mentale. La meilleure manière pour aborder
le système OS/370 est par une perforatrice de cartes. Certains prétendent
qu'il existe un time-sharing sur OS/370, mais une étude minutieuse à
montré le contraire.
[On remarquera que cet aspect
- l'OS - très détaillé en 1987, et fort peu détaillé dans la
version 1997... Windows rulez de facto]
LES OUTILS DE PROGRAMMATION
Quels outils un VÉRITABLE emploie-t-il ? En théorie, il pourrait
rentrer ses programmes directement par les clés du panneau frontal de
son ordinateur. C'était effectivement le cas à l'occasion du temps où
les machines avaient encore cet accessoire. Il fut un temps ou un VÉRITABLE
connaissait typiquement par cœur son boot en hexa et le rentrait à
chaque fois qu'il lui arrivait de l'écraser avec son programme.
[... c'était le cas pour les
premiers ordinateurs représentants la micro-informatique]
C'était aussi le temps où la mémoire était véritable, et ne s'en
allait pas quand on coupait le jus. De nos jours, les mémoires
oublient ce qu'on leur demande de retenir et gardent des choses
qu'elles feraient mieux d'écraser. La légende dit que Seymour Cray,
le père du super ordinateur CRAY I et de la plupart des Control Data
a rentré aux clés le premier système d'exploitation du CDC-7600
quand celui-ci a démarré pour la première fois. Inutile de préciser
que Seymour Cray est un VÉRITABLE.
[Bien sûr, une référence
aux 16Ko de mémoire du ZX81, qu'une manipulation imprudente suffisait
à en réinitialiser le contenu! De nos jours, 256Mo se baladent en
porte-clé!]
Un de mes VÉRITABLES favoris était un ingénieur Texas Instrument.
Un jour, il reçut un appel longue distance d'un utilisateur dont le
système avait crashé au milieu d'une sauvegarde importante. Jim
avait alors réparé les dommages au téléphone en faisant rentrer
par l'utilisateur les instructions de disk I/O aux clés, en patchant
les tables systèmes en hexa et en se faisant relire les contenus des
registres à l'écouteur.
La morale de cette histoire est : Même si un VÉRITABLE utilise en général
une perfo ou une imprimante comme outil de génie logiciel, il peut
s'en sortir en cas d'urgence avec juste un tableau frontal et une
ligne téléphonique.
[Maintenant, sans une connexion
internet à haut débit... le même "véritable" est un peu
paumé pour retrouvé tous les drivers!]
Dans certaines sociétés, « édition de texte » ne signifie plus de
nos jours 10 ingénieurs faisant la queue devant une perfo en code 29.
[... ah oui, je confirme.
Cela rime de plus en plus avec imprimante laser recto-verso, parfois
même couleur!]
D'ailleurs mon lieu de travail n'a plus aucune perfo. Dans une telle
situation, un VÉRITABLE doit se résigner à utiliser un éditeur de
texte. La plupart des systèmes permettent le choix entre plusieurs éditeurs,
et il s'agit d'en choisir un qui soit compatible avec votre style de
travail. Beaucoup de personnes croient que les meilleurs éditeurs de
textes du monde proviennent des laboratoires XEROS à Palo Alto, sur
les systèmes ALTO et DORADO.
Malheureusement, comment voulez vous qu'un véritable puisse utiliser
un système d'exploitation au nom aussi ridicule que SMALLTALK, et
encore moins manipuler une souris ?
Quelques un des concepts de ces éditeurs de XEROS se sont retrouvés
dans des éditeurs tournant sur des systèmes aux noms plus
raisonnables (comme EMACS, VI).
[Toujours d'actualité en
2003. Vi, en particulier, semble parti pour dominer les traitements de
texte pour l'éternité!]
Le problème avec ces éditeurs de
texte est que le concept « Vous obtenez ce que vous voyez » est aux
yeux d'un véritable aussi vicieux chez un éditeur qu'il peut l'être
chez une femme. En réalité, un VÉRITABLE préfère du « Vous
l'aviez voulu, tant pis pour vous », du compliqué, de l'énigmatique,
du mystérieux, puissant et impitoyable comme TECO pour tout dire.
On a fait remarquer qu'une séquence de commande TECO ressemble plus
à un bruit de télétransmission qu'à du texte lisible. Un jeu bien
connu sur TECO consiste à taper votre nom en tant que commande et à
voir ce que cela donne. N'importe quelle erreur de frappe dans TECO
recèle une forte probabilité de destruction de votre programme, ou
mieux encore, d'introduction des erreurs dans un sous programme qui
fonctionnait dans le passé.
C'est ce qui explique pourquoi un VÉRITABLE rechigne à éditer un
programme qui tourne presque. Il préfère patcher directement le
binaire à l'aide d'un merveilleux outil appelé SUPERZAP (ou son équivalent
sur une machine non-IBM). Cela marche tellement bien, que beaucoup de
programmes IBM n'ont que peu de ressemblances avec le source FORTRAN.
En réalité, dans de nombreux cas, on ne dispose plus du tout du
source.
Quand il s'agit de corriger un tel programme, aucun patron ne
penserait à un autre recours qu'un VÉRITABLE : un VISAGE PÂLE
structuré ne saurait même pas par quoi commencer. On appelle ça :
« La protection de l'emploi ».
[Et c'est une
"stratégie" que l'on retrouve partout, pour toute
technologie informatique un tant soit peu compliquée à
maîtriser...]
Voici quelques outils de génie logiciel NON employés par les VÉRITABLES
:
- Les préprocesseurs FORTRAN comme RAFTOR ou MORTRAN. C'est bon pour
les VISAGES-PÂLES. Voir ci-dessus à propos de la programmation
structurée.
- Les aides au débogage en langage source. Un VÉRITABLE travaille
uniquement sur des dumps mémoire.
- Les compilateurs avec des protections de débordement de tableaux.
Ils brident la créativité, empêche les usages les plus intéressants
de l'instruction ÉQUIVALENCE. Ils rendent impossible la modification
des instructions système avec des indices négatifs. Et le pire de
tout, c'est que cela ralentit l'exécution.
- La gestion centralisée du code. Un VÉRITABLE garde toujours ses
sources dans des bacs de cartes personnels fermés à clé.
LES VÉRITABLES AU TRAVAIL
Où travaille un VÉRITABLE ? Quels genres de programmes requièrent
l'attention de cet individu aussi talentueux ? Vous n'en trouverez pas
en train d'écrire une paie-compta en COBOL, ou encore faisant du tri
d'adresses pour un club de micro. Un VÉRITABLE ne s'attelle qu'à des
tâches extraordinaires (au sens étymologique).
- Un VÉRITABLE travaille au laboratoire national de Los Almos et écrit
des simulations de bombes nucléaires sur CRAY-I.
- Un VÉRITABLE travaille au centre national de sécurité, pour décoder
des messages russes.
- Pour que la NASA puisse envoyer des gars sur la lune et les ramener
avant les russes, il a fallu des milliers de VÉRITABLES.
- Les VÉRITABLES travaillent chez BOEING pour concevoir des missiles
de croisière.
- Les VÉRITABLES les plus formidables travaillent au Jet Propulsion
Laboratory en Californie.
Beaucoup d'entre eux connaissent par cœur le logiciel de pilotage des
sondes Pionner et Voyager. En combinant des gros programmes FORTRAN au
sol avec un petit programme en langage machine la haut; ils sont
capables de prodiges de navigation et d'improvisation, comme taper
dans une fenêtre de dix kilomètres de large sur Saturne après six
ans dans l'espace. Ou bien encore de réparer des radios et batteries
endommagées. Il paraîtrait qu'un VÉRITABLE a réussi à fourrer un
programme de reconnaissance de forme de quelques centaines d'octets
dans un coin de mémoire libre, ce qui a permis de découvrir une
nouvelle lune de Jupiter !
Il est actuellement prévu pour le programme GALILEO de balancer la
sonde vers Jupiter au moyen d'une assistance gravitationnelle de Mars.
Cette trajectoire va passer à 80 kilomètres (plus ou moins 3 kilomètres)
de la surface de Mars. Personne ne ferait confiance à un programme
PASCAL (ou à un programmeur PASCAL) pour naviguer avec une telle précision.
Comme vous le voyez, beaucoup de VÉRITABLES existant au monde
travaillent pour le gouvernement Américain, et spécialement pour le
Département de la Défense (DoD). Et c'est très bien ainsi.
Récemment, cependant, un nuage noir a obscurci l'horizon des VÉRITABLES.
Il semblerait que quelques VISAGES-PÂLES haut placés du DoD aient décidé
que tous les programmes de la Défense devront êtres écrits dans un
grand langage unifié appelé Ada. Pendant un temps, il semblait que
Ada allait à l'encontre de la programmation VÉRITABLE (un langage
avec des structures, des types de données, des points-virgules, bref
un langage qui étiolerait la créativité des VÉRITABLES).
Heureusement, le langage qui fut finalement adopté par le DoD
comporte suffisamment de possibilités intéressantes pour le rendre
potable. Il est d'une effroyable complexité, et il contient des
outils pour tripoter le système d'exploitation et réordonner la mémoire.
Edsger Dijkstra ne l'aime pas (Vous connaissez Dijkstra, c'est celui
qui a écrit le livre « GOTOs considérés comme nuisibles ». Une
oeuvre remarquable applaudie par tous les programmeur PASCAL et les
VISAGES-PÂLES).
En tout cas rassurons-nous :
Un VÉRITABLE peut programmer en FORTRAN dans n'importe quel langage.
Il semblerait cependant que certains véritables peuvent condescendre
à faire un compromis dans leurs principes et à oeuvrer sur des
choses plus triviales que la destruction de la terre, à condition que
ce boulot puisse rapporter des sous.
ATARI par exemple, emploie
plusieurs VÉRITABLES pour écrire ses jeux vidéos (pas pour y jouer,
un VÉRITABLE connaît toutes les astuces pour battre la machine à
chaque coup et ce ne serait pas glorieux). Les gens de chez LUCAS FILM
sont aussi des
VÉRITABLES, il faudrait être fou pour refuser des millions de
dollars des fanas de « l'empire contre attaque ». En CAO, il n'y a
pour le moment pas assez de VÉRITABLES; Ils n'ont pas encore trouvé
le filon. On y trouve en général des gens qui y sont uniquement pour
faire du FORTRAN et éviter de faire du COBOL.
LES VÉRITABLES AU LOISIR
En général, un VÉRITABLE joue comme il travaille, avec des
ordinateurs. Il trouve d'ailleurs incroyable que son boss puisse le
payer pour faire quelque chose qu'il ferait de toute manière gratos
(Bien qu'il fasse attention de ne pas le dire trop fort). De temps en
temps, il arrive que le VÉRITABLE sorte de son bureau pour respirer
un bol d'air et prendre un verre de bière. Pour le reconnaître à
ces moments, voici quelques trucs :
- Dans un pot, les VÉRITABLES sont ceux qui sont dans un coin en
train de discuter des protections des systèmes d'exploitation et des
moyens pour les planter.
- Dans un match de foot, le VÉRITABLE est celui en train de comparer
le jeu avec sa simulation sur un listing.
- A la plage, le véritable est celui qui dessine des arbres
programmatiques sur le sable.
- Aux enterrements, le VÉRITABLE est celui qui dit « Pauvre Tim, son
tri tournait presque quand il a eu son attaque ».
- Au supermarché, le VÉRITABLE est celui qui insiste pour faire
passer lui-même les canettes de bière devant le lecteur optique, si
la caissière l'a mal fait la première fois.
L'HABITAT NATUREL DU VÉRITABLE
Dans quel biotope se plaît le mieux le VÉRITABLE ? C'est une
question importante pour les patrons de VÉRITABLES, car vu le coût
d'un tel spécimen, il est préférable de leur donner un
environnement tel qu'il puisse accomplir efficacement son travail.
Un véritable typique vit devant un terminal d'ordinateur. Autour de
ce terminal, on peut trouver :
- Les listings de tous les programmes sur lequel le VÉRITABLE a eu à
travailler, empilés par ordre chronologique et ce sur toute la
surface plane du bureau.
- Environ une demi-douzaine de tasses de café froid.
Occasionnellement, il peut y avoir des mégots flottants dans les
tasses. Quelques fois aussi, les tasses contiennent des restes de jus
d'orange.
- A moins d'un spécimen très fort, il y aura des exemplaires des
manuels du JCL-OS et des principes de base ouverts à une page
particulièrement intéressante.
- Scotché au mur, on trouvera bien sûr un listing calendrier SNOOPY.
- Jonchant le sol, des emballages MARS, BOUNTY ou tout autre équivalent
du genre qu'on vend dans les distributeurs et pré-rancis pour résister
à leur long séjour.
- Caché dans le tiroir supérieur gauche du bureau, un paquet de
cigarillos pour les grandes occasions.
- Sous les cigarillos, un NORMOGRAPHE laissé là par l'occupant précédent.
Un VÉRITABLE, lui, n'écrit que des programmes, pas de la doc, il
laisse ça aux gens de la maintenance.
Un VÉRITABLE est capable de travailler 30, 40 et même 50 heures
d'une traite, sous pression intense. Les temps de réponse lents ne dérangent
pas le VÉRITABLE, ils lui donnent la possibilité de faire un petit
somme entre deux compiles. Si le planning n'est pas trop serré, le VÉRITABLE
s'arrange en général pour rendre les choses plus palpitantes en
passant les neuf premières semaines sur un point réduit mais intéressant
du projet, puis en finissant le reste du projet la dernière semaine
en quelques marathons de 50 heures. Non seulement cela contribue à
impressionner diablement son patron, qui désespérait de voir le
projet finir dans les temps, mais cela lui fournit aussi une
excellente excuse pour ne pas faire la doc.
En général, on peut dire :
- Aucun VÉRITABLE ne travaille de 9 à 5 heures (A moins que ce ne
soit l'autre part de la journée).
- Un VÉRITABLE ne porte pas de cravates.
- Un VÉRITABLE ne porte pas de chaussures à talons.
- Un VÉRITABLE arrive au travail à temps pour le déjeuner.
- Un VÉRITABLE ne connaît pas ou ne se souvient pas du nom de sa
femme. Mais il peut réciter par cœur la table ASCII ou EBCDIC.
- Un VÉRITABLE ne sait pas cuisiner, les épiceries étant fermées
à trois heures du matin, il survit avec des barres de MARS et des
tasses de café.
[On notera que sur ces
points, la version de 1997 comporte bien des similitudes...]
Les
vrais programmeurs n'arrivent jamais a l'heure au travail : la simple
notion d'horaire est un frein considérable a l'ingéniosité et a la création
dont ils doivent faire preuve dans leur travail. Au sein d'une
entreprise, on séquestré toujours les vrais programmeurs dans un
ghetto nomme "Service Informatique" ou quelque chose du
genre. Motif officiel : leur donner l'occasion de travailler en paix;
motif officieux : ne pas leur donner l'occasion de draguer les jeunes secrétaires
en mini-jupe, celles-ci étant chasse gardée des jeunes requins aux
dents longues que l'on nomme "jeunes cadres dynamiques".
Les vrais programmeurs ne portent jamais de
cravate. Si d'aventure ils décidaient d'en mettre une quand même, l'oxygène
arrivant moins facilement au cerveau, ils deviendraient dans l'heure
de mauvais programmeurs, et dans le mois, des commerciaux très
respectes...
De toutes façons, les vrais programmeurs ne
portent jamais de chemise. Les vrais programmeurs ne portent jamais de
veston; cet accessoire vestimentaire limitant de manière assez appréciable
les mouvements des membres supérieurs, ils se retrouveraient dans l'impossibilité
de faire des gestes brusques et violents lorsqu'ils se rendent compte
que leur programme sur lequel ils viennent de passer de longues
semaines de travail intensif ne tourne pas.
Les vrais programmeurs ne cirent jamais leurs
chaussures; de toutes façons, on n'a jamais vu quelqu'un cirer ses
Nike Air.
Les vrais programmeurs ne mettent jamais d'ordre
sur leur bureau; ils y laissent traîner beaucoup de papiers-brouillon
sur lesquels ils ont griffonne des choses incompréhensibles, ce qui
donne l'impression a leur chef qu'ils font bien de la programmation structurée...
De toutes façons, un bureau en ordre est l'apanage d'un
fonctionnaire, étant donné qu'il n'a que ça a faire de toute la journée.
Les vrais programmeurs préfèrent travailler au
Luxembourg, car les cigarettes y sont moins chères... Car le vrai
programmeur fume, et au moins 3 paquets par jour; il trouve en effet
que son cendrier débordant apporte une touche pittoresque sur sa
table de travail. De plus, son bureau enfume a tendance a faire fuir
les commerciaux qui viennent furibonds lui annoncer qu'il ne sera
jamais dans les temps pour livrer le vrai programme qu'on lui a
commande et qui ne veulent pas que leur nouveau costume Hugo Boss
sente la fumée. A la limite, le vrai programmeur arrêtera de fumer
lorsque Bill Gates aura racheté Philip Morris.
Les vrais programmeurs portent les cheveux longs et
sales, car, lorsqu'ils arrivent au boulot, ils préfèrent plutôt être
pris pour les gens du service d'entretien que pour des cadres. Les
vrais programmeurs n'ont pas d'attaché-case; leur tête suffit a
transporter leurs connaissances.
Les vrais programmeurs n'ont pas de GSM; car ils
n'aiment pas qu'on les fasse chier a longueur de journée... De toutes
façons, les vrais programmeurs n'ont pour amis que d'autres vrais
programmeurs, qui partagent généralement leur bureau.
L'AVENIR DU
VÉRITABLE
Que nous réserve l'avenir ? C'est un sujet de préoccupation pour les
VÉRITABLES que les nouvelles générations de programmeurs ne soient
pas élevées avec la même conception de la vie que leurs aînés.
Beaucoup de ces jeunes n'ont jamais vu un ordinateur avec un panneau
frontal. On peut à peine trouver un nouveau diplômé qui sache
calculer en hexa sans une calculette. De nos jours, les diplômés
sont des pieds tendres, protégés des réalités de la programmation
par des débuggueurs symboliques, des éditeurs de textes qui comptent
les parenthèses, et des systèmes d'exploitations « conviviaux ».
Pire de tout, ces soi-disant « chercheurs » du logiciel récoltent
des diplômes sans même avoir jamais appris le FORTRAN ! Sommes-nous
destinés à devenir une industrie de programmeurs PASCAL ou de
maniaques UNIX ?
[Heu... non, plutôt C++ et
Java, bientôt C#!]
Heureusement, mon expérience vécue me dit que le futur reste radieux
pour les VÉRITABLES, Ni OS/370 ni FORTRAN ne montrent de signes de
faiblesses, malgré les tentatives des programmeurs PASCAL du monde
entier. Même les ruses les plus subtiles comme l'introduction de la
structuration dans le FORTRAN ont échoué.
Bien sûr, quelques constructeurs ont bien sorti des compilos
FORTRAN-77, mais tous offrent la possibilité de revenir au FORTRAN-66
moyennant une option de compile, et permettant ainsi de compiler des
boucles DO comme Dieu les a créées pour.
Mais l'avenir de UNIX peut ne pas être aussi mauvais pour les VÉRITABLES
qu'on le disait avant. La dernière release de UNIX contient des
potentialités dignes de n'importe quel VÉRITABLE : Deux interfaces
utilisateurs différentes et subtilement incompatibles, un driver TTY
tortueux et compliqué, de la mémoire virtuelle. Si vous laissez de
coté qu'il soit un langage structuré, le C peut se faire apprécier
d'un VÉRITABLE. Après tout, il ne vérifie pas les types des
variables, les noms ont seulement sept caractères (ou dix ? ou huit
?) et vous avez en plus les pointeurs (Comme si on avait les avantages
du FORTRAN et de l'Assembleur conjugués). Et sans oublier toutes les
applications créatives et intéressantes qu'on peut faire avec le #DEFINE.
Non, l'avenir n'est pas si mal. Et même, ces derniers temps, la
presse populaire a mentionné que les brillantes promos d'hackers
quittent des temples comme le MIT ou STRANFORD pour envahir le monde.
L'esprit est de toute évidence en eux. Tant qu'existent encore des
objectifs mal définis, des bugs bizarres et des plannings irréalistes,
il y aura des VÉRITABLES prêts à foncer dans le tas et à résoudre
les problèmes en laissant la doc pour plus tard.
LONGUE VIE AU FORTRAN !
[Moralité... inutile de trop
s'attacher à un langage de programmation! À moins de paraître bien
ridicule 10 ou 15 ans plus tard!]
|