La place des logiciels libres dans l’enseignement des data sciences et d’informatique décisionnelle : de la «règle d’or» au bon sens

(Lire ce billet en anglais)

En guise d’introduction

Dans l’enseignement de l’informatique décisionnelle et des data sciences, l’enjeu principal, la « règle d’or » pour les formations, est incontestablement de former des profils professionnels intéressants sur le marché de l’emploi. Le choix d’outils informatiques sur lesquels se basent les formations est l’un des facteurs déterminants dans un contexte d’une certaine abondance : outils exotiques bénéficiant d’un effet de mode dont on ne sait s’il faut se méfier ; outils anciens —peut-être trop anciens pour certains— mais éprouvés par le temps ; outils commerciaux, à la fois onéreux et d’une qualité ou d’une ergonomie laissant souvent à désirer, mais qui sont cependant largement adoptés voire omniprésents et qui, de ce fait, s’imposent contre toute logique ; outils libres, dont certains ont beaucoup pour plaire, mais qui restent pourtant marginaux sur le marché. Dans cet embarras de choix et devant, en plus, se plier aux diverses contraintes budgétaires et légales, les universitaires sont confrontés au dilemme de concilier cette première vocation, qui est de former des jeunes diplômés en adéquation avec la donne du marché, avec l’autre vocation des universités en tant que pôles d’excellences et temples du savoir, qui est de diffuser le savoir, les bonnes pratiques et les meilleures méthodes issues des dernières recherches.

Dans cet essai, nous allons d’abord présenter, à travers deux sources, ce qu’est la réalité du marché en termes de préférence pour les logiciels et langages utilisés en informatique décisionnelle et en data sciences. Et de voir ensuite comment la sacro-sainte « règle d’or » est tantôt brandie —lorsqu’il s’agit de justifier la signature d’un « partenariat » favoritiste et anticoncurrentiel passé à la vue de tous entre l’État et l’un des éditeurs-prédateurs du marché du logiciel informatique commercial—, tantôt violée (contre toute logique). Mais à qui profite le crime ? Semble-t-il, toujours aux mêmes.

*            *

*

Connaître les préférences du marché

Ricco Rakotomalala est plutôt bien connu sur le Web : enseignant-chercheur et responsable, depuis 2013, du Master SISE à l’Université Lyon 2, —un master qui a une chaîne YouTube créée en 2015, « Lyon Data Science », plutôt intéressante—, créateur de logiciels de data mining libres et gratuits à vocation pédagogique (SIPINA, TANAGRA) et l’auteur de nombreux tutoriels et d’ouvrages en accès libre.

Dans une vidéo publiée en janvier 2018 et intitulée « Place de R et Python dans les formations en Data Science », M. Rakotomalala livre une conférence de plus d’une heure et demi née d’« une réflexion approfondie sur les caractéristiques clés que doivent présenter les logiciels pour l’enseignement ». Desquelles caractéristiques la première est la « règle d’or » qu’on a déjà présentée plus haut, dans l’introduction :

Les logiciels enseignés en formations universitaires doivent être ceux réellement utilisés dans les entreprises ou, a minima, y ressembler.

La logique derrière cette règle est claire : les jeunes diplômés doivent être formés aux outils utilisés par les entreprises susceptibles de les embaucher. Dès lors, comment connaître les préférences du marché ?

KDnuggets.com

Pour une formation modeste, à portée départementale ou régionale, il suffit que ses responsables se renseignent auprès des entreprises locales ; et tant pis si la formation finira vite par s’enfermer dans des « partenariats » totalement abusifs avec Microsoft, SAS et IBM : lorsqu’il faut ménager la chèvre et le chou et devoir régulièrement justifier son budget auprès de l’État par des taux d’embauche décents, tous les moyens sont bons.

Une autre idée peut être de consulter les résultats d’un sondage spécialisé, une source d’information complémentaire et édifiante, surtout si le sondage porte sur d’autres pays « informatisés » du monde. L’un des sondages portant sur les logiciels et langages d’analyse statistique est conduit chaque année au mois de mai depuis voilà vingt ans par le site KDnuggets.com. Dans sa vidéo de janvier 2018, M. Rakotomalala compare les résultats de 2017 (ce sera 2019 pour nous) à ceux de 2005 et apporte quelques commentaires (écouter ses explications dans la vidéo de son intervention à partir de 33:27) :

  • R, bien que n’étant pas le premier du classement, est extrêmement populaire, y compris de l’expérience personnelle de M. Rakotomalala : les supports de cours et exercices de R qu’il met à disposition sur son site web personnel en constituent les pages les plus visitées. R a connu une montée impressionnante dans ce classement en passant de tout en bas à la deuxième place (du classement de 2017). L’intervenant trouve le parcours de R remarquable, ce qui le distingue d’autres outils libres d’analyse statistique ayant eu la même genèse mais restés à la marge : tel a été notamment le cas des logiciels libres dont M. Rakotomalala a été le créateur pour l’un (TANGRA) et le contributeur pour l’autre (SIPINA). « R est un outil libre à la base, un outil universitaire… En fait il y a un article, sur NYTimes [de 2009], qui explique l’origine de R, avec Ross Ihaka et [Robert] Gentleman, où ils expliquent le cheminement et tout ça… c’est un travail universitaire. J’aurais pu faire la même chose. L’élément clé c’est que cet outil-là maintenant est rentré dans les entreprises. » (48:23)
  • L’évolution du langage Python a été encore plus impressionnante : plus populaire que R, plus populaire que touten matière de data sciences, Python domine ce classement depuis quelques années, tandis qu’en 2005 ce langage de script n’en faisait même pas partie.

