{"id":73295,"date":"2022-06-13T01:04:51","date_gmt":"2022-06-12T23:04:51","guid":{"rendered":"https:\/\/www.tierslivre.net\/ateliers\/?p=73295"},"modified":"2022-06-13T01:08:45","modified_gmt":"2022-06-12T23:08:45","slug":"40jours-02-debug-le-hasard-nexiste-pas","status":"publish","type":"post","link":"https:\/\/www.tierslivre.net\/ateliers\/40jours-02-debug-le-hasard-nexiste-pas\/","title":{"rendered":"#40jours #02 | le hasard n&rsquo;existe pas &#8211; debug"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Le Diable se cache dans la d\u00e9tails. La co\u00efncidence des faits. Plusieurs fen\u00eatres, des petit carr\u00e9s noirs \u00e9clair\u00e9s de pattes de mouches, lire, chercher les traces et reconstituer ce qu&rsquo;il peut bien se passer, sans penser \u00e0 mal, sans rien pr\u00e9juger. Les \u00e9l\u00e9ments jouent ensemble pour se jouer du tout. Qu&rsquo;est-ce qui se passe, dans la r\u00e9alit\u00e9? Pourquoi lorsque je demande un bouquet de fleurs ma requ\u00eate n&rsquo;aboutit pas? Contrairement \u00e0 la vie, un programme informatique suit un ordre pr\u00e9cis, ligne \u00e0 ligne, une logique implacable et qui pourtant \u00e0 la fin se perd dans des limbes. Relire, encore, pour trouver le coupable. Cela demande de l&#8217;empathie. Se mettre \u00e0 la place de la machine. D&rsquo;abord il re\u00e7oit la requ\u00eate. Il ne fait pas de doute sur sa bonne r\u00e9ception, il ne sait pas mentir pas, il ne sait pas jouer et je ne dois pas me formaliser de son inaptitude chronique \u00e0 ne pas faire ce qu&rsquo;il dit qu&rsquo;il fera, il ne cherche pas \u00e0 nuire, ni \u00e0 servir, il fait jouer sa m\u00e9canique sans penser. Je ne dois pas chercher \u00e0 l&rsquo;accuser mais \u00e0 montrer sa faute. Il est tout de suite au travail, je le vois, je piste chacune de ses actions. Il regarde ce qu&rsquo;il lui reste en stock, il compte chaque fleur pour reconstituer par avance le bouquet esp\u00e9r\u00e9 et il se rend bien compte que cette demande est raisonnable, il doit agir sans attendre. Il \u00e9crit la commande dans un journal. Puis il demande un service \u00e0 la banque puis n&rsquo;attend pas la r\u00e9ponse obtenu &#8211; c&rsquo;est un autre que lui m\u00eame qui s&rsquo;en chargera, un clone, une autre fen\u00eatre de code, plus tard. Il sait juste que l&rsquo;action arrivera, qu&rsquo;on prendra note de la r\u00e9ponse de la banque, on d\u00e9cidera, on acceptera ou pas et renverra une r\u00e9ponse, car c&rsquo;est \u00e9crit. La banque a r\u00e9pondu, il le sait, l&rsquo;autre doit demander la pr\u00e9paration du bouquet et sans attendre peut enfin r\u00e9pondre: Oui votre bouquet sera livr\u00e9. Et pourtant non. Non. J&rsquo;essaie et pourtant oui, mais non, car c&rsquo;est la r\u00e9alit\u00e9, pas pour tous les bouquets, certains disparaissent, certains ne sont jamais envoy\u00e9s. Je lis et relis le journal, le programme, les actions. La logique est respect\u00e9e, si on \u00e9tait dans un monde parfait jamais un bouquet ne serait oubli\u00e9. Il faut mettre en doute. Ouvrir une fen\u00eatre derri\u00e8re chaque fen\u00eatre &#8211; deviner, \u00e9clairer, recommencer. Les fleurs sont l\u00e0. La banque prend l&rsquo;argent. Le bouquet n&rsquo;est pas envoy\u00e9. Le hasard? Cela n&rsquo;existe pas. Mais la co\u00efncidence, oui. La m\u00e9canique gripp\u00e9e. Pourquoi rien ne va alors que tout marche? Il ne reste plus qu&rsquo;une seule faute possible. Il \u00e9crit, il \u00e9crit trop, il a trop \u00e9crit. Son journal est rempli, il ne peut plus prendre de notes du tout, il s&rsquo;arr\u00eate, sa m\u00e9moire est pleine, de trop de lignes, trop d&rsquo;actions r\u00e9p\u00e9t\u00e9es. Fuck la banque. Fuck le bouquet. Tout va bien, il a juste tout abandonn\u00e9.  <br><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Codicille. D\u00e9finition:\nThe facade pattern (also spelled fa\u00e7ade) is a software-design pattern commonly used in object-oriented programming. Analogous to a facade in architecture, a facade is an object that serves as a front-facing interface masking more complex underlying or structural code. (...) Developers often use the facade design pattern when a system is very complex or difficult to understand because the system has many interdependent classes or because its source code is unavailable. This pattern hides the complexities of the larger system and provides a simpler interface to the client. https:\/\/en.wikipedia.org\/wiki\/Facade_pattern\n\nFaire une Fa\u00e7ade est un mod\u00e8le de conception commun\u00e9ment utilis\u00e9 lorsque l'on programme avec des objets. Analogue \u00e0 la fa\u00e7ade d'un b\u00e2timent, une fa\u00e7ade est un objet qui sert \u00e0 cacher une certaine complexit\u00e9 dans le programme. Les d\u00e9veloppeurs cr\u00e9ent souvent des fa\u00e7ades lorsqu'il y a trop d'interd\u00e9pendances ou lorsque le comportement initial est refoul\u00e9, cach\u00e9, secret. Cette mani\u00e8re de faire cache la complexit\u00e9 des plus importantes m\u00e9caniques en jeu et fournit aux personnes une mani\u00e8re de communiquer plus acceptable.<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Le Diable se cache dans la d\u00e9tails. La co\u00efncidence des faits. Plusieurs fen\u00eatres, des petit carr\u00e9s noirs \u00e9clair\u00e9s de pattes de mouches, lire, chercher les traces et reconstituer ce qu&rsquo;il peut bien se passer, sans penser \u00e0 mal, sans rien pr\u00e9juger. Les \u00e9l\u00e9ments jouent ensemble pour se jouer du tout. Qu&rsquo;est-ce qui se passe, dans la r\u00e9alit\u00e9? Pourquoi lorsque je <a class=\"more-link\" href=\"https:\/\/www.tierslivre.net\/ateliers\/40jours-02-debug-le-hasard-nexiste-pas\/\">Continuer la lecture<span class=\"screen-reader-text\">#40jours #02 | le hasard n&rsquo;existe pas &#8211; debug<\/span><span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":395,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"h5ap_radio_sources":[],"footnotes":""},"categories":[3251,3303,1],"tags":[],"class_list":["post-73295","post","type-post","status-publish","format-standard","hentry","category-40jours","category-40jours-02-facades","category-atelier"],"_links":{"self":[{"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/posts\/73295","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/users\/395"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/comments?post=73295"}],"version-history":[{"count":0,"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/posts\/73295\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/media?parent=73295"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/categories?post=73295"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tierslivre.net\/ateliers\/wp-json\/wp\/v2\/tags?post=73295"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}