Définition trouvée dans Wikipedia version française : "Un logiciel libre est un logiciel dont l'utilisation, l'étude, la modification et la duplication en vue de sa diffusion sont permises, techniquement et légalement. Ceci afin de garantir certaines libertés induites, dont le contrôle du programme par l'utilisateur et la possibilité de partage entre individus." Voir aussi http:/www.gnu.org/philosophy/free-sw.fr.html et notamment le lien vers les termes prêtant à confusion.

Le but ici n'est pas de critiquer le logiciel libre, encore qu'on trouvera dans ce billet un ramassis d'observations parmi les plus piquantes jamais écrites sur le logiciel libre d'un point de vue souvent oublié, celui de l'utilisateur et celui de l'informaticien "proche des utilisateurs". Notre but est d'évoquer une dimension à notre avis insufisamment développée du logiciel libre, à savoir la création de nouveaux services aux utilisateurs. A preuve, on en proposera une réalisation urgentissime.

Par avance, pour légitimer notre démarche, rappelons que dès les débuts du mouvement du logiciel libre, l'idée de nouveaux services aux utilisateurs était présente, et qu'elle a produit des réalisations. Voir par exemple http://www.gnu.org/encyclopedia/free-encyclopedia.html à l'origine de Wikipedia.

En tant qu'utilisateur, je reconnais mon immense dette au logiciel libre. Pas seulement pour l'ivresse de l'évasion au grand air, au lieu de rester vautré sur les canapés moelleux des grandes fabriques. Clairement, je fais des économies financières considérables en utilisant une suite bureautique libre, un lecteur libre multimedia (y compris radios web, tnt, dvd tous formats évidemment), un anti virus libre, un système fondé sur GNU/Linux, et avec un navigateur libre j'évite probablement une partie de l'espionnage sur le Web, etc.