Remarquons également qu’Excel était un logiciel suffisant pour les statisticiens dans les années 1990 et 2000 et qu’il restait incontournable en 2005 (3e place du classement). Aujourd’hui par contre, bien que toujours incontournable (4e place), ce logiciel n’est plus suffisant : les données sont devenue trop volumineuses, les systèmes : interconnectés et orientés Web, et les procédures y sont, pour beaucoup, automatisées. L’outil de prédilection en études statistiques classiques, Excel n’a aucune utilité en data sciences ou machine learning (apprentissage non supervisé).

r4stats.com

Pour ne pas se limiter à l’unique argument d’autorité que sont les résultats du sondage du site KDnuggets.com, en voici un autre : celui du blog r4stats.com : un site personnel (et vraisemblablement indépendant) qui poursuit deux objectifs :

  • analyser ce qui se passe dans le domaine des ou de la data science,
  • aider le public à se familiariser avec R dans un monde aujourd’hui encore dominé par les « trois géants » du logiciel statistique qui sont les logiciels propriétaires et payants SAS de SAS Institute, SPSS d’IBM et Stata de StataCorp.

L’auteur de ce blog créé en 2012 est Bob Muenchen, un universitaire américain qui

  • gère les contrats passés avec les éditeurs de logiciels de calcul scientifique pour le compte de l’université de Tennessee (information indiquée en réponse à l’un des lecteurs du blog) ;
  • connaît aussi bien R que les logiciels commerciaux susmentionnés puisqu’il est l’auteur d’ouvrages R for SAS and SPSS Users et R for Stata Users ;

Enfin, ce qui nous intéresse le plus aujourd’hui, M. Muenchen dresse chaque année un classement des logiciels et langages les plus utilisés en data sciences, élaboré sur la base de mots-clés extraits des offres d’emploi publiés sur le site Indeed.com. Les derniers résultats de son classement, établi sur la période entre février 2017 et mai 2019, bien que sont différents des résultats du sondage de KDnuggets.com,

  • donnent tout de même assurément la première place à Python ;
  • montrent que R est presque deux fois plus répandu que SAS ;

En 2012 Muenchen s’interrogeait déjà si 2015 ne serait pas « le début de la fin » de la dominance des logiciels payants SAS et SPSS, au profit de R (et non au profit de Stata, un autre logiciel payant, qui à l’époque affichait la croissance la plus rapide). Plus certain de son hypothèse l’année d’après, Muenchen rectifia le tir et présageait en 2013 le début de la fin de SAS et SPSS pour 2014.

Forces et faiblesses

On ne peut pas ne pas être d’accord avec M. Rakotomalala sur le fait que dans le contexte actuel que l’on pourrait qualifier de « l’ère du Big Data » (on appelle communément Big Data un grand volume de données variées, accumulées à grande vitesse et qu’il faut analyser en temps réel), que R et Python se démarquent réellement et justifient pleinement l’investissement que l’on pourrait leur consacrer au sein des formations.

L’adoption de R et Python dans les formations en data science semble évidente. Et pourtant, elle est moindre pour R. Analysons donc ses forces et ses faiblesses.

Les forces de R
  • sa licence libre respecte deux caractéristiques fondamentales de :
    • accès au code source, nous garantissant un certain contrôle sur les calculs et opérations réellement effectuées ;
    • ils sont accessibles et exploitables gratuitement, quels que soient les contextes d’utilisation.
    • Le code source (R, C, FORTRAN) est libre d’accès et de consultation, seule la modification est soumise à la validation par l’organisme modérateur, la fondation R Foundation.
    • Qui plus est, le code source est de qualité, c’est-à-dire qu’il est copieusement accompagné de commentaires et respecte certaines conventions. Les instructions implémentées sont notamment accompagnées de renvois aux articles scientifiques publiés, offrant au lecteur la possibilité de comparer les formules dans les publications et les instructions correspondantes implémentées dans le code source.
  • moteur de calcul reconnu (LAPACK) et utilisé dans d’autres logiciels du marché (Maple, MATLAB, Stata)
  • nombreuses extensions
  • un langage facile à comprendre et à apprendre ; de plus, assez proche dans sa syntaxe de Python, R peut aussi bien faciliter l’apprentissage de Python à celles et ceux qui n’en ont jamais fait, comme il peut lui, réciproquement, être assimilé plus vite par quelqu’un qui a déjà fait du Python.

