orgmode-to-gemini-blog/sources/generated_wp2org_output/undefined.org

384 lines
21 KiB
Org Mode
Raw Normal View History

2024-11-10 15:58:11 +01:00
:PROPERTIES:
:ID: 436cb7f9-3e3f-4cb6-b560-c60b29d25663
:END:
#+title: le-petit-printf
#+post_ID: 193
#+post_slug: le-petit-printf
#+post_url: https://www.ciperbliss.com/2016/le-petit-printf
#+post_title: Le petit Printf
#+post_type: post
#+post_mime_types:
#+post_guid:
#+post_status: publish
#+post_date_published: <2016-04-21 13:10:07>
#+post_date_modified: <2016-05-12 14:30:14>
#+post_index_page_roam_id: [[id:1e4efda4-8200-472a-a8a3-448f3bbde3c2][undefined]]
#+not_converted: undefined
#+retrieved_from_db_at: <undefined>
* Le petit Printf
st une honte, dit le petit printf, qui a continué: Personnellement
je m'améliore.\\
-Avez-vous entendu parler de l'effet Dunning-Kruger ?, demanda
l'homme.\\
-Non c'est quoi?\\
-C'est une question de biais cognitif. Cet effet dit essentiellement que
les gens qui sont moins compétents ont tendance à surestimer leurs
qualifications, et les gens qui sont compétents ont tendance à
sous-estimer systématiquement les leurs.\\
-Donc, si je pense que je suis bon, je ne suis probablement pas bon.\\
-Oui exactement. Vous êtes probablement mauvais. D'autre part, je dis
ouvertement que je suis un programmeur horrible. Mais selon
Dunning-Kruger, je vais probablement me sous-estimer, et cela fait de
moi un bon développeur, ne voyez-vous pas?\\
-J'imagine?\\
-En effet, l'auto-dévalorisation est un outil essentiel du développeur.
Le moment où vous sentez que vous êtes bon, vous allez vous détendre et
arrêter l'amélioration.\\
-Est-ce que cela signifie pas que le moment vous vous sentez être bon
vous-même, vous êtes en route vers l'échec et alors vous devriez vous
sentir mal?\\
-Oui. Mais le chemin à parcourir à ce sujet est de dire que tout est
terrible, même si vous avez pas de solutions à offrir. De cette façon,
vous avez l'air intelligent, même si vous n'avez pas grand chose à
apporter.\\
-Que voulez-vous dire?\\
-Disons que je me ballade sur le net que que je tombe sur un projet que
je n'aime pas. L'astuce est de souligner tout ce qui ne va pas, sans
donner plus d'informations que cela. Vous pouvez aussi faire subtilement
remarquer que les façons dont la personne qui a fait la chose est un
idiot sans problème.\\
-Et comment s'améliore-t-on avec cela?\\
-Eh bien, j'aime à penser qu'ils sont meilleurs en sachant qu'ils sont
sur la mauvaise voie, et je suis un bienfaiteur pour eux de le leur
montrer. C'est un peu de fumée et des miroirs. Personne ne sait ce qu'il
fait, mais cette façon, il semble que moi je sais ce que je fais.\\
-Et qu'est ce qui se passe quand on vous demande de l'aide et que vous
ne pouvez rien faire à ce sujet?\\
-Voilà où vous pouvez revenir à dire tout est pourri; que vous auriez
plein de coupes franches à faire, qu'il faudrait améliorer d'autres
choses, tout en étant bien pessimiste. Ils sont livrés à eux-mêmes.\\
-Donc, c'est juste une posture? Vous jouez un personnage pour faire
votre chemin et esquiver ? Vous êtes la personne qui prétend être
incompétent sur des choses qu'ils savent, ce qui rend les gens qui ne
savent vraiment rien à se sentir encore pire, et vous êtes la personne
qui prétend être compétent à des choses que vous ne savez pas, de sorte
que les gens qui essaient de s'y améliorer aussi se sentent mal.\\
-Dans tous les cas, la compétence a très peu à voir avec tout cela. La
réputation est très important cependant. Les gens embauchent des amis,
et les personnes qui ne sont pas aimé et get non essentiels se font
virer en premier; essayez de changer le système et vous devenez détesté.
Tout est un jeu très social. C'est comme ça que ça fonctionne dans
l'industrie, et probablement dans le milieu universitaire aussi, bien
que je ne sais pas? Tout est une question de qui vous connaissez, il
faut savoir vous vendre, et faire connaître votre marque personnelle
vous savez? Voilà comment vous obtenez des emplois dans ce buisness.\\
-Si cela est la façon dont les choses sont et que vous devez vous sentir
mal et de faire en sorte que d'autres se sentent mal lorsqu'ils font
bien les choses, peut-être que je ne veux pas un emploi dans ce
buisness, dit le petit printf, avant de sortir.\\
** *Chapitre 6*
:PROPERTIES:
:CUSTOM_ID: chapitre-6
:END:
[[http://ferd.ca/static/img/printf/realprog.png]]\\
Pendant le temps qui aurait été la pause déjeuner, Printf interrompu une
personne qui avait apparemment oublié de manger, regardant un sandwich
devenir de plus en plus froid à côté d'elle, assis à son bureau et en
regardant leur écran. Cela semblait être une personne très occupée qui
savait ce qu'elle faisait.\\
Printf demande: "Si une base de données primaire peut crasher, la
suivante peut elle échouer aussi? -Tout ce que vous avez, dit la
personne, peut et va échouer tôt ou tard. -Même les choses qui vous
disent des choses ont échoué? -Oui, même ceux-ci. Tous les grands
systèmes sont dans un état d'échec partiel à un moment donné. -Mais, à
quoi bon essayer de faire des systèmes fiables alors? -La personne ne
savait pas, à ce moment là, qu'elle essayait de répondre à une page
(pour éviter que le ciel ne lui tombe sur la tête en raison d'un cloud
brisé) qui lui demandait la même chose. -Donc, rendre les systèmes
fiables, pour quoi faire? appuya à nouveau le petit printf. énervé, car
la personne avait affaire à un problème de production, avec ce gamin qui
ne voulait pas le lâcher et un sandwich qui allait se perdre, la
personne avec impatience balança: -C'est complètmeent inutile. Toute
programmation est de la merde de toute façons. -oh !", s'étonna-t-il.\\
Puis il y eut un moment de silence complet.
[[http://ferd.ca/static/img/printf/trashcan.png]] Le petit gars a
répondu, avec un soupçon de ressentiment: "Je ne vous crois pas. Les
programmes sont fragiles, mais les programmeurs peuvent faire de bons
efforts et améliorer les choses, et les rendre utiles." Aucune réponse
est revenue. À ce stade, la personne avait ouvert le document expliquant
comment démarrer une nouvelle copie de l'ensemble du cluster à partir de
zéro, et les choses semblaient aller de mal en pis. "Et vous croyez
vraiment que les bons progr-" -Oh non!" s'écria la personne. "Non non
Non! Je ne crois pas à de bons programmes ou fiables! Plus maintenant!
Ils sont tous dégueulasses! Je viens de vous dire la première chose qui
vient à ma tête parce que je fais face à un de ces systèmes de merde en
ce moment. Ne voyez-vous pas que je suis en train de tenter de garder en
vie ce genre de choses? Cette merde est en fait de la conséquence.
Printf regarda ailleurs, avec une expression choquée. "En fait, des
conséquences? Vous parlez comme un «vrai programmeur»." Il a ajouté:
"Vous mélangez tout, vous confondez tout. Il y a eu des millions de
programmes, et pour les années qu'ils ont été en cours d'exécution ils
meurent tous de la même manière. Et les gens les ont utilisés et en ont
eu besoin. Et je connais certains programmes qui fonctionnent nulle
part, sauf sur un seul ordinateur portable, et en une seule erreur
pourrait détruire des communautés entières, sans même que personne ne le
remarque. Et vous pensez que cela n'a pas d'importance?" La personne
resta silencieuse.
** *Chapitre 7*
:PROPERTIES:
:CUSTOM_ID: chapitre-7
:END:
[[http://ferd.ca/static/img/printf/frameworks.png]] Le quatrième espace
de travail de mon ami visita avait un homme dont l'ordinateur a été
couvert de tant d'autocollants que personne ne pouvait dire quelle
marque il était. "moteur-mvc, quadrangulaire JS, GoQuery, cometeor,
quelque chose sonnant japonais,..." "-Salut, l'interrompit printf.
Qu'est-ce que tu fais?" "Alchimiste, bongodb, mochascript, walktime.js,
portasql,...," l'homme poursuivit. "Que fais-tu ?," demanda-t-il à
nouveau, plus fort cette fois. "Oh, je suis en train d'essayer de
nouveaux frameworks, des outils, des bases de données, les langues.\\
-Whoa, vous semblez aller vite, peut-être aussi vite que 10 programmeurs
mis ensemble! -Oui! Enfin, l'industrie se déplace aussi très vite !"\\
il regarda son téléphone pour une seconde, et il a ajouté " Voilà! le
framework de cardboard.io a sorti sa version 3.5 qui a brisé la
compatibilité avec la 3.4 et cela a abouti à 4 fourchettes dans la
communauté! Je dois les essayer tous de savoir lequel choisir!\\
-et que faites-vous à apprendre tout cela?\\
-Je suis un des premiers. Si vous ne restez pas à jour, vous restez
coincé à écrire du COBOL ou du MUMPS pour vivre. Vous voulez trouver la
prochaine grande chose, et surfer sur la vague vers le haut!\\
-ça a déjà fonctionné?\\
-Oh oui! J'ai appris Rails avant qu'il ne soit grand, et j'ai compris
node.js avant qu'il soit connu, et j'étais sur les premières bêta de
Redis, MongoDB et Riak! J'étais le premier à utiliser Vagrant et je nous
ai fait passer à Docker mais bien sûr, maintenant le truc ce sont les
Unikernels..\\
-Cool, et toutes ces choses où vous étiez à l'avant-garde, ça a payé?\\
-oh non; Le temps que Rails devienne énorme j'étais passé à la prochaine
grande chose, donc je ne me suis pas retrouvé hors du coup. De même,
pour les autres. Il me reste de l'espoir pour les unikernels cependant\\
-Je vois, ajouta le petit printf, pensif. Quels problèmes avez-vous
résolu avec tous ces frameworks alors?\\
Oh, je fais en sorte que nous n'utilisons pas quelque chose qui ne va
pas être grand, de sorte que cette société n'aille pas de miser sur des
technologies qui n'ont aucun avenir. C'est un travail très important,
parce que si vous ne faites pas cela, vous ne pouvez pas trouver
quelqu'un à embaucher en dehors de vieilles barbes grises du fond des
âges passés, et que vous voulez fonceurs auto-motivés, qui sont aussi
les premiers à adopter les nouvelles technos, dit l'homme. -C'est drôle,
renchérit notre ami.\\
-C'est très dur! dans le monde des startups, si vous voulez des joueurs
alphas, vous avez besoin d'une bonne technologie pour les mettre en
appétit! Sinon, vous êtes coincé avec les retardataires inflexibles.
Personne ne veut être un retardataire inflexible.\\
-Le petit printf intervint: Non, ce n'est pas ce que je veux dire." et
il ajoute ensuite "ce que je veux dire, il est drôle que les outils sont
destinés à résoudre des problèmes pour nous, mais pour vous, les outils
eux-mêmes sont devenus un problème."\\
Et tandis que l'homme se tenait là en silence (sur son nouveau bureau à
roulettes trop cool), le petit printf se dirigea hors de la salle.\\
** *Chapitre 8*
:PROPERTIES:
:CUSTOM_ID: chapitre-8
:END:
[[http://ferd.ca/static/img/printf/ops.png]]\\
Dans le bureau d'à côté se trouvait un employé fatigué, avec des
dizaines de tasses à café vides, recroquevillée sur ton clavier, à taper
avec énervement.\\
"Salut, dit le petit printf."\\
La femme n'a pas arrêté ce qu'elle faisait. Elle a continué à taper
furieusement.\\
"Bonjour?" demanda-t-il à nouveau.\\
La femme s'arrêta d'un coup, pris un flacon d'un tiroir dans son bureau,
et a pris une gorgée.\\
"J'ai un travail terrible, dit-elle. Je fais DevOps. ça avait bien
commencé, la plupart du temps je développais et puis parfois je
debuguais des choses, mais plus le temps passait, plus à a a empiré.
J'ai commencé à lutter contre les incendies dans notre pile, puis plus
d'incendies ont commencé à se produire. Je me suis débarrassé de la
plupart d'entre eux, tirant de petits miracles ici et là pour ensuite
respecter les délais de dev sur des choses que je devais aussi faire en
plus.\\
-Et ont-ils embauché quelqu'un pour aider?\\
-Non, c'est ça le truc. Les petits feux continuent de se produire ici et
là, et en raison du temps que je prends pour les combattre, je ne peux
pas être aussi prudente qu' avant avec le dev, donc je crée plus de feux
tout le temps. Maintenant, je lutte contre les incendies toute la
journée et toute la nuit et je déteste mon travail. -Pourquoi votre
employeur ne fait pas quelque chose?\\
-Je suis douée à faire mon travail, et je suis parvenu à garder les
choses sous contrôle assez longtemps que tout le monde s'y soit habitué.
Lorsque vous prenez l'habitude de petits miracles, les gens sont
habitués. Ensuite, vous êtes coincé à faire des miracles tout le temps
ou ils vont penser que vous ne faites pas votre travail du tout.\\
-Cela semble très triste\\
-ça l'est; et parce que vous êtes la personne la plus familière avec ces
feux, vous obtenez seulement de travailler sur eux de plus en plus,
jusqu'à ce que votre employeur embauche quelqu'un d'autre pour couvrir
votre ancien emploi, celui que vous aimiez. Si vous vous souciez assez
dur sur votre travail pour être celui qui fait les choses que tout le
monde déteste, on vous remerciera en vous donnant de plus en plus de ce
travail qui ne vous plaît pas, jusqu'à ce que ce soit tout ce que vous
faites. Et puis il n'y a plus rien pour vous plaire dans votre job.\\
-Alors, vous êtes malchanceuse," dit le petit printf.\\
Et son pager sonna encore.\\
"Cette femme," dit le petit printf à lui-même, en continuant plus loin
son voyage, "cette femme serait méprisée par tous les autres: par
l'expert spécialisé, par le développeur de rockstar, par l'adoptant
premier. Néanmoins, elle est la seule d'entre eux tous à sembler utile.
Peut-être est parce qu'elle pense à autre chose qu'à elle-même.
** *Chapitre 9*
:PROPERTIES:
:CUSTOM_ID: chapitre-9
:END:
[[http://ferd.ca/static/img/printf/architect.png]] A l'angle du
bâtiment, printf trouvé un grand bureau avec de grandes fenêtres donnant
une vue imprenable sur la région. Dedans, est assis un vieux monsieur
avec des rames de documentation sur son bureau.\\
"Ah, voici un développeur!" s'écria l'homme, alors que printf se tenait
à la porte. "Entrez!" En regardant à travers les fenêtres, le petit
printf a remarqué qu'ils étaient pleins d'écriture. Avec l'aide d'un
stylo effaçable à sec, la vue sur le monde extérieur a été masqué par
des tonnes de cercles, des flèches, des cylindres, et les nuages. Alors
qu'il était curieux les nuages de l'homme nécessaire tirées où les vrais
pouvaient être vus à l'extérieur, tout l'ensemble était plus
intrigant.\\
"Qu'est-ce que c'est ?," demanda notre ami, en montrant les fenêtres.\\
"Oh ça? Ceci est notre système de production!" Dit l'homme, en pensant
non pas une seule fois que la question portait sur le monde extérieur.
"Je suis un architecte logiciel.\\
-Qu'est-ce qu'un architecte logiciel?\\
-La plupart du temps, il est quelqu'un qui sait comment structurer au
mieux et coordonne les composants d'un grand système pour que tout aille
bien ensemble. Il est quelqu'un qui doit connaître les bases de données,
des langages, des framewords, des éditeurs de code, des formats de
sérialisation, des protocoles et des concepts tels que l'encapsulation
et la séparation des préoccupations.\\
-Très intéressant! dit le petit printf, voici quelqu'un qui peut
répondre à toutes mes questions! Il regarda les diagrammes
d'architecture. Votre système est très impressionnant. Est-il très
rapide à fonctionner?\\
-Je ne pouvais pas vous dire, dit l'architecte. ça doit être le cas, je
pense. -Comment est le code alors, est-il bon?\\
-Je ne pouvais pas vous dire\\
-les utilisateurs sont-ils heureux?\\
-Je ne pouvais pas vous dire non plus, je crains\\
-Mais vous êtes un architecte logiciel!\\
-Exactement! Mais je ne suis pas un développeur. Ce n'est pas
l'architecte qui va et écrit les modules et les classes, combine les
bibliothèques. L'architecte logiciel est beaucoup trop important pour
aller toucher au code. Mais il parle avec les programmeurs et les
développeurs, leur pose des questions, leur donne des conseils. Et si le
problème se trouve être assez intéressant, l'architecte prend en charge
la planification.\\
-Et pourquoi ça?\\
-Parce que nous sommes plus expérimentés. Nous en savons plus sur les
systèmes et ce qui fonctionne ou non. Les développeurs peuvent alors
être une extension de nos connaissances pour produire de grands
systèmes!\\
-Mais comment savez-vous si les choses vont bien sans s'impliquer avec
le code?\\
-Nous faisons confiance aux développeurs\\
-Donc, vous leur faites confiance pour mettre en œuvre vos idées
correctement, mais pas assez pour venir avec leurs propres idées?"\\
L'architecte logiciel était visiblement ébranlé par ce commentaire. "Je
suppose que je pourrais avoir été un peu déconnecté," il a finalement
admis. "Le problème est que, après un certain temps, vous êtes invité à
travailler avec des idées tellement vous ne disposez pas d'un bon moyen
de les faire tester ou vérifier..." Il baissa les yeux, pensif.
"Parfois, un architecte logiciel ne fait ni logiciel, ni architecture,
on dirait."\\
Le petit printf a quitté la salle, ayant terminé de sa visite, il quitta
le bâtiment.\\
** *Chapitre 10*
:PROPERTIES:
:CUSTOM_ID: chapitre-10
:END:
[[http://ferd.ca/static/img/printf/charity.png]] le petit printf, une
fois à l'extérieur, a rencontré un homme collectant de l'argent pour la
charité.\\
"Salut, dit l'homme. Que diriez vous d'aider quelqu'un aujourd'hui?\\
-ça m'aiderait sans doute à me faire sentir mieux, répondit printf. Je
suis allé dans ce bureau toute la journée, et maintenant je suis plus
confus que jamais.\\
-Ah, je vois. Ces personnes sont tous les développeurs. Ils ne sont pas
vraiment utiles, n'est-ce pas? Ce qu'ils aiment à dire est qu'ils
changent le monde, et ils ont pas mal réussir à à le faire, en fait.\\
-Pourquoi est ce que je me sens si gêné, alors? questionna le petit
printf.\\
-Eh bien, le meilleur qu'ils font est souvent d'aider à convertir les
emplois de certaines personnes dans des programmes, ou de rendre les
loisirs de tout le monde plus tranquilles.\\
Le logiciel est en train de manger le monde et de lui faire changer de
visage, c'est certain... mais au fond, c'est le même vieux monde, avec
un visage mutilé. La raison pour laquelle on se sent gêné est que le
changement de cette façon ne veut pas dire les choses deviennent mieux.
Nous avons les mêmes défauts et les problèmes que nous avons toujours
eu, les mêmes trous à combler à l'intérieur.\\
-Alors, comment puis-je me sentir mieux?" le petit printf était
visiblement anxieux.\\
L'homme a pensé pendant un certain temps, et a offert printf à venir
l'aider à aider les autres, car c'était la façon que cet homme avait de
se sentir mieux. Au cours de l'après-midi, printf raconta à l'homme ses
problèmes et son aventure. Après un long silence, l'homme dit:\\
"Les jeux que les gens jouent, les rôles et les réputations qu'ils
poursuivent et entretiennent, le plaisir éphémère qu'ils tirent de la
résolution de problèmes complexes, c'est amusant pendant un certain
temps. En fin de compte, si vous ne résolvez pas quelque chose de
valable, si vous oubliez les personnes impliquées, ça ne va jamais être
vraiment satisfaisant.\\
Et cela peut être très bien, ou ça pourrait ne pas l'être, et vous
pouvez ou ne pouvez pas obtenir cela par ailleurs que sur votre lieu de
travail quand vous grandissez. Le travail peut être un travail; il peut
être pour l'argent, il peut être pour le plaisir. C'est bon. Tant que
vous parvenez à obtenir de l'accomplissement quelque part dans votre
vie. À la fin cependant, il est seulement quand vous résoudre les
problèmes avec un visage humain que vous pouvez vraiment sentir bien; Ce
qui est essentiel est invisible pour l'ordinateur.\\
C' est le temps que vous avez passé sur votre système qui le rend si
important », l'homme a ajouté," et quand vous avez perdu de vue pourquoi
il était logique de passer du temps là-dessus, quand il est devenu un
jeu d'orgueil, alors il a causé plus de douleur que de soulagement.\\
Les développeurs ont souvent oublié cette vérité; Si vous perdez de vue
des choses, travailler sur votre système devient son propre problème, et
la solution la plus efficace est de se débarrasser du système, étant
donné qu'il est le problème."\\
"C'est seulement quand vous résolvez les problèmes avec un visage humain
que vous pouvez sentir vraiment bien", répéta le petit printf à
lui-même, de sorte qu'il s'en souvienne.
** *Chapitre 11*
:PROPERTIES:
:CUSTOM_ID: chapitre-11
:END:
[[http://ferd.ca/static/img/printf/printf-end.png]]\\
Printf, qui est maintenant assis juste en face de moi, est sur le chemin
du retour. Parler avec lui m'a fait réaliser à quel point ce que je fais
m'éloigne ce que je voulais, ce pour quoi j'ai commencé à programmer.
Chacune des personnes que le petit Printf a rencontré sont les rôles que
je me vois prendre moi-même un jour ou l'autre au fil du temps. J'ai été
encouragé par eux pour devenir comme eux, et j'ai probablement encouragé
des gens à faire la même chose.\\
Lorsque je me suis lancé dans le jeu d'essayer de devenir un véritable
programmeur, Printf ne l'a pas fait. Il a dit qu'il était correct de ne
pas être un vrai programmeur, qu'il préférait être un programmeur avec
un visage humain.\\
Aujourd'hui, je suis coincé dans la situation où je regarde en arrière,
je dois comprendre si je peux, aussi, devenir un programmeur avec un
visage humain ; ou si tout ce que je fais est juste un emploi. Il ne
semble pas y avoir tellement de choses qui vaille la peine entre-deux.\\
En tous les cas, là où printf a estimé qu'il n'a pas besoin d'être un
vrai programmeur, je pense que je ressens la même chose maintenant.\\