penguin_640.png C'est presque négligemment que je mentionne GNU/Linux, du fait que l'on trouve d'excellentes distributions conviviales faciles à installer et à utiliser. En passant, j'en profite pour un avertissement : ignorez les articles pour ou contre Linux, et spécialement ceux qui font croire ou laissent penser à la nécessité de passer en ligne de commande pour maîtriser un système GNU/linux; tout cela est dépassé depuis au moins 5 ans. Il n'existe plus, à l'encontre de GNU/linux pour l'utilisateur, qu'un seul argument "sérieux" : celui des jeux vidéo, et encore seulement dans la mesure où ils font appel aux toutes dernières cartes graphiques et aux drivers associés (voir http://winehq.org).

Et les distributions de GNU/Linux ne sont plus depuis longtemps des curiosités que l'on est invité à tester en parallèle d'autres systèmes, elles sont robustes et entretenues. J'utilise encore, parce que c'est mieux qu'une tablette pour ce que j'ai à faire, un netbook Eeepc 4G Asus de première génération, sur lequel j'ai installé dès l'origine un système XUbuntu 8.04 (avril 2008); je reçois encore (02/2013) des mises à jour de sécurité bien que cette version d'Ubuntu ne soit plus officiellement soutenue depuis longtemps (mais les versions remplaçantes sont trop encombrantes pour mon vieux netbook).

La réalité brute, c'est qu'actuellement le logiciel libre est partout et qu'il a tiré le progrès des dernières années dans de nombreux domaines, bien que d'une manière parfois souterraine pour l'utilisateur. Pour être objectif, cet effet d'entraînement n'a pas toujours été le résultat d'une supériorité technique ni d'un enthousiasme spontané. La menace de l'émergence d'une concurrence gratuite a pu motiver certains logiciels propriétaires à proposer des versions libres d'usage courant de leurs produits. En tous cas, les utilisateurs de réseaux sociaux et de tablettes doivent le savoir : leurs outils magiques n'existeraient probablement pas sans le logiciel libre.

Maintenant, on devrait s'interroger :

  • pourquoi est-ce que le mouvement militant du logiciel libre a si bien réussi ?
  • pourquoi cette réussite est-elle méconnue ?
  • quels sont les besoins de renouvellement pour que cette réussite puisse continuer ?

Je n'aborde ici que les deux derniers points, faute des connaissances nécessaires pour relater correctement l'histoire contemporaine - pour cela, je renvoie à Wikipedia et à R. Stallman.

Le logiciel libre reste méconnu du grand public parce qu'en pratique, l'utilisateur confond logiciel libre et logiciel gratuit. Le terme "free software" est d'ailleurs porteur d'ambiguité, puisque "free" signifie libre mais aussi gratuit. De plus, il existe des logiciels gratuits qui ne sont pas des logiciels libres et inversement les logiciel libres sont souvent distribués en version binaire gratuite directement installable sur les systèmes courants. Bien entendu, l'utilisateur peut faire la différence en lisant la licence d'utilisation jointe au logiciel ou celle qui s'affiche lors de son installation; sinon, il peut la lire sur le site Web du logiciel ou de la fondation qui l'a produit. Autrement, il n'existe, pour l'utilisateur final, aucune différence entre un logiciel libre et un logiciel gratuit.

Donc, une réponse correcte à la question ci-dessus posée à propos de la méconnaissance du logiciel libre serait :

  • l'utilisateur peut savoir qu'il utilise un logiciel libre,
  • mais c'est à travers un texte à caractère juridique, plutôt répulsif ou difficile à interpréter,
  • et de toute façon, cela n'a aucune conséquence pratique immédiate pour cet utilisateur.

Clairement, il manque quelque chose comme un logo témoin de l'adhésion à la philosophie du mouvement du logiciel libre, un signe de "liberté égalité fraternité", et pas seulement de conformité avec un type de licence. Pourquoi pas une signature palmée ou une trace de pas de manchot ? A l'opposé, les sites Web de fondations de logiciels libres qui affichent leur liste de soutien par des sociétés à gros bénéfices flouteraient plutôt l'image du logiciel libre, au lieu qu'une présentation légèrement différente pourrait la renforcer.

Bref, les informaticiens ne sont pas des commmunicants, et dans un monde sans pitié, ils se font rouler.

Concernant les besoins de renouvellement du mouvement du logiciel libre, en tant qu'informaticien "proche des utilisateurs", les déficits à combler me semblent évidents. Autant j'apprécie la puissance des outils libres destinés au développement ou à l'environnement d'exécution des logiciels d'application, autant je m'interroge sur le dynamisme créateur de ces outils, qui me semble pris dans une spirale de répétition plutôt que vers l'innovation.

En résumé :

  • je suis las de refaire l'apprentissage de chaque nouvelle branche des logiciels piliers libres PHP, Python, Apache, etc tous les 18 mois environ (je ne parle pas de versions successives, mais bien de familles de versions, chacune avec ses propres règles de paramétrage et avec ses propres exigences de compatibilité avec les autres piliers libres, et plus subtilement encore avec le système hôte, à découvrir dans des contributions éparpillées à l'intérieur de forums techniques - et concernant les bogues, en particulier les bogues de régression, c'est encore pire si c'est possible...)
  • je suis effaré de lire les annonces de publication de logiclels de plateformes collaboratives dont les fonctions sont reproduites à l'identique depuis des années et nécessitent un paramétrage très professionnel pour fonctionner tant bien que mal
  • alors que des réseaux sociaux, qui n'ont rien inventé techniquement, pèsent des milliards de dollars et passent pour des bienfaiteurs de l'humanité.

MM. et dames du logiciel libre, vous tournez en rond, on vous tond la laine sur le dos, et en plus, vous avez mieux à faire !

penguin_whitix.png Par exemple, il serait urgent de créer un ensemble de logiciels permettant à l'utilisateur "ordinaire" de créer son propre site Web d'interaction sociale, localement chez lui ou proche de chez lui, en conformité avec les principes d'architecture décentralisée du Web, afin que l'utilisateur conserve la maîtrise physique de ses informations personnelles, de la nature et du contenu de ses interactions. Autrement dit, si quelqu'un ou quelque chose veut de quelque manière accéder à ces informations personnelles, historiques et natures d'interactions, contenus échangés, etc. l'autorisation explicite du propriétaire sera nécessaire et selon les conditions d'usage que ce proprétaire aura imposées.

Non, les logiciels libres existants ne répondent pas, en l'état, à ce besoin et même en assemblant plusieurs logiciels existants, on sera loin du compte. Car il ne s'agit pas de fabriquer un milllième générateur de site web ou de plate forme collaborative vaguement spécialisée. Il s'agit de redonner à l'utilisateur sa place sur le Web, comme personne humaine. En revanche, il n'est nul besoin de rechercher une performance technique permettant un nombre élevé de connexions simultanées, il est au contraire préférable d'instaurer une forme de rationnement maîtrisé au travers d'automatismes d'administration bien pensés en parallèle avec la conception.