« La première année où j’ai introduit Python en licence [à la rentrée 2015], des étudiants en M1 et en M2 sont venus me voir pour dire qu’ils aimeraient eux aussi en faire… parce qu’ils avaient l’impression que tout le monde parlait de Python de plus en plus, sur Internet et dans la presse. C’était des gens qui n’avaient jamais fait de Python de leur vie [mais qui avaient déjà fait pas mal de R]. Je leur ai proposé alors une formation improvisée de 6 h le dernier vendredi avant les vacances de Noël… Déjà, tout le monde est venu ! La formation s’est très bien passée, tout le monde était content. J’ai alors demandé à chacun de faire un projet en Python —et pas des plus simples— et ils se sont très bien débrouillés. Ça montre que le gap entre Python et R n’est pas énorme et que les étudiants sont capables, après une formation de seulement 6 h, de faire des projets intéressants —et ce avec un coût pédagogique minime : la trame de programmation est la même, la syntaxe diffère un peu, les noms des packages aussi, mais le reste est pareil. » (01:11:27)

« Dans la pratique, un data scientist doit maîtriser aussi bien R que Python et son choix dépendra du contexte, des objectifs de l’étude, des packages à sa disposition et de leur qualité. »

  • profusion de sources de documentation en ligne, officielles et tierces
  • facilité de remonter des incidents d’utilisation aux développeurs, ou de dialoguer si besoin
  • amélioration continue de l’écosystème : tests, identification et correction de bugs ; amélioration des performances ; ajout de nouvelles fonctionnalités ; correction d’aspects « cosmétiques » comme la qualité des rendus graphiques.
Les Faiblesses de R

(qui ne sont en réalité jamais autres que celles de n’importe quel outil informatique, libre ou commercial)

  • lorsqu’un intérêt accru pour une technologie à l’instant t est un effet de mode (un intervenant célèbre a présenté quelque chose, sa « démo » a été plutôt convaincante, ensuite toute la presse du monde l’a repris et voilà des mois que le monde entier continue de parler de ça)
  • lorsqu’il y a des problèmes de rétrocompatibilité (tel script Python qui marchait bien il y a quelques années mais qui ne marche plus aujourd’hui) → solution : indiquer bien dans le script la version de Python pour laquelle le script a été développé à l’époque
  • lorsque les bibliothèques de traçage de diagrammes produisent des diagrammes « exotiques » ou bizarres alors qu’on s’attend à quelque chose de plus conforme ou plus soigné → solution : chercher sur Internet si quelqu’un n’aurait pas déjà eu ce problème et comment il a été résolu (par exemple, en utilisant une autre bibliothèque ou une autre commande), sinon ne pas hésiter à poser la question sur Internet soi-même.
  • des problèmes peuvent exister en lien avec des packages tiers mais ceux-ci subissent naturellement les lois de la sélection naturelle où la survie d’un package dépend de son intérêt réel pour les usagers : ainsi, un package avec des défauts et sans intérêt réel ne trouvera pas de preneur et finira par être abandonné même par ceux qui l’avaient adopté, alors qu’un package qui présente un intérêt pour la communauté verra ses défauts rapidement corrigés par des contributeurs du monde entier et finira par dépasser son créateur. Ce mode de maintenance a néanmoins ses limites : alors que des problèmes jugés bloquants (de lenteur de calcul ou d’imprécision de calcul) sont corrigés très rapidement par la communauté car ces aspects-là présentent un intérêt réel pour les chercheurs, en revanche des problèmes d’ordre « cosmétique » (comme la qualité des rendus graphiques) ou de facilité d’utilisation se font attendre plus longtemps : ainsi, la collaboration autour d’un bon IDE pour R qu’est RStudio n’a commencé qu’en 2010 et la première version stable en est parue seulement en 2016, soit plus de vingt ans après la création de R par Ross Ihaka et Robert Gentleman.
  • absence de rémunération pour les développeurs de packages
  • absence d’une force de vente aussi « agressive » que celle de SAS Institute ou d’IBM (éditeur de SPSS).

Évaluons maintenant les forces et faiblesses du logiciel commercial de statistique SAS :

Les forces du logiciel commercial SAS
  • Pour ce qui est de SAS, ses partisans lui reconnaissent un atout —le seul, semble-t-il— c’est la fiabilité du moteur de calcul de SAS, apparemment quelle que soit l’architecture du processeur. Un atout qui semble toutefois être autoproclamé car je n’ai pas trouvé ni les preuves documentées d’une performance exceptionnelle et inégalée, ni une garantie écrite de fiabilité de leur moteur de calcul — Et Bob Muenchen l’affirme, lui aussi, sur son blog en réponse à l’un de ses lecteurs.
