phenomenology
A repository to work on the idea and practice of phenomenology of coding
rad:z2tGi4J7bAfjATrSKni8hPwLy9iUW
Visibility
public
Delegates
did:key:z6MkhgPg6WShnhJcmfwox4G5yL3EvJ2zW8L31SZLD95yUi11
Default branch
main → a7e65c946a966e56d972cca40d209461db6f4059 (Sun Nov 3 08:41:08 2024)
Threshold
1
README.md
Ca te dirait de proposer un talk sur la phénoménologie du code à newcrafts? ToF 9:57 AM oui ! c'est quand ? arnaud 10:25 AM Novembre 2025 10:26 https://ncrafts.io ncrafts.ioncrafts.io NewCrafts Paris 2025 NewCrafts Paris, an ephemeral learning ground for professional developers who care for quality code and bettering their practices. ToF 10:33 AM Ok ! arnaud 10:38 AM j'avais proposé ça l'année dernière https://sessionize.com/s/arnaud-bailly/an-experiment-in-phenomenology-of-code/35167 sessionize.comsessionize.com Arnaud Bailly's Speaker Profile Arnaud has been developing software and helping teams develop software for nearly three decades, in various technologies, contexts and roles. He is i... ToF 10:44 AM (je tremble un peu en me demandant si je vais devoir relire les Ideen :sweat_smile:) 1 reply 1 day agoView thread ToF 10:57 AM J'ai besoin de savoir quelle est ton expérience d'une épochè sur le code. Ma conception à propos du code : c'est un texte décrivant dans une notation formelle des relations entre les éléments d'une machine. Les éléments, ainsi que les relations peuvent être renommées à souhait. 11:00 Si une expérience (de coding) doit pouvoir donner une expérience d'épochè, c'est probablement une expérience dans laquelle ces éléments/relations se donnent "ontologiquement" à travers le phénomène, sans qu'aucun monde de correspondance ne soit nécessaire à ce don. 11:01 (Si on reprend Husserl : le phénomène lui-même vous donne son être. Pas besoin d'arrière monde, ou de paradigme). 11:01 (anti-dualisme) arnaud 11:34 AM C'est une bonne question :sweat_smile: arnaud 12:00 PM (relis ses notes) arnaud 12:05 PM Pour moi il s'agit de l'expérience que j'ai du code quand je me concentre, seul ou avec quelqu'un d'autre, sur ses nécessités propres, en dehors de toute considération liées à sa finalité concrète renvoyée à un horizon lointain (en fait pas si lointain mais on peut faire comme si). 12:07 Ainsi que de tous les phénomènes qui peuvent découler de cette mise en parenthèse du monde, notamment physiques : la sensation de m'enliser, de pousser, de sentir une résistance ou pas, etc. arnaud 12:19 PM C'est d'une certaine manière ce qui rend caduque toutes les tentatives de comparaison et d'assimilation du code et de la programmation à d'autres activités, et difficile la compréhension de cette activité somme toute très étrange par des "profanes". L'être du code se donne dans l'expérience du codage pour employer une formulation un peu pompeuse, et pas ailleurs. ToF 12:20 PM Ça me fait penser à l'expérience du texte pour un auteur. Ou de la planche à dessin (CAD ?) pour un architecte ? 12:20 Ou même à l'expérience "ontologique" d'un poète arnaud 12:22 PM probablement plus proche de l'expérience du texte pour un auteur, surtout s'il est oulipien :slightly_smiling_face: 12:23 mais oui, il y a quelque chose de tout ça et au fond c'est assez banal et même commun je pense. Je ne sais plus où j'ai lu ça, peut-être dans les "méditations cartésiennes" ou "la crise des sciences européennes" mais la phénoménologie c'est un peu la "science de l'évidence". ToF 12:35 PM C'est aussi un dialogue, via l'environnement de développement, entre un objet conceptuel et une intention. 12:35 Donc il y a un procés. 12:36 Ce n'est pas une expérience de "méditation" au sens de Husserl 12:36 Dans certaines circonstances, c'est même un procés de découverte, avec quelque chose qui est mis à l'épreuve au sens de Latour arnaud 12:38 PM oui, ce n'est pas que une expérience de méditation 12:38 mais ça peut l'être aussi ToF 12:39 PM Très longtemps j'ai préféré l'approche bottom-up à cause de cela : je fabrique les marches d'un escalier conceptuel. Mais au fond l'approche top-down est aussi comme les marches d'un escalier conceptuel (c'est juste qu'on descend au lieu de monter, ha). arnaud 12:40 PM disons qu'il se passe quelque chose comme si le flux du processus (le "flow" ?) était parfois fluide, parfois interrompu par des phénomènes qui requièrent mon attention ToF 12:40 PM Et il faudrait décrire aussi, les "sauts" d'un niveau à l'autre. 12:40 oui, c'est ce que j'appelles des scories 12:41 quand ça vient du code c'est plus facile à pointer du doigt 12:41 mais ça pourrait être des scories qui viennent de mon état mental, et pas du code. :+1: 1 12:41 je vois que ce code marche et comment il marche, jusqu'au passage des tests, qui démontre qu'il ne marche pas 12:42 c'est difficile, de mettre le doigt sur une erreur qui vient juste de s'évaporer arnaud 12:42 PM il y a certes un côté très "méditation transcendantale" dans l'époché mais, je me demande si on ne peut pas aussi l'interpréter sans recourir à la notion de transcendance, quoique je ne sois moi même pas bien sûr de ce que ce concept recouvre vraiment (le transcendantal je comprends mieux curieusement) ToF 12:42 PM c'est les débriefs que j'ai le plus de mal à faire arnaud 12:45 PM j'ai des exemples assez concrets de ces "voyages" intérieurs, par exemple ces pages d'un carnet d'il y a quelques années décrivant une expérience de compréhension de ces "scories" :slightly_smiling_face: ToF 12:45 PM Pour Husserl l'épochè est transcendantale car elle te donne une connaissance ontologique alors que tu es resté dans le phénomène. Pour Platon, le phénomène, c'est le faux. Pour trouver le vrai il faut examiner les idées (le dialogue et la géométrie sont les moyens) Pour Descartes, le phénomène, c'est l'étendue. Le transcendantal, c'est la pensée (et Dieu) 12:45 Pour Spinoza… c'est compliqué. :sweat_smile: arnaud 12:46 PM Il n'y a pas de transcendance pour Spinoza, non ? 12:48 4 files IMG_3883 IMG_3884 IMG_3885 IMG_3886 12:53 est-ce que tout ça fait sens ? mon approche de la phénoménologie est assez marquée par ma lecture de Merleau-Ponty, plus accessible que Husserl en général: https://abailly.github.io/posts/pheno-perception.html abailly.github.io Arnaud Bailly - Sur "Phénoménologie de la perception" Crafting code since 1994 ToF 12:55 PM C'est vrai arnaud 12:56 PM quoi :smile: ? ToF 1:01 PM Merleau-Ponty est plus accessible que Husserl arnaud 1:01 PM Ce qui m’intéresse dans cette histoire c’est de proposer une autre compréhension du code et de l’activité de codage ToF 1:01 PM yes 1:03 Ce serait intéressant de faire un petit tour des diverses situation de codage : dans un IDE moderne sur un vieux machin 8bits sur un device programmable 1:04 sur le papier (quand je diagramme un automate) arnaud 1:05 PM L’idée d’une phénoménologie du code dans ma tête à moi c’est de se focaliser sur la relation au phénomène pur du code désencombrée des contraintes du monde réel et de nos biais, dans la mesure du possible ToF 1:08 PM si tu veux montrer qu'elle est désemcombrée, c'est l'intérêt de ces diverses situation. le phénomène le rouge décrit par Husserl l'est dans mes divers "vécus" de rouge arnaud 1:16 PM Oui. J’ai trouvé un bouquin de Pierce ou il parle des composants d’un phénomène comme firstness, secondness, thirdness pour parler des qualités, des faits et des règles 1:17 Bref est-ce que tout à du sens et t’intéresse ? ToF 1:29 PM oui ça m'intéresse ! arnaud 1:39 PM ah je constate donc que cela n'a pas de sens mais que ça t'intéresse, c'est un bon début :joy: ToF 2:02 PM :grinning: arnaud 2:09 PM quand j'avais cherché des références j'été tombé sur ça https://www.shift-society.org/hapop4/slides/hill.pdf 2:10 J'ai rencontré l'autrice Robin Hill dans une conf, c'est pas fifou je trouve ce qu'elle raconte :eyes: 1 arnaud 2:49 PM Il y a ça aussi : https://ccl.northwestern.edu/rp/phenomenological-programming/#:~:text=Phenomenological%20programming%20is%20a%20novel,objects%2C%20patterns%2C%20and%20events. ToF 2:53 PM dans ta 2ème source les auteurs font amha un usage incorrect du terme phénoménologique (par lequel ils entendent "tel que conçu par les étudiants") arnaud 2:53 PM +:100: (edited) 2:55 Oui, c'est un peu l'impression que j'ai eu en écoutant un talk sur ce sujet, ça a un rapport assez lointain avec la tradition phénoménologique 2:55 ce qui est un contrepoint intéressant à souligner ToF 2:55 PM j'aime bien ta première source, sur son explication de la mise entre parenthèse :+1: 1 1 reply 1 day agoView thread ToF 2:56 PM "phenomenology is out of fashion" un peu d'audace ! 2:56 :sweat_smile: 2:56 j'ai un meeting à 15h pour info arnaud 2:59 PM moi aussi, j'ai mon "pot de départ" à 16h arnaud 3:16 PM Un truc que j’aimerais réussir à faire c’est une session “exprientielle” justement, pas juste des slides ToF 4:36 PM ah là dessus complètement d'accord ToF 6:24 PM la préz de Hill est intriguante et frustrante aussi. Les exemples sont tellement simples que je me dis "ça ne marche pas; c'est parce que tu prends des exemples simples" 6:26 Un exemple qui m'interesserait plus c'est la forme CREATE … DOES> en forth https://galileo.phys.virginia.edu/classes/551.jvn.fall01/primer.htm#create ToF 6:31 PM je crée un mot créateur de mot, et je fournis le comportement du mot lorsqu'il sera utilisé pour créé d'autres mot, et je fournis le comportement des mots créés par lui. Exemple : crée un mot nommé "constante" qui lorsqu'il est invoqué 1) attends un identifiant <foo> dans le flot d'entrée, et une valeur sur la pile 2) crée une nouvelle entrée dans le dictionnaire : <foo> et lui associe la valeur à l'execution de <foo> la valeur est poussée sur la pile : CONSTANT CREATE , DOES> @ ; 6:32 phénoménologiquement, j'instruis un acteur sur ce qu'il doit faire lorsqu'il instruit d'autres acteurs 6:33 C'est un pattern de délégation, qui entre autre permet de créer un langage de programmation nouveau 6:33 je pense aussi aux macros en lisp arnaud 7:27 PM Je vois, c’est l’expérience du phénomène de la programmabilite en quelque sorte, ce moment où tu touches du doigt les capacités réflexives du code qui crée du code ToF 10:00 PM oui, c'est un exemple, je pense aussi aux "lois" monadiques en haskell, qui "normalisent" toutes mes constructions futures, qui est une autre expérience phénoménale vs nouménale arnaud 11:02 PM en même temps, une expérience nouménale est une contradiction dans les termes non :wink: ? ToF 11:15 PM oui ! :slightly_smiling_face: arnaud 10:41 AM j'imagine bien la session centrée sur la notion de "qualité" du code mais détournée du sens que ce mot a dans notre milieu, ici à prendre au sens philosophique de qualia. Et donc de se poser la question de la reconnaissance, de l'identification de ces qualia possiblement par le truchement de la phénoménologie ToF 10:42 AM oui c'est une bonne piste 10:42 "la quality without a name" arnaud 10:42 AM l'épochè et la mise en parenthèse du monde seraient les outils "pratiques" pour arriver à cette identification des qualia ToF 10:42 AM Est-ce que Zen and the Art of Motorcycle Maintenance est un roman phénoménologique ? 10:42 :sweat_smile: arnaud 10:42 AM C'est surtout un roman un peu chiant en vrai ToF 10:43 AM :joy: je l'ai trouvé beau. 10:43 bizarrement je le mets à côté de Latour Aramis ou l'amour des techniques. Alors que ça n'a rien à voir question forme 10:44 Je me souviens de l'époque bénie où la nuit de rêvait de pages de Forth. arnaud 10:44 AM je l'ai relu il y a quelques années en anglais, j'ai trouvé le personnage principal et son discours "anti-système" assez insupportable ToF 10:44 AM (je devais avoir 17 balais. Il y avait aussi d'autres misères, mais c'est celle là qui revient) 10:45 Je rêvais de pages de Forth comme on a une vision esthétique. Une forme qui rejoint un sens. 10:45 Une sorte de fétchisme. arnaud 10:54 AM je comprends, je crois me souvenir que je l'avais bien aimé un peu plus jeune. à la relecture je l'ai trouvé assez pompeux, très "adolescent", très américain aussi 10:54 tiens il y aurait beaucoup à dire sur l'expérience de l'attente pendant la compilation d'un gros programme Haskell arnaud 11:00 AM donc pour revenir à un synopsis de session, on pourrait imaginer quelque chose comme une série d'expériences (dans les deux sens du termes) pour identifier des qualia dans le code, indépendamment de toute finalité et relation avec le monde (ou ce fameux "domaine métier" dont je doute de plus en plus de l'existence mais c'est un autre débat) ? Par exemple, montrer différents bouts de "legacy code" dans différents langages et identifier des qualités qui font de ce code du legacy code ? J'aimerais bien que les gens parlent de leur expérience sur le moment : c'est quoi qui les gêne, ou qui les surprend, ou qui est évident :+1: 1 11:01 en montrant du code hors contexte, on peut mieux illustrer cette approche phénoménologique, l'idée de "mettre en parenthèse" mes croyances et idées sur le monde