Un peu de mathématiques. Enfin, c'est un bien grand mot. Il s'agit d'un petit schéma trouvé sur un blog qui explique pourquoi d'un côté (temps court) ce n'est pas évident de se mettre à Linux mais d'un autre côté (temps long) pourquoi c'est un investissement plus que rentable sur la durée.

En fin d'article, l'auteur nous invite à donner notre avis sur sa petite théorie. Idem avec sa traduction[1]. D'accord, pas d'accord ? Est-ce trop simplifié ? Et le poids des habitudes Windows ? Et si l'utilisateur découvre Linux sans connaître préalablement Windows ? Et quid des nuances apportées par les différentes distributions Linux ? Et le Mac dans tout ça ? etc.

Windows - Linux

Windows vs Linux : Comprendre le fossé de la complexité

Windows vs. Linux: Understanding the Difficulty Divide

Q Hartman - 26 Mai 2008 - WorksWithU.com

Avec le temps j'ai développé une théorie généralisée des coûts que cela représente d'effectuer une tâche sous Windows et sous Linux, un corollaire de cette théorie est que beaucoup de gens pensent que Linux est trop compliqué ou "pas encore prêt pour le grand public".

L'essence de cette théorie peut être illustrée par ce graphique :

Difficulty Divide - Linux vs Windows

Evidemment, aucune donnée ne vient étayer ce graphique. C'est simplement un support visuel pour aider à expliquer un concept que j'ai déjà souvent vu illustré. L'axe des x représente la complexité de la tâche à réaliser. Ca peut être la création d'un réseau, l'ouverture d'une image, la conception d'un film, la construction et la maintenance d'un site Web, l'automatisation de la migration d'une base de données complexe ; vraiment n'importe quelle tâche qui peut être réalisée par un ordinateur, grand ou petit. Sur l'axe des y on retrouve le coût relatif pour mener cette tâche à bien. Je prends ici "coût" dans un sens très général. Ce coût peut représenter votre temps, le coût d'une licence pour un logiciel, le coût de la formation ou le coût de l'embauche d'un développeur pour écrire le programme dont vous avez besoin.

Logiquement, le coût pour mener à bien une tâche augmente, que ce soit sous Windows ou sous Linux, avec la complexité de la tâche. Je vous invite par contre à regarder l'ampleur de la différence. La courbe pour Linux est quasiment linéaire et tend même vers une asymptote à mesure que la complexité augmente. En d'autres termes, l'augmentation du coût est proportionnelle à l'augmentation de la complexité de la tâche et l'apprentissage de nouvelles compétences est immédiatement mis à profit pour des tâches plus ardues. Le coût est proportionnel à la difficulté et l'apprentissage est progressif, ce qui rend les tâches les plus dures plus accessibles. J'aime appeler cela "le juste prix de l'accès à la technologie".

Pour Windows la courbe est très plate au début. La réalisation de tâches modérément complexes ne coûte pas beaucoup plus que la réalisation de tâches triviales. Voilà qui nous amène au fossé de la complexité. C'est l'espace borné par les courbes où Windows l'emporte. Il est plus simple de compléter des tâches de ce niveau de complexité sous Windows que sous Linux. Je suis de l'avis que les gens qui abandonnent Linux sont ceux qui ne parviennent pas à franchir le fossé de la complexité. Que ce soit parce qu'ils n'ont pas le temps ou l'intérêt nécessaire pour atteindre ce niveau supérieur importe peu, le fait est qu'ils n'y parviennent pas.

Je vous invite également à observer cependant que la courbe pour Windows devient presque verticale très rapidement. Plus les besoins et les compétences de quelqu'un augmentent, plus le coût pour atteindre un nouveau pallier sous Windows augmente et ce de plus en plus vite. Vous vous retrouvez rapidement à chercher partout des logiciels parce que les outils qui vous permettent de mener à bien votre tâche ne sont pas facilement accessibles. Le plus souvent ces outils n'existent pas ou sont très coûteux. Même si vous avez le savoir-faire pour créer une solution, les outils nécessaires pour la mettre en œuvre sont souvent très chers. L'opacité relative et la nature monolithique de Windows joue également un rôle ici. Les maigres rapports, les erreurs mystérieuses et les interactions complexes cachées peuvent faire perdre beaucoup de temps pour deviner la source d'un problème, même pour un administrateur système expérimenté comme moi. Souvent, même une fois que la cause du problème est détectée il est fort probable qu'absolument aucun outil ne fera ce que vous désirez et réussir à faire fonctionner tous les outils ensemble présente encore un autre défi en lui-même. Tous ces facteurs alourdissent le coût de la réalisation d'une tâche.

C'est à ce niveau de complexité que Linux l'emporte. Grâce à la libre disponibilité de puissants outils et grâce au partage sans entraves d'informations au sein de la communauté d'utilisateurs de Linux le coût de la réalisation des tâches augmente bien plus lentement. Il est surprenant de voir à quelle vitesse les besoins et les compétences de quelqu'un peuvent atteindre ce niveau où les problèmes sont plus simples à résoudre sous Linux. Pour ceux que je classerais dans la catégorie "Technologiste Typique" il ne faut pas plus de quelques mois pour y parvenir sans connaissance préalable de Linux. J'en ai été témoin. Pour les gens qui ne sont pas aussi mordus de technologie ça peut prendre plus de temps, mais selon toute probabilité ils y parviendront. Pour ceux qui sont vraiment à fond dedans ça peut ne prendre que quelques jours ou semaines.

J'ai récemment eu à modifier ma théorie sur le fossé de la complexité, je vous ferai part de son évolution la semaine prochaine. En attendant j'aimerais savoir ce que vous en pensez. Est-ce que le fossé de la complexité existe vraiment ? Est-ce que mon explication le décrit avec précision ?

Notes

[1] Traduction Framalang : Olivier (+ Daria).