Les Faiblesses du logiciel commercial SAS
  • un coût prohibitif pour les TPE ou les PME
  • dans certains cas, impossible d’utiliser pour les particuliers
  • contrats compliqués, des règles d’utilisation restreintes, sanctions juridiques sévères
  • code source fermé (donc invérifiable)
  • un langage de programmation notoirement indigeste et n’ayant aucune logique dans sa syntaxe. (Contrairement au langage de R —dont les concepteurs ont vraisemblablement gardé à l’esprit l’idée de rendre la syntaxe de celui-ci logique et facilement assimilable—, le langage de SAS est à tel point dépourvu de toute logique qu’on se demande si les chercheurs qui l’ont mis au point se sont jamais parlés ou s’ils ont jamais pris le soin de découvrir les commandes autres que celles qu’ils ont développées eux-mêmes…)

Le fait que les défauts de SAS ne sont pas palliés avec le temps en dit long sur l’indisposition de SAS Institute, son éditeur, à se remettre en question et témoigne de son indifférence vis-à-vis de la mauvaise expérience utilisateur engendrée par son outil.

Mais revenons à la « réflexion approfondie sur les caractéristiques clés que doivent présenter les logiciels pour l’enseignement ».

Hormis la « règle d’or », quelles recommandations ?

Il faut un outil qui conserve les étapes d’analyse déjà accomplies afin d’éviter à l’usager de les refaire chaque fois à l’ouverture du programme de calcul.

Il s’agit de la fonctionnalité permettant la sauvegarde des commandes dans un fichier de script. On la connaît bien et c’est fort pratique.

Les instructions transmises au logiciel par l’usager étant précises, il faut que les manières de les sauvegarder par le logiciel et de les visualiser ensuite devant l’utilisateur soient tout aussi précises et non approximatives.

Je vais y venir juste ci-dessous.

La transmission d’instructions à la machine (la programmation) doit se faire par le truchement d’un langage verbal (des lignes de code) et non par la représentation avec un schéma, un dessin, du glisser-déposer ou du clic-bouton.

Les interfaces soi-disant faciles, permettant la programmation en déplaçant des objets sur l’écran, c’était bien à l’aube de l’ère des ordinateurs personnels, dans les années 1990, lorsque le grand public découvrait à peine l’informatique. Aujourd’hui, à l’aube des années 2020, ce genre d’approche, pourtant extrêmement répandu, est tout juste bon pour apprendre à programmer aux enfants en bas âge. Alors, Tableau, si tu m’entends

Lorsque plusieurs outils existants permettent de résoudre un problème donné, il faut les enseigner tous et laisser aux étudiants de choisir celui qu’ils ou elles préfèrent.

« Dans mon cours d’économétrie, je fais faire à mes étudiants six TP de 1 h 45. Trois en sont sous Excel —parce qu’ils vont faire leur stage sous Excel, clairement. Ensuite un TP sous R, et ils ont le tutoriel à côté : c’est ma fiche de TP, avec les bons repères ; et en 1 h 45 seulement, les étudiants peuvent développer une compétence R, je ne vois pas où est la difficulté. Ensuite, je leur fais faire un cinquième TP sous Python et c’est pareil. Enfin, le dernier, le TP n° 6, c’est l’évaluation —et ils ont le choix de l’outil. Tous les ans, à peu près la moitié fait le choix d’Excel, un quart choisit R et un quart Python. » (55:22)

Il faut que les enseignements de langages de programmation soit dispensés à part entière et en dehors des matières enseignant les méthodes théoriques.

La formation doit être construite de manière optimale de telle sorte que ses parties essentielles —le cours théorique et l’application pratique sur machines— ne phagocytent pas les unes les autres mais disposent chacune d’une durée de formation qu’elles méritent.

Il faut que le logiciel utilisé en TD soit accessible par les étudiants chez eux.

Les barrières, ici, sont le coût de la licence du logiciel et la compatibilité de celui-ci avec le système d’exploitation installé sur l’ordinateur de l’étudiant. Car même si la fac paye la licence à tous ses étudiants, l’installation peut néanmoins être problématique.

  • Premièrement, l’installation de SAS nécessite d’installer, en plus, des logiciels de virtualisation et de créer une machine virtuelle… une vraie plaie pour les utilisateurs qui n’ont pas vocation à aimer résoudre des problèmes techniques.
  • Deuxièmement, SAS n’existant qu’en version Windows, un étudiant comme moi, qui ai choisi d’équiper ma machine de Linux, ne peut pas l’installer, à moins d’utiliser le client Web de SAS (que j’ai utilisé lorsque j’étais obligé) ou d’utiliser WINE ou un émulateur (des braves gens l’ont essayé, en 2009 et en 2010, avec plus ou moins de succès). L’alternative la plus raisonnable semble d’installer R à la place de SAS : R est un logiciel qui existe pour Windows comme pour Linux comme pour MacOS (qui est de la famille Linux à la base) et qui s’installe sans rendre l’utilisateur fou de rage au point de s’arracher les cheveux sur la tête.
