Du Code et des Hommes
Histoire, éthique, responsabilités,
apprentissage.
OBSERVER
Comprendre
appréhender
apprendre
Prosperer
OBSERVER
Du Code à la naissance des sociétés
Du Droit et de la Loi
● Être régi par des lois et non par des
hommes (l’idéal de la Loi)
● L’objectivité de la Loi
La Gouvernance Par Les Nombres, Alain Supiot , p . 30
Les lois et la Loi
Gouverner
Gouverner c’est tenir
le gouvernail
L’homme machine
in LGPLN, p.36
La machine à gouverner
COMPRENDRE
Comment l’Homme a
délégué son
organisation à la
machine
Le rêve de l’harmonie par le calcul
Fascination des nombres
La mécanique céleste
Mise en équation du vivant
Du nombre au chiffre
Loi de Shannon
Condorcet, Bernoulli & d’Alembert
Calculer l’incalculable
● risques
● statistiques
● coûts sociaux
● estimation , chiffrement
● normalisation, morphismes, fonctions
https://muse.jhu.edu/article/569891/pdf
Du gouvernement à la gouvernance
Peuple Société Civile
Loi Programme
Liberté Flexibilité
Morale Ethique
Justice Efficacité
Jugement Evaluation (chiffrée)
Règle Objectif
Réglementation Régulation
Qualification Employabilité
Négociation Collective Dialogue Social
Travailleur Capital Humain, Ressource Humaine
in
LGPLN,
p
48
De la subordination à la programmation
Le travailleur subordonné agit selon les règles
Le travailleur programmé réagit selon environnement + signaux
de la Justice à l’économie
>Law & Economics: emprunte
à la science économique
pour produire la Justice
>Analyse coût - avantage
>Remplacer le jugement par
le calcul
APPRÉHENDER
Du chiffre a l’information
QUand tout à coup...
Les logiciels dévorent le monde
“la critique de la raison
calculatoire ne peut opposer qu’une
rêverie pastorale à la marche
automatisée des grands systèmes
technologiques mondiaux.”
in Lire, écrire, compter, coder - p.47
“Why software is eating the world”, Wall Street Journal, 20 Aout 2011
http://www.revuegestion.ca/informer/monde-selon-algorithmes/
Moins d’hommes,
plus de code
Comportement de l’algorithme
Du code à la place des lois ?
“Tout le monde est développeur”
Oncologue et chercheur, Jean-Emmanuel Bibault, 33 ans, se
définit comme un « autodidacte ».
Il développe et revend une intelligence artificielle qui
diagnostique les signes de cancer du poumon.
En savoir plus sur
http://www.lemonde.fr/o21/article/2016/12/06/les-algorithmes-ont-revolutionne-leur-metier_5044332_5014018.html#HwosGWxt0sXg2rLF.99
crédit photo: healthcare.siemens.com
crédit photo: healthcare.siemens.com
Le Code contre l’etat
Du code pour déstabiliser une élection
http://www.lesechos.fr/monde/europe/0211543694740-lallemagne-tres-inquiete-des-cyberattaque
s-russes-2046584.php
Les cyber-attaques comme nouvel élément de la guerre
http://www.leparisien.fr/economie/ce-qui-se-cache-derriere-la-cyberattaque-massive-qui-a-to
uche-internet-22-10-2016-6240069.php
L'intentionnalité calculée
Si un algorithme peut changer l’intention d’une machine
(pour réagir à ...) qui sera responsable des actions
conséquentes?
Le deep learning, rend désormais possibles des actions
imprévisibles – que personne n’a « vraiment voulues ».
http://www.lemonde.fr//idees/article/2016/12/01/comment-juger-les-machines_5041562_3232.ht
ml
Agents Autonomes et Compétition
“[...] Conflict is inescapable in the context of evolving
systems based on autonomous agents.”
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.31.4314&rep=rep1&type=pdf
l’erreur et la machine
Le cas Therac-25
“La société chargée de la commercialisation du nucléaire
civil au Canada, l’Energie atomique du Canada limitée
(EACL), n’a pas fait évaluer le code source du logiciel du
Therac-25 par un organisme indépendant, et a négligé de
tester toutes ses étapes d’utilisation.”
http://www.lemonde.fr/idees/article/2016/12/01/comment-juger-les-machines_5041562_3232.html
#pIvCWIq3RKBEofCD.99
Les machines feront la
loi
mais quelle loi pour les
machines?
http://infinitywave.deviantart.com/art/Robot
-Law-School-tee-366360059
Le piratage de demain?
https://group.axa.com/fr/magazine/story/la-voiture-sans-chauffeur
https://www.ecnmag.com/blog/2014/06/technology-can-hack-your-car-1500-miles-away
Est ce que les androïdes rêvent de moutons électroniques?
OU
Quels moyens pour anticiper?
Le bouton rouge
Assurance des algorithmes... ou l’inverse?
https://www.meilleureassurance.com/assurance-moto/actualites/2016-septembre/voitures-autonomes-attribuer-n
on-algorithme-libre-arbitre.html
https://www.newstoprotect.axa/et-demain/voiture-autonome-accident-responsable
http://www.lerepairedesmotards.com/actualites/2016/actu_161014-voiture-autonome-mercedes-securite.php
http://www.lemonde.fr//idees/article/2016/08/14/la-rupture-technologique-du-vehicule-autonome-va-transform
er-la-facon-dont-l-industrie-evalue-les-risques_4982511_3232.html
Savoir coder
Parler à nos interlocuteurs machines
Les comprendre
Les vérifier
Les changer
Qui décidera?
De l’analyse des situations.
De la prise de décision.
Du travail pour tous?
... du chauffeur routier à
l’avocat.
La loyauté des algorithmes...
ou des hommes?
https://interstices.info/jcms/c_43821/les-ingredients-des-algorithmes
https://interstices.info/jcms/c_5776/qu-est-ce-qu-un-algorithme
DES HUMAINS
2 catégories
Sachants Ignorants
Connaissance et savoir
82% of middle-schoolers couldn’t distinguish between an ad
labeled “sponsored content” and a real news story on a
website
http://www.wsj.com/articles/most-students-dont-know-when-news-is-fake-stanford-study-finds-1479752576
Stanford University study of 7,804 students
Véracité et Vérifiabilité
● Digital natives , digital
naives
● L’image comme preuve
● Avoir les moyens de
vérifier
● Qui est responsable?
● Quelle parade?
http://www.lemonde.fr//pixels/article/2016/11/23/fausses-informations-en-ligne-les-adolescents-facilement-dupes-selon-une-etude_5036468_4408996.html
http://money.cnn.com/2016/11/19/technology/mark-zuckerberg-facebook-fake-news-election/
Progression de l’ignorance
Naturelle? orchestrée?
C’est vrai “parce que”
Le complot
Complexe ou Compliqué
l’ignorance provoquée
Du code pour bloquer l’information (censure)
● Gouvernements
● Entreprises
Du code pour fausser l’information
● Vol, tricherie
● Propagande
>> Utilise les arguments scientifiques pour se rendre crédible
auprès des ignorants... et même des sachants.
De la science aux altersciences
L’idéal du mouvement perpétuel
Le bon sens commun
La tentation du tout
Quand on ne peut plus vérifier
“Parce que”
vérifiable et répétable
Ouvert à la réfutation
AlterScience , Alexandre Moati, chez Odile Jacob
Qui sont les développeurs?
Scientifiques mais pas chercheurs
fondamentaux
Appliquent / Créent des méthodes
Inventeurs
Bidouilleurs
Artisans?
Développeurs: Vers une profession réglementée?
un médecin engage votre vie dans un geste médical
un algo de trading engage votre patrimoine dans une
opération HFT
un algo de conduite engage votre vie dans le mouvement de
votre véhicule
APPRENDRE
Franchir le double Accès au code
le code est protégé
1) il faut y avoir accès
2) il faut le comprendre
Coder c’est penser
1. point de départ: problème nouveau à résoudre
2. recherche / expérimentation
3. tri entre échecs et réussite
4. acquisition / formalisation
5. abstraction
6. partage
Coder c’est chercher
C’est scientifique (les mêmes causes produisent les même
effets) et créatif à la fois
- Il y a autant de façons différentes d’écrire un même
programme qu’il y a d’individus
- l’évolution des technologies est trop rapide pour
apprendre un langage de code
in “Lire, écrire, compter, coder” p.26
De l’algorithme au programme
https://interstices.info/jcms/c_43821/les-ingredients-des-algorithmes
https://interstices.info/jcms/p_87400/regard-sur-a-quoi-revent-les-algorithmes
Un algo, c’est une méthode, une façon systématique de procéder pour trier des objets, de situer des villes sur une
carte, de multiplier deux nombres, de chercher un mot dans le dictionnaire
Machine learning
Analyse automatique (langues, images, films...)
L’intelligence artificielle
Les mêmes causes produisent les mêmes effets
... pour l’instant.
Coder c’est agile par nature
- l’objectif n’est pas forcément bien délimité
- on recommence sans cesse (itération)
- échouer pour apprendre
- expérimentation -> acquisition
Ou pas...
- taux d’échec et barrières socio-culturelles
- franchir les carcans -> femmes, seniors, handicapés...
La voie numérique classique...
Coursera.org
Codecademy.com
Khanacademy.org
Developer.mozilla.org
Developpez.com
Microsoft Developper Network / Oracle Academy
Pluralsight (payant)
Google’s University Consortium
...Google
http://fr.wikihow.com/commencer-%C3%A0-apprendre-la-programmation-informatique
... ou en s’amusant
Serio Ludere engagé par les courants humanistes européens du
19e siecle
CodeCombat
Pour les kids
jecode.org
magicmakers.fr
scratch.mit.edu
Lire!
PROSPERER
Du code compréhensible
Programmer comme l’on parle raisonne
Se relire et être relu
Pair Programming
Mob Programming
La bonne foi contre la preuve
“j’vous jure, je l’ai bien testé”
Des tonnes de documents, ou bien des preuves irréfutables?
Retour au cas Therac-25:
c’est bien un algorithme qui est mis en défaut.
Manque de tests.
Les preuves tangibles
Ce sont les tests et les spécifications
exécutables
Rejouable à l’infini
Modifications, expérimentations
Découper pour Vérifier
Le meilleur rempart anti-holistique :)
Encapsulation, polymorphisme
Isolation
Limiter les dépendances
Tests Unitaires - à l’unité
Vérifier en permanence
Allez voir les tests avant de voir le code
string title = getTitle();
title.Should().StartWith("The");
title.Should().EndWith("Zelda");
title.Should().NotEndWith("The");
title.Should().Contain("Legend Of");
title.Should().StartWith("The").And.Contain("Legend Of")
.And.EndWith("Zelda");
Parallèle avec les sciences
Bibliographie
des algoritmes et des hommes (ethique et code).pdf
des algoritmes et des hommes (ethique et code).pdf

