RECHERCHE :
Bienvenue sur le site de Michel VOLLE
Powered by picosearch  


Vous êtes libre de copier, distribuer et/ou modifier les documents de ce site, à la seule condition de citer la source.
 GNU Free Documentation License.


Préface pour Laurent Bloch, Systèmes d'information, obstacles et succès, Vuibert 2005

30 septembre 2004


Liens utiles

- Qu'est-ce qu'un philosophe?
- Qu'est-ce qu'une entreprise?
- Évolution du rôle du SI
-
Structure and interpretation of computer programs
- Aventure mentale
Sur le site de Laurent Bloch :
- Initiation à la programmation en Scheme
- Les systèmes d'exploitation
- Systèmes d'information, obstacles et succès


« La différence entre fonction et procédure est un reflet de la différence plus générale entre décrire les choses et décrire la façon de faire les choses (…). En mathématiques, nous utilisons des descriptions déclaratives (qu’est-ce que c’est ?), alors qu’en informatique nous utilisons des descriptions impératives (comment faire ?) » (Harold Abelson et Gerald Jay Sussman, Structure and Interpretation of Computer Programs, MIT Pres 1996, p. 22)
 

Il est salubre, il est nécessaire de philosopher sur l’informatique.

Abelson et Sussman disent qu’elle est concernée par le savoir-faire, le « how to », alors que les mathématiques seraient concernées par les définitions, le « what is ». Cette phrase est à la fois profonde et inexacte.

Elle est inexacte parce que les mathématiques qu’ils évoquent ne sont pas celles des chercheurs mais celles des lycées, des grandes écoles et de l’agrégation qui se limitent à utiliser, pour traiter des « problèmes » qui ne sont au fond que des questions de cours, les outils mis au point par les chercheurs d’autrefois.

Elle est profonde parce que la pensée explicite que l’on nous a enseignée, dressée à procéder de façon déductive à partir d’axiomes dont on ne questionne pas la pertinence, s’appuie en effet sur des définitions. Le savoir-faire, l’aptitude à résoudre les problèmes pratiques, sont laissés à la pensée implicite, intuitive, quotidienne, plus naturelle sans doute mais moins formelle et moins « rigoureuse » que la pensée explicite.  

L’informatique, en invitant à expliciter la pratique, à articuler la pensée et l’action, brise le dogmatisme d’un enseignement qui a oublié la démarche expérimentale pour ne transmettre que les résultats de l’expérience.

*  *

Mais on peut interpréter autrement la phrase d’Abelson et Sussman. Considérons non plus le cadavre que l’on présente dans les amphis, mais les mathématiques vivantes, celles qui explorent la part du monde de la pensée qui est soumise au principe de non-contradiction[1]. Le chercheur en mathématiques possède non seulement des définitions, mais aussi le savoir-faire qui lui permet de mettre à jour des systèmes d’axiomes féconds. Ce savoir-faire suppose qu’il puisse, selon une intuition qui enjambe les étapes du raisonnement, anticiper des résultats non encore établis.

La frontière entre l’informatique et les mathématiques ne passe donc pas entre définition et savoir-faire, mais entre un savoir-faire adapté au monde de la pensée, seul objet des mathématiques, et le savoir-faire qui convient face au monde de la nature (en entendant par « monde de la nature » tout ce qui se présente comme obstacle ou comme outil devant notre aspiration au bien-être : la nature physique bien sûr, mais aussi la nature humaine et sociale).

Ce n’est pas pour penser en effet que nous utilisons l’automate, mais pour agir. Pour penser, nous disposons de notre cerveau, des associations d’idées qu’il suggère sans arrêt et des raisonnements auxquels nous le contraignons. C’est sur le cerveau, et non sur l’automate, qu’il faut compter pour exercer le « simple » bon sens[2]. L’automate, lui, assiste notre action en offrant sa capacité à classer, trier, traiter, transformer, transporter les données que fournit l’observation.

L’informatique a ainsi une finalité essentiellement pratique. Relativement récente, elle pose à l’horizon de l’intellect des questions dont la nouveauté dérange l’inertie des corporations. D’où, de la part de ceux qu’elle aurait dû intéresser le plus, un mépris qui confine à la fureur. C’est parce que l’informatique pose des questions philosophiques nouvelles que les philosophes, qui pour la plupart préfèrent méditer les grands textes de leur discipline plutôt que de se confronter au monde de la nature, produisent des considérations tantôt apocalyptiques, tantôt enthousiastes, presque jamais pondérées ni exactes[3]. C’est parce qu’elle risquait de déranger l’échiquier des pouvoirs universitaires que les mathématiciens l’ont empêchée de prendre, dans l’enseignement, la place qui doit lui revenir.

*   *