Il faut que le logiciel ou le langage puisse se développer organiquement pour rester d’actualité, que de nouvelles fonctionnalités s’amorcent, se développent de manière spontanée et que la révision par des pairs de la qualité de celles-ci soit facilitée.

À titre d’exemple, une problématique bien d’actualité sont les « Big Data », ces masses de données volumineuses, variées et s’accumulant à grande vitesse en temps réel. Pour pouvoir s’attaquer à celles-ci, il faut qu’un logiciel de calcul statistique puisse faire aujourd’hui des choses qu’il n’avait pas besoin de savoir faire auparavant :

  • de la programmation parallèle (en anglais concurrency) en capitalisant sur le nombre de noyaux du processeur ;
  • des algorithmes de type map-reduce pour traiter les données. Inexistantes dans R au début des années 2000, ces fonctionnalités ont été introduites depuis 2011.

« Grâce au dynamisme de R et de la communauté [de ses utilisateurs] qui fait avancer R, on a des fonctionnalités qui sont réellement très très intéressantes », se félicite Ricco Rakotomalala (01:05:14).

Les barrières, ici, sont

  • la compatibilité : lorsque le développent de nouvelles fonctionnalités ne puisse se faire que sur des machines d’un certain type ou via un logiciel d’un certain type ;
  • le coût : lorsque le développent de nouvelles fonctionnalités ne puisse se faire que via un logiciel relativement (ou extrêmement) onéreux ;
  • le code source étant la propriété intellectuelle d’une personne ou d’une société, y avoir accès est impossible, encore moins pouvoir le modifier.

La meilleure solution semble, là encore, d’opter pour des logiciels libres (open-source).

Faire adapter le programme aux facultés des étudiants.

« En L3 DSI [data science et informatique], j’ai un cours de programmation qui est « marié » avec un cours d’algorithmie. On a fait le choix de travailler sous Delphi. Ce qui est très intéressant, c’est qu’il y a vingt ans Delphi était enseigné en M2 ; on l’a fait descendre en M1 puis en licence. Mon cours de data mining, que je faisais en M2, maintenant je le fais en M1. Il y a donc une vraie progression des compétences des étudiants. » (01:06:18)

Faire adapter le programme à la réalité du monde informatique.

« Ce qui est bien en informatique c’est qu’on ne peut pas s’endormir : il faut qu’on surveille tout le temps ce qui se passe parce que ça évolue beaucoup. À un moment donné, on s’est demandé s’il était encore pertinent de travailler sous Delphi. Parce que si on va sur le site de l’Apec et qu’on lance une recheche sur le mot-clé « delphi », on trouve quand même quelques offres d’emploi, on est d’accord [la recherche retourne 71 offres d’emploi sur toute la France, contrairement au mot clé Python qui retourne 1 819 résultats]. Delphi était un environnement de programmation qui était très en vogue il y a quinze ans, mais justement : c’était il y a quinze ans. » (01:07:04)

Multiplier les sources de veille

Qu’il s’agisse de trancher s’il faut ou non inclure un logiciel ou langage intéressant mais encore peu connu ; ou bien de sortir du cursus un logiciel ou langage qui a fait son temps : comment savoir si le moment en est venu ? La meilleure stratégie semble de multiplier ses sources de veille. En l’occurrence, M. Rakotomalala explique que ce qui l’a poussé à remplacer Delphi par Python en 2014 pour la rentrée 2015 était un concours de signes précurseurs :

  • on voyait Python arriver petit à petit en tête des langages les plus populaires sur KDnuggets ;
  • LeMondeInformatique.fr a sorti un article intitulé « Python passe en tête des langages d’apprentissage et détrône Java »
  • les résultats d’analyse des tendances des offres d’emploi ramassés sur Apec et ailleurs sur Internet.

M. Rakotomalala raconte comment en 2017 un groupe d’étudiants de son master a fait un projet de text mining sur plusieurs centaines d’offres d’emploi trouvés sur LinkedIn, sur Apec.fr, etc., qu’ils ont d’abord lus et étiquetés à la main… Le but était d’essayer de cerner les mots-clés importants qui caractérisent les annonces partout en France. Les résultats montrent que Python y occupe une place assez singulière. Ainsi, alors que dans les annonces pour les postes de chargé d’études statistiques « classiques », les mots-clés qui ressortent le plus souvent sont « statistique », « SAS », « SAP », « Excel » et les bases de données, le paysage est en revanche différent pour ce qui est des data scientists : le mot-clé le plus fréquent est toujours « statistique » mais les autres mots-clés intéressants sont « Python », « R », « machine learning », « algorithme », « SQL » et « anglais ».