Tentons d'ébaucher ce que doit pouvoir faire l'utilisateur ordinaire d'un tel logiciel :

  • créer, tenir à jour son site Web, sur sa machine pour les mises au point du site), le publier automatiquement en parallèle sur le Web dans son espace personnel alloué par son fournisseur d'accès
  • distinguer explicitement, dans son site Web, les éléments rendus visibles aux moteurs de recherche (les autres ne l'étant pas, par défaut)
  • entretenir un profil public de ses centres d'intérêt et de sa propre présentation personnelle
  • pouvoir temporairement mettre son site Web hors ligne et annoncer une date/heure UTC de remise en ligne; éventuellement programmer un calendrier de mise hors ligne / remises en ligne
  • trouver de nouveaux correspondants par l'intermédiaire des moteurs de recherche, moyennant par exemple une forme de préfixage automatique spécifique à ce type de site des thèmes d'intérêt déclarés dans le profil public
  • dialoguer avec de nouveaux correspondants potentiels, leur donner accès éventuellement indivuduellement à des parties privées du site
  • définir des types de correspondants afin de dire, dans son site Web, quels éléments seront visibles de quels types de correspondants
  • adopter des correspondants, les affecter à un type défini de correspondants (sans que cela soit obligatoire, le typage n'étant qu'une facilité en vue de la définition des interactions)
  • de sa propre initiative ou sur proposition périodique programmée, traiter les demandes de contact, commentaires et messages reçus
  • de sa propre initiative ou sur proposition périodique programmée, traiter les abonnements informatifs requis par les correspondants adoptés (informations d'évolution du site)
  • tenir une (petite, simple) conférence à distance avec des correspondants individuellement choisis parmi les correspondants répertoriés
  • créer des zones temporaires de mise à disposition de photos, textes, vidéos à l'intention de correspondants individuels, éventuellement alimentées à partir d'appareils portables
  • créer des forums-chats temporaires de correspondants individuels en interaction textuelle asynchrone (tout message d'un correspondant apparaît chez les autres en temps quasi réel mais les correspondants ne sont pas forcément en ligne simultanément)
  • etc,

Vous voyez l'idée, au-delà de cette énumération très perfectible ? Pensez aux besoins d'interactions, via des sites web personnels décentralisés, entre les membres d'une famille éclatée sur plusieurs continents dont certains voyagent, avec en parallèle des interactions avec des collègues de travail sur des affaires multinationales (pas trop confidentielles) et en parallèle des interactions avec des correspondants divers sur des thèmes d'intérêt, par exemple le bricolage en plomberie. L'ensemble logiciel doit permettre à un utilisateur ordinaire de tenir conjointement ces trois genres d'interactions d'une manière simple et transparente, avec une administration conviviale aussi automatisée que possible. J'insiste sur deux points. Premier point : du point de vue de l'utilisateur, l'identité des correspondants n'est certainement pas définie de la même manière dans les trois genres d'interactions; ce n'est pas un détail à traiter seulement au niveau des affichages ou de l'ergonomie des interactions. Deuxième point : le souci de la facilité d'emploi par un utilisateur ordinaire doit concerner l'administration du site Web autant que les autres fonctions; cette administration doit donc être conçue en parallèle avec les autres fonctions et pouvoir influer sur la conception de ces autres fonctions. Il est de loin préférable de fabriquer un logiciel simple en réalisation rapide dans les trois genres d'interactions plutôt que de multiplier des fonctionnalités génériques au risque de mal les intégrer à l'utilisation de l'ensemble. Une autre suggestion : commencer par une réalisation qui servirait de démonstration de notoriété, par exemple un mini serveur administrateur de données personnelles, destiné aux smartphones ?

"Liberté égalité fraternité" des utilisateurs du Web, c'est encore possible ! Mais il est plus que temps pour la réalisation de la conception originelle du Web et le support d'une forme d'intelligence répartie, au lieu de la multiplication des services centralisés et des abus manipulatoires en arrière plan qui en découlent fatalement (il n'est nul besoin d'imaginer une théorie du complot pour s'en rendre compte, il s'agit d'une conséquence mécanique).

Ah oui, n'oublions pas : comment va-t-on financer le développement, la maintenance, les évolutions, etc ? Quelques idées : collecte(s) publique(s) de fonds, abonnement payant (modeste) des utilisateurs à un service d'échange d'expérience et discussion des évolutions à réaliser, intéressement d'organismes internationaux d'échanges culturels, intéressement des agences gouvernementales en charge de la préservation des données privées, de la protection de l'enfance, etc. Il sera très instructif de voir qui sera contre. Il y aura certainement des surprises dans les deux sens, pour et contre ce projet, pour sous condition inacceptable et contre pour motifs à courte portée, notamment du fait que l'équilibre actuel entre les puissances du Web, l'écoulement des flux de trafic et la répartition des bénéfices ne satisfont pas tous les acteurs.