Linux n'est pas Windows

Dans l'article suivant, je me réfère au système d'exploitation GNU/Linux et aux divers projets de logiciels libres et Open Source que l'on regroupe souvent sous l'appellation générique "Linux". C'est plus court.

À propos

Si vous avez été dirigés vers cette page, il est probable que vous soyez un utilisateur relativement nouveau de Linux et que vous ayez quelques soucis pour passer de Windows à Linux. Pour la plupart des gens - et c'est ce qui a motivé l'écriture de cet article - ce passage est problématique. Il pose selon moi 7 grandes questions, assez différentes les unes des autres.

[NdT: glossaire: SE = Système d'exploitation; LL = logiciel libre]

Problème #1: Linux n'est pas exactement pareil que Windows.

Vous seriez stupéfaits de voir le nombre de personnes qui s'en plaignent. Ils passent sous Linux, espérant essentiellement trouver une version libre et Open Source de Windows. Très souvent, c'est ainsi que des utilisateurs trop zélés de Linux leur ont décrit celui-ci. Cependant, c'est un espoir vain.

Les raisons qui poussent une personne à passer à Linux sont diverses, mais elles reviennent toujours au même: on espère que Linux sera meilleur que Windows.

Les variables généralement employées pour mesurer le succès d'une chose (en particulier un logiciel) sont le coût, le choix, la performance, et la sécurité. Il y en a beaucoup d'autres. Mais tout utilisateur de Windows qui essaye Linux le fait parce qu'il espère qu'il sera meilleur que ce qu'il a.

C'est ici que se niche le problème.

Il est logiquement impossible pour n'importe quelle chose d'être meilleure que n'importe quelle autre tout en lui étant parfaitement identique. Une copie parfaite peut être égale, mais elle ne peut jamais surpasser l'original. Ainsi quand vous avez donné à Linux une chance dans l'espoir qu'il serait meilleur, vous espériez bien sûr qu'il serait différent. Trop de gens oublient ce fait, et jugent chaque différence entre les deux systèmes comme étant un échec de Linux.

Un exemple simple: pensez aux mise à niveau des drivers. Généralement, on améliore un driver de matériel sur Windows en se rendant sur le site Web du fabricant et en téléchargeant le nouveau driver; alors que sous Linux vous faites une mise à jour du noyau.

Ceci signifie qu'un téléchargement et une mise à niveau uniques de Linux vous donneront les tous derniers drivers disponibles pour votre machine, alors que sous Windows vous aurez à surfer sur plusieurs sites et télécharger toutes les mise à niveau individuellement. Linux propose un processus de mise à jour très différent, mais il n'est certainement pas mauvais. Cependant, beaucoup d'utilisateurs s'en plaignent parce que ce n'est pas ce à quoi ils sont habitués.

Voici un autre exemple que vous aurez plus de facilité à comprendre. Considérez Firefox: une des plus grandes success-story de l'Open Source. Un navigateur Internet qui a pris le monde à l'assaut. A-t-il réalisé ce succès en étant une imitation parfaite d'Internet Explorer, le navigateur qui était alors le plus populaire?

Non. Il était réussi parce qu'il était meilleur que IE, et il était meilleur parce qu'il était différent: navigation par onglets, signets RSS, barre de recherche intégrée, support du png, extensions adblock, ainsi que d'autres choses merveilleuses telle la fonctionnalité de recherche apparaisant en bas de la fenêtre et permettant de rechercher au cours de la frappe, tout en virant au rouge lorsqu'il n'y a plus de résultat.

IE n'avait pas de tabs, aucune fonctionnalité de RSS, des barres de recherche disponibles uniquement grâce à des extensions créées par des éditeurs de logiciels tiers, et une fenêtre de recherche qui exigeait un clic sur "OK" pour commencer la recherche et un clic sur "OK" pour faire partir le message "Non trouvé".

Voici une démonstration claire et inattaquable d'une application Open Source rencontrant le succès en étant meilleure, mais surtout en étant différente [1]. Si Firefox avait été un clone d'IE, il aurait disparu dans l'obscurité. Et si Linux avait été un clone de Windows, la même chose se serait produite.

Donc, la solution au problème #1: Se rappeler que là où Linux est familier et identique à ce à quoi vous êtes habitué, il ne s'agit pas une reprise améliorée. Bienvenue dans un monde où les choses sont différentes, parce que ce n'est qu'ailleurs que l'on a une chance de briller.

Problème #2: Linux est trop différent de Windows

Ce problème surgit lorsque les gens s'attendent à ce que Linux soit différent mais constatent que quelques différences sont trop radicales à leur goût. Le plus grand exemple de ceci est probablement la quantité quasi infinie de choix disponibles aux utilisateurs de Linux. Alors qu'un utilisateur d'un Windows tout neuf possède le bureau Classic ou XP avec Wordpad, Internet Explorer, et Outlook Express installés, un utilisateur d'un Linux tout neuf doit d'abord choisir parmi des centaines de distributions, puis parmi plusieurs bureaux différents tels Gnome, KDE, Xfce, Fluxbox ou autres, puis parmi des centaines de logiciels différents, y compris pour des logiciels dits "de base" (éditeurs de textes, navigateurs, etc).

Un utilisateur de Windows n'est pas habitué à tant de choix juste pour se lancer. Les posts exaspérés sur les forums du type "Doit-il vraiment y avoir autant de choix?" deviennent très communs.

Linux doit-il vraiment être si différent de Windows? Après tout, ils sont tous les deux des systèmes d'exploitation. Ils font tous les deux le même travail: allumer votre ordinateur et vous donner quelque chose pour lancer des applications dessus. Ne devraient-ils pas être plus ou moins identiques?

Il faut prendre le problème ainsi: regardez dehors et jetez un coup d'oeil à tous différents véhicules dans la rue. Ce sont tous des véhicules conçus avec plus ou moins le même but: vous transporter de A vers B par l'intermédiaire des routes. Notez la variété dans les conceptions.

Mais vous pouvez penser que les différences entres les voitures sont tout à fait mineures: elles ont toutes ont un axe de direction, des commandes par pédale, un levier de vitesses, un frein à main, des fenêtres et des portes, un réservoir d'essence. Si vous pouvez conduire une voiture, vous pouvez conduire n'importe quelle voiture !

Ce n'est pas faux. Mais n'avez-vous pas remarqué que plutôt que de conduire des voitures, certains pilotent plutôt des motos?

Le changement d'une version de Windows à l'autre est comme le changement d'une voiture à l'autre. De Win95 à Win98, honnêtement je ne pourrais pas faire la différence. De Win98 à WinXP, il y avait des changements un peu plus importants, mais rien de bien primordial [2].

Mais le passage de Windows à Linux revient à passer de la voiture à la moto. Ils sont tous les deux des SEs/véhicules routiers. Ils peuvent tous les deux utiliser les mêmes matériel/routes. Ils peuvent tous les deux vous fournir un environnement pour lancer des applications/vous transporter de A vers B. Mais ils emploient des approches fondamentalement différentes pour faire ainsi.

Windows/les voitures ne sont pas pas sécurisées contre les virus/vols à moins que vous installiez un antivirus/fermiez toutes les portes. Linux/les motos n'ont pas de virus/portes, et sont ainsi parfaitement sûres sans que vous ayez à installer un antivirus/fermer aucune porte.

Voici encore une autre façon de voir les choses, en inversant les analogies:

Linux/les voitures ont été conçues pour plusieurs utilisateurs/passagers. Windows/les motos ont été conçues pour un seul utilisateur/passager. Chaque utilisateur de Windows/pilote de moto a pour habitude d'être entièrement aux commandes de son ordinateur/véhicule à tout moment. Un utilisateur de Linux/passager de voiture est habitué à être aux commandes seulement lorsqu'il est .loggé en superadministrateur/dans le siège conducteur.

Deux approches différentes pour accomplir la même chose. Elles diffèrent fondamentalement. Elles ont des forces et faiblesses différentes. Si l'on compare la voiture et la moto, la première est la plus indiquée pour transporter une famille et un gros chargement de A à B (plus de sièges et plus d'espace de stockage), et la seconde est la plus indiquée pour transporter vite et économiquement une personne de A à B (elle est moins affectée par les embouteillages et consomme moins de carburant).