De là, il n’est pas étonnant que dans l’arbre de décision du modèle prédictif élaboré automatiquement sur la base de ces offres d’emploi là, c’est la présence du mot-clé « Python » qui apparaît comme le premier critère permettant de faire le tri entre les offres d’emploi qui relèvent véritablement de la data science. Plus qu’un phénomène de mode, les compétences en Python font véritablement partie des besoins des entreprises.

Tentons la même expérience

J’ai fait une expérience similaire par curiosité de découvrir le nombre de fois où les noms des différents logiciels ou langages enseignés aujourd’hui en différentes formations en data sciences et à l’informatique décisionnelle de niveau master, en lançant quelques requêtes de recherche :

  • en fin décembre 2019 ;
  • sur deux sites de recherche d’emploi, Apec.fr et LinkedIn.com, que j’ai choisis arbitrairement mais dont la notoriété et la diversité des offres devraient en principe assurer des résultats reflétant suffisamment bien la réalité ;
  • sur trois zones géographiques : toute la France, la région Île-de-France et enfin les deux départements de l’ex-région Nord—Pas-de-Calais où deux masters offrent une formation en BI, data sciences et machine learning : le master SIAD de la faculté des sciences économiques et sociales, et le master DS de la faculté des sciences et technologies ;
  • en accompagnant les mots-clés d’intérêt d’un des deux mots-clés subsidiaires, « statistique » ou « data », censés à la fois affiner la recherche et, étant suffisamment génériques, ne pas biaiser les résultats ;
  • sans préciser d’autre critère.

Et voici ce que nous avons observé :

(À noter que les requêtes concernant R, d’abord envisagées d’être incluses dans cet échantillon, ont finalement dû en être entièrement exclues : en effet, leurs résultats ont été systématiquement « pollués » par des offres sans rapport mais contenant le sigle « R&D ». Le travail aurait exigé une recherche de text-mining plus poussée dont le volume horaire dépasserait l’intérêt et la raison d’être de cet essai.)

Nous pouvons faire plusieurs observations au sujet des résultats :

  • LinkedIn a systématiquement retourné considérablement plus de résultats qu’Apec.fr, la seule exception étant la requête « statistique python » pour les départements Nord et Pas-de-Calais ;
  • à quelques exceptions près, les requêtes contenant le mot-clé subsidiaire « data » ont tendance à retourner plus de résultats que les requêtes contenant le mot-clé subsidiaire « statistique », et ce pour les deux moteurs de recherche ;
  • un nombre faible de résultats pour deux technologies de Microsoft : VBA (Visual Basic Application) et Access :
    • VBA est l’environnement de développement créé par Microsoft pour le langage de script Visual Basic, également créé par Microsoft, pour programmer des « macros » (procédures automatisées) pour les logiciels du pack Office (une autre création de Microsoft) : Word, Excel, PowerPoint et Access.
    • Access est le SGBD du pack Office de Microsoft qui a été populaire dans les années 1990 et 2000 faute d’autres alternatives à l’époque, mais dont le marché a commencé à se désintéresser depuis le début de l’ère « Web 2.0 » et l’arrivée massive de toutes les diverses plateformes du Web permettant de stocker et d’éditer des données en ligne, à même dans le navigateur.

Voilà deux exemples de logiciels dont l’enseignement va à l’encontre de la « règle d’or » et qui doivent en principe être retirées d’un cursus de data sciences. D’autant plus que le nombre d’heures d’enseignement en master est limité et qu’il est souvent difficile d’ajouter des heures au contenu pédagogique d’un master sans devoir en supprimer d’autres.

*

*            *

En guise de conclusion

Le fait d’être utilisé en entreprises est, pour un outil informatique donné, incontestablement un des facteurs déterminants dans le choix de son intégration dans une formation d’informatique ; c’est bien la « règle d’or », dit-on, parmi les critères de choix : plus un logiciel est répandu, plus il faut l’adopter. Mais est-ce la vérité absolue ?

Comment IBM a grappillé des parts de marché en Europe de l’Est

Quelqu’un m’a raconté comment fait IBM pour gagner irrémédiablement (comme un mariage forcé et à vie) des parts de marché dans les pays de l’Europe de l’Est, là où pourtant les grandes entreprises des secteurs bancaire, financier et des transports (les clients typiques d’IBM en France) ne sont pas si grandes et n’ont, en principe, pas les moyens de payer le coût prohibitif des licences et frais d’exploitation du géant américain. Cependant, lorsque les grandes entreprises dans les pays voisins sont déjà clients d’IBM et bénéficient des facilités de transactions et autres bienfaits, les nouveaux clients consentent plus facilement, ce qui permet à IBM de convertir de plus en plus d’entreprises et grappiller de plus en plus de parts de marché. Ces bienfaits-là, à la base non nécessaires et complètement artificiels, finissent par paraître indispensables. Tout comme les fabricants de cigarettes malintentionnés faisaient croire, avant que la publicité des cigarettes ne soit complètement interdite en France, que fumer rend les gens plus populaires et leur vie plus heureuse, les fumeurs, une fois accoutumés, ne savaient plus pourquoi ils fumaient tous les jours, alors qu’au début ils ne fumaient qu’en soirées.