On savait depuis longtemps construire des automates. On apprit à les programmer au XIXe siècle. Mais le canard de Vaucanson, comme le métier à tisser de Jacquard, sont spécialisés dans une seule fonction. Il fallut un admirable effort d’abstraction pour concevoir l’automate essentiellement programmable, l’automate capable de commander l’exécution d’un programme à n’importe quel type de périphérique (écran-clavier, bras articulé d’un robot, avion en pilotage automatique, centrale nucléaire etc.)

L’informatique est née avec l’entreprise moderne[4] - forme spécifique d’organisation du travail humain, du rapport à la nature et du rapport au marché - dans le loop de Chicago à la fin du XIXe siècle. Elle s’est développée parallèlement à d’autres outils – classeur mécanique, trombone, machine à écrire, photocopieuse, post-it, téléphone etc. – qu’elle a ensuite partiellement absorbés. A l’être humain organisé en un réseau de compétences complémentaires (EHO) elle a articulé l’automate programmable doué d’ubiquité (APU), plate-forme de mémoires, processeurs, réseaux et logiciels. Les processus de production en ont été transformés ainsi que les conditions de l’échange (distribution des produits, traitement des effets de commerce).

L’EHO et l’APU s’entrelacent jusque dans le détail de chaque processus de l’entreprise selon un « modèle en couches » qui se divise en couches plus fines. Ce type de modèle est l’une des innovations philosophiques qu’a apportées l’informatique : il permet de représenter les situations où plusieurs logiques se conditionnent mutuellement, situations fréquentes dans la vie courante mais que seul un modèle en couches permet de penser.

Pour s’informatiser, l’entreprise doit expliciter ses règles de gestion, le flux de ses processus, son référentiel : elle doit se modéliser. Cela implique qu’elle choisisse les êtres qu’elle représentera, les variables qu’elle observera sur ces êtres et les traitements qu’elle leur appliquera ; dans le langage des informaticiens, qui abonde en faux amis, on dira que l’entreprise doit définir ses « objets » avec leurs attributs, opérations, règles de gestion, cycles de vie etc. Cela suppose qu’elle sache, dans la complexité sans limites du monde de la nature, découper les objets, attributs etc. pertinents pour son action en faisant abstraction des autres. L’informatique assouplit l’abstraction pour servir une visée opérationnelle. Cette pratique de l’abstraction, qui isole du reste du monde les êtres qu’implique l’action, chacun la suit dans la vie courante mais elle est rarement explicite.  

C’est, par rapport à la pensée socratique, un renversement de perspective : le concept ne révèle plus l’essence des choses mais nous outille pour représenter les êtres concernés par l’action. Le processus, comme un tourbillon dans un fleuve, brasse une matière sans cesse renouvelée et l’objet qui le parcourt (dossier d’un client, d’un produit, d’un salarié etc.) conserve son identité tout en se transformant. Cela nous place plus près de Lao Zi (VIe siècle avant JC) que de Parménide (540-450).

En construisant le référentiel qui définit les objets, attributs et codages, l’informatique définit le langage de l’entreprise. Seul sera dicible et audible le recours aux identifiants et nomenclatures qu’elle met en œuvre. On ne pourra pas, dans l’entreprise, utiliser une autre segmentation des clients, un autre référentiel de l’organisation, une autre classification des produits que ceux qui sont incorporés à ses logiciels. Celui qui voudrait modifier le langage – et on a souvent de bonnes raison de vouloir le faire – devra passer par une modification du référentiel. Ainsi l’informatique exige que l’on explicite l’évolution du langage, cette évolution que les structuralistes avaient dédaignée pour mieux nous serrer dans le corset du langage à l’œuvre.

L’automate traduit, selon une cascade de langages, la plus simple des manœuvres de l’utilisateur en des milliers d’instructions élémentaires exécutées en une fraction de seconde. Pour qu’il puisse y parvenir ses concepteurs ont tiré parti des propriétés électroniques de la matière : cet artefact appartient donc au monde de la nature physique. Ses ressources - mémoire, puissance, débit du réseau - sont bornées par leur dimensionnement. L’informaticien est ainsi un physicien qui traite avec précautions (qualité, sécurité) une masse (de données) et des vitesses (de traitement).

La programmation est l’exercice intellectuel le plus sain qui soit. Elle ne relève pas, comme on le dit avec condescendance, des mathématiques appliquées. Elle ne peut être réussie que si l’on a explicité le problème à traiter ainsi que tous ses cas particuliers : cela donne parfois au mathématicien l’occasion de découvrir des cas que la simplicité de la « formule » générale lui avait masqués. Le programmeur doit par ailleurs ruser avec la physique de l’automate, et cela le contraint à un réalisme dont l’acquisition demande un long apprentissage.

*   *