Il y a beaucoup de choses qui ne changent pas quand vous passez de l'un à l'autre: vous devez encore mettre l'essence dans le réservoir, vous devez toujours conduire sur les mêmes routes, vous devez toujours obéir aux feux de circulation, vous devez toujours utiliser le clignotant avant de tourner, vous devez toujours obéir aux mêmes limitations de vitesse.

Mais il y a également beaucoup de choses qui changent: les conducteurs de voitures n'ont pas à porter des casques de sécurité, les conducteurs de motocyclette ne mettent généralement pas de ceinture de sécurité. Les automobilistes tournent leur volant pour tourner, les motards se penchent dans les virages. Les conducteurs de voitures accélèrent en appuyant sur une pédale, les conducteurs de motocyclette tournent une poignée de gaz.

Un motard qui conduit une voiture en se penchant dans les virages va vite avoir des ennuis. Et les utilisateurs de Windows qui essayent d'employer leurs qualifications et habitudes existantes sont souvent les premiers à poser beaucoup de questions. En fait, les personnes n'ayant jamais utilisé Windows ont souvent une capacité d'adaptation et d'apprentissage beaucoup plus forte que les anciens utilisateurs de Windows. Typiquement, les arguments les plus véhéments qui disent "Linux n'est pas prêt pour l'ordinateur de bureau" viennent d'utilisateurs de Windows avancés, qui se disent que si ils ne peuvent pas passer à Linux, un débutant ne pourra pas franchir le pas. En fait, c'est exactement le contraire.

Ainsi, pour éviter le problème #2: ne pas supposer qu'en grand connaisseur de Windows, vous serez un utilisateur avancé de Linux. Quand on passe pour la première fois sous Linux, nous sommes tous aussi novices les uns que les autres.

Problème #3: Le choc des cultures

Sous-problème #3a: Il y a une culture

Les utilisateurs de Windows sont plus ou moins dans un rapport de client-fournisseur: ils payent le logiciel pour des garanties, pour l'appui, etc. Ils s'attendent à ce que le logiciel ait un certain niveau de rentabilité. Ils sont donc habitués à obtenir des droits avec leur logiciel: ils ont payé l'appui technique et ont tous les droits pour l'exiger. Ils ont également l'habitude de traiter avec des sociétés plutôt qu'avec des gens: ils contractent avec une entreprise, pas avec une personne.

Les utilisateurs de Linux sont plutôt organisés en une sorte de communauté. Ils n'ont pas à acheter le logiciel et n'ont pas de support technique à payer. Ils téléchargent les logiciels gratuitement, utilisent les messageries instantanées et les web-forums pour obtenir de l'aide. Ils ont affaire à des personnes et non à des sociétés.

Un utilisateur de Windows se fera détester si il ne change pas ses habitudes d'utilisateur de Windows en passant à Linux.