Le besoin une fois créé, IBM envoie dans ces contrées d’habiles commerciaux qui sortent le grand jeu et négocient avec les grandes entreprises et services publics avec des éléments de langage habituels (« IBM est l’étalon or de la sécurité et de la fiabilité », « IBM est le standard », « IBM c’est du sérieux, ses clients aussi », « IBM est américain »…). Pour commencer, ils offrent aux entreprises une période d’essai assortie d’une réduction. Ce n’est pas encore le mariage mais, pour ainsi dire, les fiançailles.

Les logiciels d’IBM étant conçus pour fonctionner le mieux avec du matériel fait maison, les entreprises ayant entamé l’intégration de leurs logiciels se voient proposer un essai du matériel IBM, là encore assorti d’une réduction et même des facilités de paiement sous forme d’un prêt bancaire. Évidemment, les produits auxquels ils ont droit avec leur portefeuille ne sont pas de la première jeunesse voire sont complètement obsolètes. « Mais bon, c’est du IBM et ça ira très bien quand même ! », se disent les cadres dirigeants des nouveaux clients d’IBM sans se poser la question comment vont devoir galérer au quotidien les membres du personnel qui seront amener à travailler directement avec ce matériel et ces logiciels.

Les serveurs du gros système une fois installés, le mariage forcé est prononcé. Très vite, la facture monte et, même si l’entreprise n’aura cesse de le regretter par la suite, divorcer d’avec IBM coûterait encore plus cher que de continuer à subir des frais faramineux d’exploitation et de licence. Si bien que l’entreprise ne pourra plus, pendant des années, s’offrir une mise à jour, condamnant par là son personnel à devoir travailler avec un matériel et des logiciels obsolètes. Qui plus est, toute possibilité de compatibilité avec d’autres logiciels ou composantes matérielles sera éliminée : pour être compatible avec des produits d’IBM, un produit matériel ou logiciel tiers doit être certifié IBM ; et pour cela il faut soit payer IBM, soit faire partie d’IBM. Autant dire que ce genre de pratique ne plaît pas à tout le monde.

Ainsi opère IBM, mais il y a fort à parier que cela pourrait aussi bien être le cas de Microsoft : les deux

  • « marient de force » les utilisateurs à leurs produits,
  • se plient rarement voire jamais aux standards mondiaux reconnus, créés our favoriser la compatibilité ; mais eux essayent toujours de réinventer leur propre roue,
  • empoisonnent l’industrie par des pratiques anticoncurrentielles et non constructives,
  • prospèrent sans faire avancer l’innovation — tout en prétendant cependant d’en être les champions.

Alors que les logiciels d’IBM et de Microsoft ne sont que rarement les meilleurs, ils sont néanmoins dominants sur leur marché. Microsoft, qui plus est, a dangereusement infecté absolument tout le système d’éducation et de recherche en France, alors qu’elle ne mérite pas ces faveurs. Comment est-ce possible ?

Mais il suffit d’écouter le bon sens pour se rendre à l’évidence que leurs degré de notoriété et leurs parts de marché c’est encore plus du vent que la nanotechnologie de Paris Hilton (qui au moins est drôle).

Attendez… On ne peut pas tromper tout le monde tout le temps, pas vrai ?

Dans le monde, il y a fort probablement plus de personnes croyantes ou adeptes d’une religion que de personnes athées. Les États de certains pays revendiquent une religion « officielle », tandis que d’autres, comme l’État français, sont laïcs. Quelle voie est la plus constructive ? Que dit le bon sens ?

Les religions, comme les logiciels commerciaux de certains éditeurs-prédateurs ou les appareils de certaines marques prédatrices, peuvent être de perpétuelles sources de conflits et de malaises : pour s’y épanouir, il faut y adhérer complètement. Un autre axe de ressemblance est que les uns comme les autres permettent de mieux asseoir le contrôle sur les activités de leurs usagers.

Si on cherchait à mesurer combien de personnes dans le monde ont utilisé Windows au moins une fois au cours du mois, devrait-on y inclure les personnes comme moi qui, bien qu’ayant renoncé à Windows au profit d’Ubuntu, de la famille Linux, depuis 2013, suis régulièrement obligé d’utiliser Windows malgré moi, au travail, dans les bibliothèques, en TD à la fac ou lorsqu’un·e ami·e me demande de dépanner un problème technique sur son PC sous Windows.