des algoritmes et des hommes (ethique et code).pdf

  • 1.
    Du Code etdes Hommes Histoire, éthique, responsabilités, apprentissage.
  • 2.
  • 3.
  • 4.
    Du Code àla naissance des sociétés
  • 5.
    Du Droit etde la Loi ● Être régi par des lois et non par des hommes (l’idéal de la Loi) ● L’objectivité de la Loi La Gouvernance Par Les Nombres, Alain Supiot , p . 30
  • 6.
  • 7.
  • 8.
  • 9.
    La machine àgouverner
  • 10.
  • 11.
    Comment l’Homme a déléguéson organisation à la machine
  • 12.
    Le rêve del’harmonie par le calcul Fascination des nombres La mécanique céleste Mise en équation du vivant
  • 13.
    Du nombre auchiffre Loi de Shannon Condorcet, Bernoulli & d’Alembert Calculer l’incalculable ● risques ● statistiques ● coûts sociaux ● estimation , chiffrement ● normalisation, morphismes, fonctions https://muse.jhu.edu/article/569891/pdf
  • 14.
    Du gouvernement àla gouvernance Peuple Société Civile Loi Programme Liberté Flexibilité Morale Ethique Justice Efficacité Jugement Evaluation (chiffrée) Règle Objectif Réglementation Régulation Qualification Employabilité Négociation Collective Dialogue Social Travailleur Capital Humain, Ressource Humaine in LGPLN, p 48
  • 15.
    De la subordinationà la programmation Le travailleur subordonné agit selon les règles Le travailleur programmé réagit selon environnement + signaux
  • 16.
    de la Justiceà l’économie >Law & Economics: emprunte à la science économique pour produire la Justice >Analyse coût - avantage >Remplacer le jugement par le calcul
  • 17.
  • 18.
    Du chiffre al’information
  • 19.
  • 21.
    Les logiciels dévorentle monde “la critique de la raison calculatoire ne peut opposer qu’une rêverie pastorale à la marche automatisée des grands systèmes technologiques mondiaux.” in Lire, écrire, compter, coder - p.47 “Why software is eating the world”, Wall Street Journal, 20 Aout 2011 http://www.revuegestion.ca/informer/monde-selon-algorithmes/
  • 22.
  • 24.
  • 25.
    Du code àla place des lois ?
  • 26.
    “Tout le mondeest développeur” Oncologue et chercheur, Jean-Emmanuel Bibault, 33 ans, se définit comme un « autodidacte ». Il développe et revend une intelligence artificielle qui diagnostique les signes de cancer du poumon. En savoir plus sur http://www.lemonde.fr/o21/article/2016/12/06/les-algorithmes-ont-revolutionne-leur-metier_5044332_5014018.html#HwosGWxt0sXg2rLF.99
  • 27.
  • 28.
  • 29.
    Le Code contrel’etat Du code pour déstabiliser une élection http://www.lesechos.fr/monde/europe/0211543694740-lallemagne-tres-inquiete-des-cyberattaque s-russes-2046584.php Les cyber-attaques comme nouvel élément de la guerre http://www.leparisien.fr/economie/ce-qui-se-cache-derriere-la-cyberattaque-massive-qui-a-to uche-internet-22-10-2016-6240069.php
  • 30.
    L'intentionnalité calculée Si unalgorithme peut changer l’intention d’une machine (pour réagir à ...) qui sera responsable des actions conséquentes? Le deep learning, rend désormais possibles des actions imprévisibles – que personne n’a « vraiment voulues ». http://www.lemonde.fr//idees/article/2016/12/01/comment-juger-les-machines_5041562_3232.ht ml
  • 31.
    Agents Autonomes etCompétition “[...] Conflict is inescapable in the context of evolving systems based on autonomous agents.” http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.31.4314&rep=rep1&type=pdf
  • 32.
  • 33.
    Le cas Therac-25 “Lasociété chargée de la commercialisation du nucléaire civil au Canada, l’Energie atomique du Canada limitée (EACL), n’a pas fait évaluer le code source du logiciel du Therac-25 par un organisme indépendant, et a négligé de tester toutes ses étapes d’utilisation.” http://www.lemonde.fr/idees/article/2016/12/01/comment-juger-les-machines_5041562_3232.html #pIvCWIq3RKBEofCD.99
  • 34.
    Les machines ferontla loi mais quelle loi pour les machines?
  • 35.
  • 37.
    Le piratage dedemain? https://group.axa.com/fr/magazine/story/la-voiture-sans-chauffeur https://www.ecnmag.com/blog/2014/06/technology-can-hack-your-car-1500-miles-away
  • 38.
    Est ce queles androïdes rêvent de moutons électroniques?
  • 39.
  • 40.
  • 41.
    Assurance des algorithmes...ou l’inverse? https://www.meilleureassurance.com/assurance-moto/actualites/2016-septembre/voitures-autonomes-attribuer-n on-algorithme-libre-arbitre.html https://www.newstoprotect.axa/et-demain/voiture-autonome-accident-responsable http://www.lerepairedesmotards.com/actualites/2016/actu_161014-voiture-autonome-mercedes-securite.php http://www.lemonde.fr//idees/article/2016/08/14/la-rupture-technologique-du-vehicule-autonome-va-transform er-la-facon-dont-l-industrie-evalue-les-risques_4982511_3232.html
  • 42.
    Savoir coder Parler ànos interlocuteurs machines Les comprendre Les vérifier Les changer
  • 43.
    Qui décidera? De l’analysedes situations. De la prise de décision. Du travail pour tous? ... du chauffeur routier à l’avocat. La loyauté des algorithmes... ou des hommes? https://interstices.info/jcms/c_43821/les-ingredients-des-algorithmes https://interstices.info/jcms/c_5776/qu-est-ce-qu-un-algorithme
  • 44.
  • 45.
  • 46.
    Connaissance et savoir 82%of middle-schoolers couldn’t distinguish between an ad labeled “sponsored content” and a real news story on a website http://www.wsj.com/articles/most-students-dont-know-when-news-is-fake-stanford-study-finds-1479752576 Stanford University study of 7,804 students
  • 47.
    Véracité et Vérifiabilité ●Digital natives , digital naives ● L’image comme preuve ● Avoir les moyens de vérifier ● Qui est responsable? ● Quelle parade? http://www.lemonde.fr//pixels/article/2016/11/23/fausses-informations-en-ligne-les-adolescents-facilement-dupes-selon-une-etude_5036468_4408996.html http://money.cnn.com/2016/11/19/technology/mark-zuckerberg-facebook-fake-news-election/
  • 48.
    Progression de l’ignorance Naturelle?orchestrée? C’est vrai “parce que” Le complot Complexe ou Compliqué
  • 49.
    l’ignorance provoquée Du codepour bloquer l’information (censure) ● Gouvernements ● Entreprises Du code pour fausser l’information ● Vol, tricherie ● Propagande >> Utilise les arguments scientifiques pour se rendre crédible auprès des ignorants... et même des sachants.
  • 50.
    De la scienceaux altersciences L’idéal du mouvement perpétuel Le bon sens commun La tentation du tout Quand on ne peut plus vérifier “Parce que” vérifiable et répétable Ouvert à la réfutation AlterScience , Alexandre Moati, chez Odile Jacob
  • 51.
    Qui sont lesdéveloppeurs? Scientifiques mais pas chercheurs fondamentaux Appliquent / Créent des méthodes Inventeurs Bidouilleurs Artisans?
  • 52.
    Développeurs: Vers uneprofession réglementée? un médecin engage votre vie dans un geste médical un algo de trading engage votre patrimoine dans une opération HFT un algo de conduite engage votre vie dans le mouvement de votre véhicule
  • 53.
  • 54.
    Franchir le doubleAccès au code le code est protégé 1) il faut y avoir accès 2) il faut le comprendre
  • 55.
    Coder c’est penser 1.point de départ: problème nouveau à résoudre 2. recherche / expérimentation 3. tri entre échecs et réussite 4. acquisition / formalisation 5. abstraction 6. partage
  • 56.
    Coder c’est chercher C’estscientifique (les mêmes causes produisent les même effets) et créatif à la fois - Il y a autant de façons différentes d’écrire un même programme qu’il y a d’individus - l’évolution des technologies est trop rapide pour apprendre un langage de code in “Lire, écrire, compter, coder” p.26
  • 57.
    De l’algorithme auprogramme https://interstices.info/jcms/c_43821/les-ingredients-des-algorithmes https://interstices.info/jcms/p_87400/regard-sur-a-quoi-revent-les-algorithmes Un algo, c’est une méthode, une façon systématique de procéder pour trier des objets, de situer des villes sur une carte, de multiplier deux nombres, de chercher un mot dans le dictionnaire Machine learning Analyse automatique (langues, images, films...) L’intelligence artificielle Les mêmes causes produisent les mêmes effets ... pour l’instant.
  • 58.
    Coder c’est agilepar nature - l’objectif n’est pas forcément bien délimité - on recommence sans cesse (itération) - échouer pour apprendre - expérimentation -> acquisition Ou pas... - taux d’échec et barrières socio-culturelles - franchir les carcans -> femmes, seniors, handicapés...
  • 59.
    La voie numériqueclassique... Coursera.org Codecademy.com Khanacademy.org Developer.mozilla.org Developpez.com Microsoft Developper Network / Oracle Academy Pluralsight (payant) Google’s University Consortium ...Google http://fr.wikihow.com/commencer-%C3%A0-apprendre-la-programmation-informatique
  • 60.
    ... ou ens’amusant Serio Ludere engagé par les courants humanistes européens du 19e siecle CodeCombat
  • 61.
  • 62.
  • 63.
  • 64.
    Du code compréhensible Programmercomme l’on parle raisonne Se relire et être relu Pair Programming Mob Programming
  • 65.
    La bonne foicontre la preuve “j’vous jure, je l’ai bien testé” Des tonnes de documents, ou bien des preuves irréfutables? Retour au cas Therac-25: c’est bien un algorithme qui est mis en défaut. Manque de tests.
  • 66.
    Les preuves tangibles Cesont les tests et les spécifications exécutables Rejouable à l’infini Modifications, expérimentations
  • 67.
    Découper pour Vérifier Lemeilleur rempart anti-holistique :) Encapsulation, polymorphisme Isolation Limiter les dépendances Tests Unitaires - à l’unité
  • 68.
    Vérifier en permanence Allezvoir les tests avant de voir le code string title = getTitle(); title.Should().StartWith("The"); title.Should().EndWith("Zelda"); title.Should().NotEndWith("The"); title.Should().Contain("Legend Of"); title.Should().StartWith("The").And.Contain("Legend Of") .And.EndWith("Zelda");
  • 69.
  • 70.