Le plus grand nombre de conflits se retrouvent dans les échanges en ligne. Imaginons cette situation: un nouvel utilisateur de Linux demande de l'aide à propos d'un logiciel quelconque. Il n'obtient pas une aide d'un niveau qu'il juge acceptable, et commence alors à se plaindre et exiger davantage d'aide, puisque c'est ce ce à quoi il a été habitué en payant pour du service après vente technique. Le problème est qu'il ne s'adresse pas à un support payant. C'est un groupe de volontaires qui sont disposés à aider des personnes de façon volontaire et "gratuite". Le nouvel utilisateur n'a aucun droit pour exiger d'eux la lune, tout comme un mendiant ne peut pas demander toujours plus aux personnes qui lui font des dons.

Un utilisateur de Windows a pour habitude de se servir de logiciels commerciaux. Les entreprises ne vendent pas un logiciel avant qu'il soit fiable, fonctionnel, et assez facile à utiliser. En tout cas, c'est ce à quoi s'attend: le logiciel sort à la version 1.0.

Les logiciels linuxiens, cependant, tendent à sortir au fur et à mesure que le code est écrit, dès le début: ils commencent à la version 0.1. Ainsi les personnes qui ont vraiment besoin de la fonctionnalité principale du logiciel peuvent l'obtenir immédiatement; les développeurs intéressés, eux, peuvent s'impliquer en aidant à améliorer le code et la communauté toute entière est/peut être au courant de ce qu'il se passe (suivre l'apparition des nouvelles versions).

L'utilisateur "3a" qui a des problèmes va se plaindre: le logiciel n'a pas répondu à ses propres normes, qu'il pense avoir le droit d'exiger. Et ce ne sont pas des réponses sarcastiques comme "j'exigerais un remboursement si j'étais toi" qui le dérideront.

Ainsi, pour éviter le problème #3a: se rappeler simplement que vous n'avez pas payé le développeur qui a écrit le logiciel, ni la communauté qui essaye (ou pas) de vous aider. Ils ne vous doivent rien.

Sous-problème #3b: Les anciens contre les jeunes

Linux a commencé comme un passe-temps de hacker [3]. Il s'est développé et a commencé à attirer de plus en plus de hackers amateurs. Il fut un temps, seul un geek aurait eu une chance d'obtenir une installation utilisable de Linux fonctionnant bien. Linux a commencé avec la philosophie "par des geeks, pour des geeks". Et aujourd'hui encore, la majorité des utilisateurs de Linux expérimentés sont des geeks.

Et c'est plutôt une bonne chose: en cas de pépin matériel ou logiciel, avoir un nombre important de geeks disponibles pour essayer de trouver à la solution est un plus indéniable.

Mais aujourd'hui, Linux a grandi. Il existe des distributions que presque n'importe qui peut installer [4], et même des liveCD qui détectent tout votre matériel pour vous, sans aucune intervention. Linux est devenu attirant pour les utilisateurs non-geeks uniquement parcequ'il est gratuit et sans virus. Il n'est pas rare qu'il y ait des frictions entre les deux camps. Il est important de considérer, cependant, qu'il n'y a aucune vraie méchanceté de chaque côté: c'est le manque de compréhension qui pose des problèmes.

D'un côté, vous avez les geeks purs et durs qui croient encore que tous les utilisateurs de Linux sont des geeks. Ceci suppose qu'ils s'attendent un à niveau élevé de connaissances de la part de leur interlocuteur, ce qui laisse croire aux "jeunes" que les anciens sont arrogants, élitistes et grognons. Certes, c'est parfois vrai. Mais la plupart du temps, c'est faux: il est élitiste de dire "tout le monde devrait savoir ça"... et il n'est pas élitiste de dire que "tout le monde sait ça" - ce qui est très différent.

En face , vous avez les nouveaux utilisateurs venant de SEs commerciaux. Ces utilisateurs sont habitués à des logiciels que quiconque peut utiliser, dès l'ouverture de la boîte contenant le CD.

C'est là que se situe la différence, puisque le premier groupe se compose de gens qui aiment désosser leur système et le reconstruire à leur envie, de façon personnalisée. Alors que le deuxième groupe n'en a rien à faire de savoir comment le système marche, pourvu qu'il marche.

On pourrait faire un parallèle avec les Lego. Imaginons ce dialogue :

- Le Nouveau: Je voulais une nouvelle petite voiture, et tout le monde m'a vanté les mérites des voitures Lego. Alors j'ai acheté des Lego, mais quand je suis revenu à la maison, je me suis retrouvé devant une pile de briques et de cônes dans la boîte. Où est ma voiture??

- Le Vieux: Tu dois construire ta voiture en utilisant les briques. C'est la particularité des Lego.

- Le Nouveau: Quoi?? Je ne sais pas construire une voiture. Je ne suis pas un manuel. Comment suis-je censé savoir la monter tout seul??

- Le Vieux: Il y a un livret fournit dans la boîte. Il t'indique exactement comment utiliser les briques pour construire une voiture. Tu n'as pas besoin de comprendre, juste de suivre les instructions.

- Le Nouveau: Ok, j'ai trouvé les instructions. Il va me falloir des heures ! Pourquoi ne peuvent-ils pas vendre une voiture déjà montée, au lieu de nous la faire construire??

- Le Vieux: Parceque tout le monde ne veut pas faire une voiture avec des Lego. Ils peuvent être assemblés en quelque chose qui nous plaît. C'est la particularité des Lego.

- Le Nouveau: Je ne vois toujours pas pourquoi ils ne peuvent pas fournir plusieurs voitures, ainsi ceux qui veulent une voiture en ont une, et les autres peuvent la démonter pour en faire ce qu'ils veulent. Quoi qu'il en soit, je l'ai finalement montée, mais certains morceaux bougent de temps en temps. Qu'est-ce que je peux faire? Dois-je mettre un point de colle?

- Le Vieux: C'est Lego. Ça a été conçu pour se démonter. C'est la particularité des Lego.