Articulation des logiques, évolution du langage, élucidation de la dynamique des processus, pratique de l’abstraction, réalisme : l’informatique apporte du grain à moudre au penseur. En retour l’intervention de celui-ci est nécessaire car, si l’informatique est née dans et pour l’entreprise, si elle a été sécrétée par l’entreprise, il s’en faut de beaucoup que l’entreprise la comprenne. Elle inspire aux dirigeants, tout comme aux philosophes, des sentiments qui oscillent de l’horreur à la fascination. Nous avons donc grand besoin d’explications claires, d’une réflexion en bon ordre, d’une saine pédagogie pour faciliter son appropriation par l’entreprise ou, comme on dit, son « alignement stratégique ».

Les médias, les films, donnent de l'informatique une image faussée : l'informaticien y apparaît comme un « génie » qui tape du code en champion de dactylographie ; les ordinateurs y parlent, pensent et souffrent comme vous et moi. La commodité des interfaces a par ailleurs répandu l’idée que l’informatique était facile : il est donc inutile de se donner la peine de la comprendre ! Les étudiants se détournent de la programmation, qu’ils jugent trop aride et que l’on préfèrera sous-traiter à des pays où les salaires sont bas. Pourtant elle fait partie des savoirs fondamentaux sans lesquels on ne peut pas comprendre, aujourd’hui, notre rapport avec le monde de la nature.

Alors que l’articulation de l’EHO et de l’APU, la délimitation de ce qu’il faut ou ne faut pas automatiser, posent une question philosophique et pratique des plus importantes[5] l’attention du grand public, des dirigeants et des penseurs est ainsi accaparée par des images fantastiques. Les informaticiens, sur la défensive, s’enferment dans leur spécialité et se protègent par leur jargon, à moins qu’ils ne s’emploient à faire de la propagande sans mentionner les obstacles[6].

*  *

C’est à l’exploration des obstacles que Laurent Bloch s’est attelé : obstacles physiques avec lesquels on doit ruser, obstacles sociologiques et intellectuels aussi. La racine de ces derniers est souvent philosophique ou même métaphysique, l’enjeu étant de savoir comment penser le monde pour pouvoir agir sur lui.

Laurent Bloch est de ces esprits curieux qui étudient et réfléchissent sans relâche. Il se donne de surcroît la peine de mettre en ordre le résultat de ses travaux, de les exprimer le plus clairement possible pour aider les autres à progresser[7]. Il y faut de la générosité, du dévouement : beaucoup de lecteurs supposent que si un texte est facile à lire, c’est qu’il n’était pas difficile à écrire. Son ouverture d’esprit l’a conduit à s’intéresser de près aux utilisateurs de l’informatique : il fait, avec une patience inlassable, bénéficier  le club des maîtres d’ouvrage des systèmes d’information[8] d’une pédagogie bienveillante.

Laurent Bloch explicite ici, sans jargon ni complaisance, les apports et limites des méthodes (Merise, UML, SADT, XP etc.) Il présente les diverses couches de l’informatique pour bien faire apparaître le jeu de leurs interactions. Il illustre son propos par des exemples. Son expérience lui permet d’évoquer des obstacles de toutes natures et d’indiquer comment les contourner. Il évoque avec humour les obstacles sociologiques, si irritants : mieux vaut, en effet, les prendre avec patience, avec le sourire !


[1] Elle ne recouvre pas tout le monde de la pensée : le théorème de Gödel (1931) montre qu’il existe, quel que soit le système d’axiomes que l’on utilise, des propositions évidemment vraies et cependant indémontrables.

[2] « Ces machines sont dépourvues de bon sens : elles font exactement ce qu’on leur a demandé de faire, ni plus ni moins. C’est ce qui est le plus difficile à comprendre quand on essaie d’utiliser un ordinateur pour la première fois. » (Donald E. Knuth, The Art of Computer Programming, Addison Wesley 1997, vol. I, p. v).

[3] François Jullien a construit une passerelle solide entre la pensée chinoise et la pensée grecque. On attend le philosophe qui construira une passerelle solide entre la philosophie et l’informatique.

[4] Nous désignons par le terme « entreprise » toutes les institutions qui produisent des biens et des services, qu’il s’agisse d’entreprises au sens juridique du terme ou de services publics producteurs d’externalités positives (y compris donc l’armée, la justice etc.)

[5] « “Que faut-il automatiser ?” est pour la civilisation d’aujourd’hui l’une des questions les plus suggestives au plan pratique comme au plan philosophique » (George Forsythe, « Computer science and education », in Information processing 68, North-Holland 1969, p. 92)

[6] C’est ce qu’a fait Bill Gates dans Business @ the Speed of Thought, Warner Bros 1999.

[7] J’ai étudié avec profit Initiation à la programmation en Scheme, Technip 2000, et Les systèmes d'exploitation des ordinateurs, Vuibert 2003.