Même si le nombre de personnes ayant utilisé Windows au moins une fois dans le mois a beau représenter, disons, plus de 90 % de la population mondiale, est-ce là un indicateur de sa popularité auprès des utilisateurs ? Si on ne gardait de ces personnes que celles qui ont éprouvé du plaisir à utiliser Windows ou qui l’ont trouvé efficace, le taux ainsi mesuré subirait une chute vertigineuse et brutale vers le néant.

Et pourtant, Windows est bien partout, comme de nombreux autres logiciels de Microsoft.

Mais si c’est contraire à toute logique, comment ça se fait ?

Malheureusement trop souvent, les choix contre-intuitifs en matière de logiciels informatiques en entreprises sont dus au fait que les décideurs de ces choix ne sont pas les utilisateurs de ces outils. En France, ce sont surtout les grandes structures publiques et privées qui présentent ce fléau (services publiques, écoles et universités, grands établissements bancaires et d’assurance). En équipant leurs DSI de logiciels commerciaux, donc onéreux, tout en étant souvent de qualité médiocre, peu ergonomiques et à compatibilité restreinte, ces structures-là se tirent au moins trois balles dans le pied :

  • elles condamnent également leur personnel à utiliser des logiciels de mauvaise qualité qui créent des encombres dans leurs procédures au quotidien ;
  • choisissant de débourser de grandes sommes d’argent pour payer les licences de logiciels commerciaux, ces structures-là se contraignent à devoir essorer des économies sur le coût du matériel et condamnent leur personnel à utiliser des machines médiocres au quotidien ;
  • en optant pour une offre commerciale des grands éditeurs prédateurs comme Microsoft ou IBM, leurs grands clients —parmi lesquels l’État français—, acquiescent au statu quo dans le secteur informatique et renforcent un oligopole pernicieux et anticoncurrentiel.

La règle d’or, oui, mais l’enseignement des logiciels et langages informatiques doit aussi être proportionnel à leur popularité auprès de leurs utilisateurs.

Ce n’est pas un problème, en soi, qu’un logiciel payant comme SAS ou Excel soit enseigné dans les formations à l’informatique décisionnelle : de fait, ces deux logiciels là sont très répandus dans les entreprises et les étudiants désireux de se faire embaucher en SSII/ESN ont bien intérêt à les adopter, de même que les formations universitaires ont bien intérêt à les enseigner et voir le plus possible de leurs jeunes diplômés rapidement recrutés. Mais l’enseignement des outils dominants sur le marché doit aussi être équitable et proportionnel non seulement à leur part de marché mais également à leur popularité auprès des utilisateurs réguliers. Et les logiciels libres ne doivent pas être ignorés.

Il y a clairement un problème lorsqu’un logiciel commercial payant, répandu mais médiocre dans bien des aspects, bénéficie d’une place privilégiée dans une formation, alors qu’un logiciel libre mondialement connu et reconnu, ayant tous les atouts du logiciel commercial sans présenter aucun de ses défauts, n’a pas sa place dans la formation ; ou, au mieux, doit se partager la place avec un autre cours et encore, seulement par la volonté personnelle d’un enseignant plus ouvert que les autres. Plus regrettable encore est le fait que l’enseignement de technologies dépassées comme Access ou VBA se poursuit dans certaines formations, violant la « règle d’or » et contraire à toute logique. On dirait bien que la règle d’or n’est finalement pas une véritable règle d’or et qu’elle peut être relativisée.

Dès lors, les universitaires feraient bien de retrouver leur courage et leur rôle de guides éclairés et créateurs de savoirs et, armés des fruits de leurs recherches, montrer la voie aux cadres dirigeants d’entreprises, dont la vocation n’est pas de réfléchir. Pour capter leur attention, il suffit de leur montrer qu’il y a une bonne opportunité de réduire les coûts.

Il est clair qu’on ne peut pas, du jour au lendemain, amener les grandes entreprises françaises et les services publics —qui, pour beaucoup, sont aujourd’hui entièrement équipés en logiciels de Microsoft (Windows, Azure, Office, Outlook, Internet Explorer et j’en passe) et avec des serveurs d’IBM— à adopter les produits libres ; de même qu’on ne peut pas faire adopter, du jour au lendemain, un smartphone sous Android à une personne toute équipée d’Apple. Mais ce n’est pas une raison de ne pas leur parler.

Quoi, ils n’écouteront pas, vous croyez ?

Les messages publicitaires des géants de l’informatique s’en fichent qu’on les écoute. Du coup, ce sont les seuls qu’on entend.

Une réflexion sur “La place des logiciels libres dans l’enseignement des data sciences et d’informatique décisionnelle : de la «règle d’or» au bon sens”

Votre commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l’aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l’aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l’aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l’aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s