- Le Nouveau: Mais je ne veux pas qu'il se démonte. Je veux juste une voiture !

- Le Vieux: Bah pourquoi t'as acheté une boîte de Lego alors??

Il est clair pour tout le monde que Lego n'est pas fait pour les personnes désirant une voiture. Vous ne verrez pas de conversations comme celle qui précède dans la vie réelle. La particularité des Lego est que vous vous amusez à le construire et que vous pouvez faire ce que vous aimez avec. Si vous n'aimez pas assembler, vous n'avez aucun intérêt à posséder des Lego. C'est l'évidence même.

En ce qui concerne un utilisateur expérimenté, la même chose peut s'appliquer à Linux: la source est ouverte, et il est complètement customisable. C'est sa particularité. Si vous ne voulez pas bidouiller, au moins un peu, pourquoi l'utiliser?

Il a y eu cependant beaucoup d'efforts pour rattraper le retard de Linux auprès des non-hackeurs, en quelque sorte, des boîtes Lego pré-montées, afin de toucher plus de monde (NdT: Ce sont les distributions Linux). En conséquence, apparaissent des conversations ressemblant fortement à la précédente: les nouveaux venus se plaignent au sujet de la présence de modules, ce que les utilisateurs présents depuis longtemps considèrent comme des dispositifs fondamentaux, et se voient renvoyés à des pages de manuels. Mais, se plaindre du nombre trop important de distributions; ou dire que tel logiciel a trop d'options de configuration; ou que cela cela ne fonctionne pas parfaitement à la première utilisation, est comme se plaindre que Lego puisse être transformé en trop de modèles, et ne pas aimer le fait qu'il puisse être décomposé en briques et être remonté en beaucoup d'autres choses.

Ainsi, pour éviter le problème #3b: Se rappeler que Linux n'est plus ce qu'il a été dans le passé. La plus importante partie de la communauté Linux, les hackers et les développeurs, aime Linux parce qu'elle peut l'adapter à ses besoins; ils ne l'aiment que pour le principe de tout assembler, compiler [5]. Mais il n'est pas toujours obligatoire de faire comme eux.

Problème #4: Conçu pour le concepteur

Dans l'industrie automobile, vous verrez peu de voitures dont la même personne a conçu le moteur et l'intérieur: cela nécessite des compétences totalement différentes. Personne ne veut d'un moteur qui a seulement l'air puissant, et personne ne veut un intérieur qui fonctionne superbement bien, mais reste étroit et laid. De la même manière, dans l'industrie du logiciel, l'interface utilisateur (UI) n'est habituellement pas créée par la même personne que celle qui a écrit le logiciel.

Dans le monde de Linux, cependant, on ne retrouve pas exactement la même chose: les projets commencent le plus souvent comme étant la création personnelle ou le jouet d'une seule personne. Il fait tout lui-même, et donc l'interface ne nécessite pour lui aucun système pour faciliter son utilisation: l'utilisateur sait tout ce qu'il y a à savoir sur le logiciel, il n'a pas besoin d'aide. Vi (NdT: Un éditeur de texte en ligne de commande) est un bon exemple de logiciel délibérément créé pour les utilisateurs avertis, qui savent déjà comment il fonctionne: il n'est pas rare que des nouveaux utilisateurs redémarrent leur ordinateur parce qu'ils n'arrivent pas à trouver comment sortir de Vi.

Cependant, il y a une différence importante entre un programmeur de logiciel libre et la plupart des éditeurs de logiciels commerciaux: le logiciel qu'un programmeur de logiciel libre créé est un logiciel qu'il a l'intention d'employer. S'il est possible que le résultat final ne soit pas très confortable pour le débutant, il a l'avantage de mieux répondre aux besoins de l'utilisateur, puisqu'il a été écrit pour cela: le codeur est avant tout un utilisateur. C'est très différent des éditeurs de logiciels commerciaux, qui créent un logiciel pour que d'autres l'emploient: ce ne sont pas des utilisateurs confrontés à la réalité.

Si Vi a l'une des interfaces les plus affreuses et semble horrible pour un débutant, il est toujours en service aujourd'hui parce que c'est une interface superbe une fois que vous savez comment elle fonctionne. Firefox a été créé par des personnes qui passent leur vie sur le Web. Gimp a été créé par des personnes qui manipulent souvent des images. Et ainsi de suite.

Ainsi, les interfaces de Linux sont le plus souvent des champs de mines pour un débutant. Malgré sa popularité, Vi devrait ne jamais être utilisé par un nouvel utilisateur qui veut juste effectuer rapidement quelques changements à un fichier. Et si vous utilisez un logiciel tôt dans son cycle de vie (il vient à peine d'être créé), une interface jolie et facile à utiliser est quelque chose que vous risquez de trouver seulement dans la liste des "Choses à faire": la fonctionnalité est prioritaire. Personne ne conçoit en priorité d'interface de folie pour essayer ensuite d'ajouter les fonctionnalités petit à petit. Ils créent la fonctionnalité, et améliorent l'interface peu à peu.

Pour éviter le problème #4: Rechercher un logiciel qui vise principalement les nouveaux utilisateurs en étant facile à utiliser, ou accepter que le logiciel soit plus dur à assimiler que ce à quoi vous étiez habitués. Se plaindre que Vi ne soit pas assez facile pour de nouveaux utilisateurs est en dehors de toute réalité.

Problème #5: Le mythe de "l'utilisation facile"

C'est une grosse partie. La facilité d'utilisation est un facteur de choix très important dans le monde de l'informatique. Or, c'est une mauvaise raison.

Le concept de base est bon: le logiciel a été conçu avec les besoins de l'utilisateur à l'esprit. Mais on dit toujours qu'un logiciel répondant aux besoins des utilisateurs est d'utilisation facile. Ce n'est pas vrai.

Si vous passez votre temps à traiter des fichiers textes, votre logiciel idéal sera rapide et puissant, vous permettant d'effectuer la quantité maximum de travail avec le minimum d'effort. Les raccourcis clavier simples et la non-utilisation de la souris seront d'une importance capitale.

Mais si vous éditez très rarement des fichiers textes, et que vous voulez juste écrire une lettre de façon occasionnelle, la dernière chose que vous voulez est d'avoir péniblement à apprendre les raccourcis clavier. Les menus bien organisés et les icônes claires dans les menus sont vos alliés les plus précieux.

En somme, le logiciel conçu autour des besoins du premier utilisateur ne conviendra pas forcément au second, etc. Un logiciel peut-il donc être reconnu comme "facile à utiliser", si nous avons tous des besoins différents?

La réponse est simple: "Facile à utiliser" est une expression mal employée, et fait passer quelque chose de simple pour compliqué.

Que veut vraiment dire "facile à utiliser"? Cela dépend du contexte. Le logiciel "facile à utiliser" signifie le "logiciel qui peut être exploité à un niveau raisonnable par un utilisateur sans aucune expérience préalable du logiciel". Ceci a souvent pour conséquence de produire une interface super moche mais qui accède au statut de "facile à utiliser".

Sous-problème #5a: Le familier est amical

Dans la plupart des éditeurs et traitements de textes "faciles à utiliser", on coupe et colle en employant Ctrl-X et Ctrl-V. Absolument non intuitif, mais tout le monde est habitué à ces combinaisons, que l'on peut appeler une combinaison "amicale" (user-friendly).

Ainsi lorsqu'on utilise Vi, on constate que c'est "d" pour couper, et "p" pour coller. L'utilisateur peut alors considérer ces commandes comme non-amicales: ce n'est pas ce à quoi il est habitué.

Est-ce supérieur? Et bien, en réalité, oui.

Avec la commande Ctrl-X, comment coupez-vous un mot du document dans lequel vous êtes actuellement? (Sans souris !)

- Au début du mot, Ctrl-Shift-Droit pour choisir le mot.

- Puis Ctrl-X pour le couper.

Avec Vi?

- dw supprime le mot (delete word).

Que diriez-vous de découper cinq mots en utilisant Ctrl-X?

Au début de chaque mot,

- Ctrl-Shift-Droit

- Ctrl-Shift-Droit

- Ctrl-Shift-Droit

- Ctrl-Shift-Droit

- Ctrl-Shift-Droit

- Ctrl-X

Et avec Vi?

- d5w

L'approche Vi est plus souple et réellement plus intuitive: "X" et "V" ne sont ni évidents ni mémorables pour les commandes "coupe" et "colle", tandis que "dw" pour supprimer (delete) un mot (word), et "p" pour coller (paste) sont évidents [6]. Mais "X" et "V" font partie de notre culture, donc même si Vi est nettement supérieur, il est peu familier. De fait, il passe pour peu amical. C'est à partir de ce genre de considération (Note: des conventions) qu'une interface de type Windows passera pour amicale. Et comme nous l'avons appris dans le problème #1, Linux est nécessairement différent de Windows. Sans surprise, Linux semble donc toujours moins "facile à utiliser" que Windows.

Pour éviter les problèmes de #5a: Tout ce que vous pouvez vraiment faire est d'essayer et vous rappeler que "facile à utiliser" ne signifie pas "ce à quoi je suis habitué". Essayez de faire les choses à votre habitude, et si ça ne fonctionne pas, arrêtez et demandez vous ce que ferait un débutant total.

Sous-problème #5b: Inefficace est amical

C'est un fait triste mais indéniable. Paradoxalement, plus dur est l'accès à la fonctionnalité d'une application, plus celle-ci peut sembler amicale... parce que le facteur "amical" est ajouté à une interface en employant des "indices" simples et évidents - plus il y en a, mieux c'est. Après tout, si l'on met un débutant complet en informatique devant un logiciel de traitement de texte de type WYSIWYG (What you see is what you get) et qu'on lui demande de mettre un peu de texte en gras, quelle situation sera la plus probable?

La fois prochaine que vous fairez du traitement de texte, essayez donc de tout faire par l'intermédiaire des menus: aucune touche de raccourci, et aucun bouton. Les menus quoi qu'il arrive. Vous vous trouverez lent comme un escargot, puisque chaque tâche exige soudainement une multitude de frappes et de clics.

Dans cet esprit, rendre le logiciel "facile à utiliser" revient à mettre des roues de stabilisation sur une bicyclette: il vous laisse partir immédiatement, sans aucune compétence ou expérience nécessaire. Il est parfait pour un débutant. Mais personne ne pense que toutes les bicyclettes devraient être vendues avec des roues de stabilisation, en dehors des vélos pour enfants: si on vous donnait une telle bicyclette aujourd'hui, je parie que la première chose que vous feriez serait de les enlever pour éviter des encombrements inutiles. Une fois que vous savez utiliser un vélo, les roues de stabilisation deviennent inutiles.

De la même manière, beaucoup de logiciels Linux sont conçus sans "roues de stabilisation" - ils ont été conçus pour les utilisateurs qui ont déjà un peu d'expérience et de maturité. Après tout, personne n'est novice à vie: l'ignorance est de courte durée, et la connaissance est pour toujours. C'est pour cela que le logiciel est conçu avant tout pour les "adultes".

On pourrait trouver un contre-exemple: après tout, MSWord présente des menus amicaux et les boutons, et en plus il a des raccourcis claviers. Le top du top, probablement? Amical et efficace.

Cependant, il faut relativiser. Premièrement, le côté terre à terre: avoir des menus, des boutons et des raccourcis et tout le tintoin signifierait beaucoup de codage, et ce n'est pas comme si les développeurs de Linux étaient payés [7]. Deuxièmement, il ne tient pas encore vraiment compte des vrais super-utilisateurs: très peu de professionnels dans l'édition de livres ou de journaux emploient MSWord. Avez-vous jamais croisé un codeur ou un webmaster officiant sous MSWord? Comparez cela au nombre d'utilisateurs de Emacs et Vi.

Comment cela se fait-il? Premièrement, parce qu'un comportement "amical" élimine le comportement efficace: cf. l'exemple du copier/coller ci-dessus. Et deuxièmement, parce que la majeure partie des fonctionnalités de Word est enterrée dans les menus que vous devez fouiller: seules les fonctionnalités les plus communes ont ces petits boutons maniables dans les barres d'outils au-dessus. Les fonctions moins utilisées qui sont encore essentielles pour les utilisateurs confirmés sont trop longues d'accès.

Il faut cependant garder à l'esprit que les "roues de stabilisation" sont souvent disponibles de façon optionnelle pour les logiciels Linux: ce n'est pas automatique, mais ils sont souvent disponibles.

Prenons MPlayer sous Linux. Vous l'utilisez pour jouer un média par son nom de fichier dans un terminal ("mplayer nomdufichier.avi"). Vous faites avance rapide et retour arrière en utilisant les touches haut, bas, gauche, droite. Ce n'est pas très "facile à utiliser". Cependant, si vous tapez à la place "gmplayer nomdufichier.avi", vous obtiendrez une interface graphique, avec tous ses boutons, amicaux et familiers.

Prenons pour exemple le fait de copier un CD vers du MP3 (ou du Ogg): en utilisant la ligne de commande, vous devez utiliser Cdparanoia [8] pour copier les fichiers vers votre disque dur. Vous avez ensuite besoin d'un encodeur. À mon avis, c'est très lourd, même si vous savez exactement employer ces logiciels. Donc il vaut mieux télécharger et installer un logiciel comme Grip. C'est une interface graphique facile à utiliser qui emploie en arrière-plan Cdparanoia et des encodeurs pour rendre l'import de CDs beaucoup plus facile. En outre, il se sert de CDDB pour nommer les pistes à votre place.

Il en va de même pour ripper [9] les DVDs: le nombre d'options à passer pour Transcode est un cauchemar. Mais utiliser Dvd::rip, qui dit pour vous à Transcode tout ce qu'il y a à faire en un processus simple et graphique, tout le monde peut le faire.

Donc, pour éviter les questions de #5b: Se rappeler que les roues de "stabilisation" tendent à être des fonctionnalités optionnelles et/ou externalisées dans Linux, sans toutefois être automatiquement fournies avec le produit principal. Parfois, les "roues de stabilisation" peuvent ne pas faire partie de la conception.

Problème #6: Imitation contre convergence

Les personnes qui considèrent que Linux n'est pas le clone rêvé de Windows, insistent souvent sur le fait que, depuis sa création, Linux tente de ressembler à Windows (ou devrait essayer). Ils ajoutent à cela beaucoup d'arguments :

Argument 1: Linux est passé de la ligne de commande à l'interface graphique, une tentative claire de copier Windows.

Contre-argument: théorie sympa, mais fausse. Le système original de fenêtrage X est sorti en 1984, comme successeur du système de fenêtrage W, porté pour Unix en 1983. Windows 1.0 est sorti en 1985. Windows ne l'a pas vraiment rendu important avant la version 3, sortie en 1990 - à ce moment là, X était depuis des années à l'étape X11, que nous employons aujourd'hui. Linux lui-même a été commencé seulement en 1991. Ainsi Linux n'a pas créé une interface pour copier Windows: il s'est simplement servi d'une interface qui a existé longtemps avant Windows.

Argument 2: Windows 3 a laissé la place à Windows 95 - refondant ainsi l'interface d'une profondeur qu'il n'aura jamais égalée par la suite. Il a eu beaucoup de dispositifs nouveaux et novateurs: fonctionnalité de glisser-déposer; barre des taches, et ainsi de suite... Qui ont été depuis copiés par Linux, naturellement.

Contre-argument: En fait... non. Tout ce qui a été nommé ci-dessus existait avant que Microsoft ne les "invente". NeXTSTeP était en particulier (à l'époque) une interface extrêmement avancée, et il a devancé de manière significative Win95 - la version 1 est sortie en 1989, et la version finale en 1995.

Argument 3: Ok, ok, donc Microsoft n'a pas imaginé tous les dispositifs qui font le "look and feel" de Windows. Mais il créé quand même du "look and feel", que Linux essaye d'imiter.

Contre-argument: Pour démystifier ceci, on doit discuter du concept de l'évolution convergente. On parle d'évolution convegente lorsque deux systèmes complètement différents et indépendants évoluent chacun de leur côté, pour devenir très semblables. Cela arrive tout le temps dans la nature. Par exemple, les requins et les dauphins. Tous les deux sont des mangeurs de poissons et d'organismes marins de taille à peu près identique. Tous les deux ont des ailerons dorsaux, des ailerons pectoraux, des ailerons de queue, et des formes semblables et profilées.

Cependant, les requins ont évolué des poissons, alors que les dauphins ont pour origine une sorte de mammifère quadrupède terrien. La raison pour laquelle ils ont des aspects globaux très semblables est qu'ils ont tous les deux évolué pour être aussi efficaces que possible en s'adaptant à la vie dans un environnement marin. À aucune étape un des pré-dauphins (relativement nouveaux-venus) ont regardé des requins et se sont dit "Super ces capteurs sonores ! Ils marchent vachement bien ! Faut que j'essaye ça !"

De même, il est parfaitement juste de regarder les premiers environnements de bureau de Linux (par exemple FVWM, TWM et plein d'autres interfaces simplistes). Et de regarder ensuite les environnements de bureau modernes de Linux, par exemple Gnome et KDE avec leurs barres de tâches et leurs menus flatteurs pour l'oeil. Et oui, il est vrai qu'ils sont beaucoup plus comme Windows qu'ils ne le furent.

Passons maintenant à Windows: Windows 3.0 n'a eu aucune barre de tâche autant que je sache, et encore moins de menu "démarrer".

Linux n'avait rien d'un environnement Windows moderne. Microsoft non plus. Maintenant ils l'ont tous les deux. Qu'est-ce que cela suppose?

Cela suppose que les développeurs dans les deux camps ont recherché des manières d'améliorer l'interface, et parce qu'il y a seulement un nombre limité de solutions à un problème, des méthodes très semblables sont souvent employées. La similitude ne prouve ni n'implique en aucune façon l'imitation. S'en rappeler vous aidera à éviter de tomber dans le piège du problème #6.

Problème #7: Le logiciel libre?

Ceci pose bien des problèmes. Pas intrinsèquement: le libre et l'open-source sont des choses merveilleuses et immensément importantes dans tout ce dont nous venons de parler, tout le monde le comprend. Mais comprendre en quoi le Logiciel Libre est différent du logiciel propriétaire peut être un pas trop grand à franchir pour certains.

J'ai déjà mentionné quelques exemples: ceux qui pensent qu'ils peuvent exiger un appui technique etc... Mais cela va bien plus loin que ça.

Le libellé de la mission de Microsoft est "Un ordinateur sur chaque bureau" - avec, pour sous-entendu, que ces ordinateurs doivent tourner sous Windows. Microsoft et Apple vendent tous les deux des systèmes d'exploitation, et tous les deux font l'impossible pour s'assurer que leurs produits soient utilisés par le plus grand nombre de personnes: ce sont des entreprises, et elles doivent faire de l'argent, c'est leur but.

... Et il y a le Logiciel Libre, ce qui, aujourd'hui encore, est presque entièrement non-commercial.

Avant que vous ne vous précipitiez vers votre client email pour me parler de RedHat, de Suse, de Linspire et tout: Oui, je sais qu'ils "vendent" Linux. Je sais qu'ils aimeraient tous que Linux soit adopté universellement, et particulièrement leur propre distribution. Mais il ne faut pas confondre les fournisseurs avec les fabricants. Le noyau de Linux n'a pas été créé par une entreprise, et n'est pas maintenu par des personnes dans le but de faire un bénéfice grâce à lui. Idem, les outils GNU n'ont pas été créés par une entreprise, et ne sont pas maintenus par des personnes pour faire un bénéfice grâce à eux. Le système du fenêtrage X11... Eh bien, la branche la plus populaire est Xorg en ce moment, et la partie ".org" devrait vous indiquer ce que tout que vous devez savoir. Gnome, Fluxbox, Enlightenment, etc. sont tous sans but lucratif. Ceux qui vendent Linux, et cela souvent parfaitement justifié, sont en fait une minorité dans la nébuleuse du logiciel libre.

L'augmentation du nombre d'utilisateurs d'un logiciel commercial procure un avantage financier direct à l'entreprise qui le vend. Ce n'est pas le cas pour le LL: il n'y a aucun avantage direct pour aucun réalisateur de LL d'augmenter son nombre d'utilisateurs. Des avantages indirects, oui il y en a: fierté personnelle; un potentiel accru pour trouver des bogues; plus de chances d'attirer de nouveaux codeurs; probablement une chance d'obtenir une offre d'emploi; et ainsi de suite.

Mais Linus Torvalds ne fait pas d'argent à partir de l'utilisation accrue de Linux. Richard Stallman n'obtient pas d'argent de l'utilisation accrue de GNU. Tous les serveurs utilisant OpenBSD et OpenSSH ne mettent pas un centime dans les poches du projet OpenBSD. Et nous en venons au plus grand problème connu lorsqu'on on arrive sous Linux :

Personne ne nous oblige ni ne nous supplie d'y venir.

Les nouveaux utilisateurs viennent vers Linux après avoir passé leur vie sur un OS où les besoins de l'utilisateur sont primordiaux, et où les principes "facile à utiliser" et "orienté utilisateur" sont considérés de véritables Saints-Graal. Et ils se retrouvent soudainement devant un OS qui se base toujours sur les manuels d'utilisation "man", la ligne de commande, les fichiers de configuration à éditer à la main, et Google. Et quand ils se plaignent, on n'essaye pas de les calmer, ni de leur faire des promesses: ils se voient souvent se faire montrer la sortie.

C'est une exagération, bien sûr. Mais c'est la façon dont beaucoup d'utilisateurs potentiels de Linux ont perçu les choses lorsqu'ils ont essayé et raté leur conversion.

D'une certaine façon, le LL a une méthode de développement très égocentrique: les gens ne travaillent que ce sur quoi ils veulent travailler, quand ça leur plaît. Beaucoup ne voient aucun intérêt à rendre Linux plus attractif pour les utilisateurs: le logiciel fait déjà ce qu'ils lui demandent, qu'en ont-ils à faire s'il ne marche pas chez les autres?

Le LL a beaucoup de points communs avec Internet lui-même: vous ne payez pas le rédacteur d'une page Internet/le logiciel pour télécharger et lire/l'installer.

Une super connexion haut débit/une interface agréable n'intéresse pas beaucoup quelqu'un qui a déjà le haut débit/sait utiliser le logiciel.

Les bloggeurs/développeurs n'ont pas besoin de plein de lecteurs/utilisateurs pour justifier leur prose/code. Il y a beaucoup de gens qui tirent plein d'argent de cette activité, mais ce n'est pas par la méthode traditionnelle du "je possède ça et tu dois me payer si tu veux en profiter" qui fait que la plupart de ces entreprises sont aimées; c'est par le e-commerce/le support technique.

Linux ne se préoccupe pas des parts de marché. Linux n'a pas de clients. Linux n'a pas d'actionnaires, ou une quelconque responsabilité. Linux n'a pas été créé pour faire de l'argent. Linux n'a pas pour but de devenir le Système d'Exploitation le plus populaire et le plus répandu au monde.

Toute la communauté Linux veut créer un système très bon et plein de fonctionnalités, tout en étant libre et gratuit. Si le résultat est que Linux devienne un système très populaire, alors c'est une très bonne chose. Si le résultat est qu'il se créé l'interface la plus intuitive et la plus amicale jamais créée, alors c'est une très bonne chose. Si le résultat est que Linux devienne la base pour des industries de plusieurs milliards d'euros, alors c'est une très bonne chose.

C'est très bien, mais ce ne sont pas les buts principaux. Le but principal, c'est de faire le meilleur SE que la communauté puisse faire. Pas pour les autres: pour soi. Les plaintes si récurrentes du type "Linux ne sera pas prêt pour le bureau tant qu'il ne fera pas ceci ou cela" sont tout simplement hors de propos: la communauté linuxienne essaye d'être la meilleure dans le monde du bureau. Ils n'en ont réellement rien à faire que vous en fassiez votre bureau, tant qu'il reste assez bien pour rester chez eux. Les grands parleurs qui crachent sur Microsoft, les pro-Linux zélés et autres trolleurs sont bruyants, mais ils restent une minorité.

C'est ce que la communauté linuxienne veut: un SE qui puisse être installé par quiconque le veuille. Donc si vous pensez à passer à Linux, demandez vous d'abord ce que vous voulez vous-même.

Si vous voulez un système qui ne fasse pas le chauffeur, mais vous donne les clefs et vous mette dans le siège conducteur, et attende vos ordres: Installez Linux. Vous devrez passer du temps pour apprendre à vous en servir, mais une fois que vous l'aurez fait, vous aurez un SE à qui vous pourrez demander de se mettre debout pour le su-sucre et danser comme un caniche.

Si vous voulez juste un Windows sans malwares [10] et problèmes de sécurité, alors renseignez-vous sur des consignes de sécurité; installez un bon Firewall anti-intrusion, un anti-malware, un anti-virus; remplacez Internet Explorer par un navigateur Internet plus sûr; et faites vos mise-à-jour. Il existe des gens (moi compris [NdT: Traducteur exclu]) qui ont utilisé Windows de la 3.1 à XP sans être infecté par aucun virus: vous pouvez le faire vous aussi. Ne prenez pas Linux: il ne fera pas ce que vous voulez de lui.

Si vous voulez vraiment la sécurité et la performance d'un système basé sur Unix mais orienté client/commercial: Achetez un Mac. OSX est correct. Mais ne prenez pas Linux: il ne fera pas ce que vous voulez de lui.

La question n'est pas seulement "Pourquoi voudrais-je Linux?". C'est aussi: "Pourquoi Linux voudrait-il de moi?"

NOTES:

[1] NdT : Aujourd'hui il y a IE7, qui n'est qu'une mise à niveau par rapport à la concurrence. Comme quoi, ils n'ont pas tout compris chez MS.

[2] NdT : Cela s'applique au passage de XP à Vista, par ailleurs.

[3] Un hackeur est une personne qui cherche les bugs ou les améliorations à faire et les résout, rien à voir avec un crackeur, qui lui est nuisible

[4] NdT : Comme Ubuntu par exemple...

[5] En informatique, la compilation est le travail réalisé par un compilateur qui consiste à transformer un code source lisible par un humain en un fichier binaire exécutable par une machine.

[6] NdT : Oui, enfin, en Anglais...

[7] NdT : Bien sûr, plusieurs suites bureautiques libres suivent ce concept, mais il faut le voir dans la globalité.

[8] cdparanoia extrait des pistes audio des lecteurs CDROM reconnaissant le format CDDA. Les données peuvent être enregistrées dans un fichier ou envoyées sur la sortie standard, aux formats WAV, AIFF, AIFF-C ou en données brutes. La plupart des lecteurs ATAPI, SCSI et plusieurs lecteurs CDROM propriétaires sont gérés ; cdparanoia est capable de déterminer si le lecteur cible reconnaît CDDA. En plus de la simple lecture, cdparanoia permet une vérification des données très robuste, la synchronisation, la gestion des erreurs et la possibilité de réparer les erreurs dues aux éraflures. Site Web officiel de CDParanoia.

[9] Ripper est un anglicisme désignant le fait de décoder les informations contenues sur un support tel qu'un disque compact ou un DVD et de les encoder sur un ordinateur.

[10] Logiciels ou programmes malveillants : virus, troyens, espions, mauvaises macros, etc.

Navigation

A propos de cet article

  • Texte original sur le site de l'auteur
  • Traduction par Agal à cette adresse.
  • Modifications par C. Masutti

    Note :

    Les analogies utilisées par l'auteur peuvent parfois prêter à sourire, mais le but pédagogique poursuivi ici n'en est pas moins atteint, en dépit de quelques inexactitudes (le texte lui-même ne date pas d'hier).

    La licence sous laquelle ce texte est diffusé: CC-BY-NC-SA