Si vous avez tiré bénéfice de l'utilisation de Linux ou d'autres logiciels librement produits, il est absolument juste de s'attendre à ce que vous retourniez votre juste part pour aider à l'amélioration des versions futures. On peut contribuer de diverses manières, et en particulier par :
Je pense qu'il est juste de s'attendre à ce que les gens contribuent leur juste part d'une certaine manière dans chacun de ces domaines, et en particulier, dans le domaine financier. The United Way (la manière unifiée, un programme de charité qui aux États-Unis d'Amérique et au Canada, et peut-être ailleurs, joue le rôle de comptoir général de virement pour les dons) demande aux gens de contribuer ce qu'ils estiment être une ``juste part'' dans le but de renforcer les efforts de la communauté. Ils suggèrent typiquement de contribuer à hauteur de un pour cent de ses revenus. En ce qui concerne Linux, je suggère au lecteur d'utiliser l'échelle suivante :
Combien auriez-vous payé pour une version commerciale du logiciel ?
Je ferai valoir que cent dollars par an est une ``juste part'' pour un utilisateur de Linux à la maison. Certaines personnes (en particulier des étudiants) n'en ont vraiment pas les moyens, ce qui est normal. J'insiste néanmoins sur la nécessité d'une petite contribution financière, même modeste. Les contributions sous la forme de services sont aussi de grande valeur et très nécessaires ; c'est la combinaison des différents types de contributions qui renforce la communauté.
Si l'aimable lecteur est débiteur et n'a rien rendu, je lui suggère de prendre en considération les solutions que je présente dans la section suivante.
Forts des nombreux millions d'utilisateurs de Linux, il serait entièrement plausible que des utilisateurs désirant faire le témoignage de leur gratitude contribuent un peu.
Ces petits ruisseaux peuvent se combiner en des centaines de millions de dollars pour le développement d'outils améliorés.
Cela étant dit, obtenir des fonds pour les développeurs et autres vecteurs de valeur peut dans la réalité représenter quelque chose qui rappelle la vieille histoire pour enfants Belling the Cat.
(NdT Belling the Cat (Attacher une clochette au cou du chat) est une vieille histoire pour enfants (anglo-saxons) qu'on peut souvent appliquer aux opinions :
Il était une fois une famille de souris qui vivaient dans une maison. Cette maison abritait aussi un chat. Ce chat aimait chasser les souris, s'abattre sur elles et les dévorer. Un jour, une des souris eut une idée.
« En fait, le problème, c'est que le chat est vraiment trop silencieux. Et si on lui accrochait une clochette autour du cou ? Alors nous pourrions l'entendre s'approcher, et nous enfuir tranquillement ? »
Toutes les autres souris étaient d'accord, bien sûr, et trouvaient l'idée très bonne.
Malheureusement, cette idée avait un petit inconvénient. Qui allait accrocher la clochette sur le chat ? Les souris ne trouvèrent pas la réponse à cette question.)
Au moment où j'écris ces lignes il n'existe aucune ``fondation pour le logiciel Linux'' vers laquelle nous puissions envoyer nos contributions. Et je ne pense pas que les organisations qui existent actuellement soient prêtes à gérer des millions de dollars.
Il existe, néanmoins, un certain nombre de possibilités que les utilisateurs de Linux peuvent suivre pour faire des contributions financières dans le but d'améliorer Linux, et je vous incite vivement à vous y intéresser.
Disposer d'une unique organisation protectrice et fédératrice (``fondation pour le développement de Linux'') peut avoir de la valeur en tant que porte-drapeau, mais ce n'est pas nécessaire. Il est nécessaire qu'il y ait une possibilité que les contributions financières des individus soient déductibles des impôts, afin d'en maximiser la teneur. Je peux faire des dons plus importants si on les déduit de ma déclaration que si ce n'est pas le cas.
J'ai contribué à certaines des organisations qui suivent, et pas à d'autres. La présence dans la liste qui suit d'une organisation ne signifie pas que je suis d'accord avec tous les buts poursuivis par cette société, mais signifie uniquement qu'elles ont un rapport raisonnable avec Linux et le logiciel libre et qu'elles me semblent valoir la peine de les prendre en compte.
Vous remarquerez que beaucoup de ces organisations sont tout aussi capables d'utiliser des contributions sous la forme de matériel informatique et de services.
Cela n'est pas vraiment un moyen d'améliorer le ``développement du logiciel libre sous Linux'' ; c'est malgré tout une bonne idée. Les efforts de Linus pour Linux méritent récompense.
Vous remarquerez que les Linux System Laboratories (laboratoires du système Linux) ont mis au point un système dans lequel vous pouvez faire un cadeau de 5 dollars à Linus quand vous achetez un CD à deux dollars.
Je suis partisan de faire cela indépendamment d'éventuels travaux supplémentaires de Linux ; ses ``contributions éternelles'' ont beaucoup plus de valeur a mes yeux que toute somme nominale que je lui enverrai. Si cent mille personnes lui envoyaient chacune vingt dollars, ne serait-ce pas excellent ? Ce serait certainement mérité.
On peut étendre ce concept. Si quelqu'un programme un logiciel libre qui vous est bien utile, ce serait une très bonne idée de rédiger en son nom un chèque de vingt dollars, de trouver son adresse, et de le lui envoyer sans qu'il n'ait rien demandé, accompagné d'un gentil mot le remerciant pour ses efforts. Vous n'obtiendrez peut-être rien en retour, comme une déduction de la somme donnée des impôts ou quoi que ce soit, mais ça l'encouragera certainement à continuer. Et c'est un comportement bien meilleur de la part de l'utilisateur que la complainte habituelle Quand la version 4.2 va-t-elle sortir ? Et quand incorporerez-vous enfin dans votre programme le petit machin que j'ai réclamé ?
Si vous utilisez X, il est absolument raisonnable de leur envoyer un don (déductible de vos impôts, tout du moins dans certaines juridictions) pour les aider à continuer leur travail.
Ils ont leur propre distribution de Linux ; ceux qui ``adorent'' Red Hat ne seront peut-être pas intéressés par une contribution au ``Linux de Debian'', mais ils s'occupent également de promouvoir l'ouverture des standards de matériels (au contraire de choses comme I2O).
Si Linux International obtenait le statut d'association reconnue d'intérêt public pour le programme de sponsorisation de son projet, cela pourrait jouer le rôle de catalyseur pour d'autres projets Linux.
Ces projets recherchent plusieurs types de contributions volontaires, et n'ont pas forcément besoin de contributions financières.
Des groupes locaux, évidemment, vont avoir à coeur de mettre en oeuvre des activités qui bénéficieront à la communauté locale ; ils peuvent aussi s'impliquer dans des activités d'envergure internationale.
Mon groupe d'utilisateurs local, NTLug (North Texas Linux Users Group) (groupe d'utilisateurs de Linux du Texas du Nord) a recherché la reconnaissance d'intérêt public. Cela permet de déduire les sommes versées des impôts, au delà des frontières, ce qui n'est pas mal.
Mark Aitchison suggère aux groupes locaux de faire ce qui suit, qui lui semble intéressant :
Préparer des scripts pour faciliter l'accès à un FSI (fournisseur de services Internet) local - en commençant par le plus gentil ou le moins cher, et en laissant la pression de la concurrence faire se décider les autres à aider le groupe d'utilisateurs s'ils ont des problèmes avec leur FSI.
Une autre bonne idée serait d' :
Aider les revendeurs de matériel locaux à proposer des solutions matérielles sous Linux clé en main. Par exemple, une machine personnelle pouvant s'amorcer sous deux systèmes d'exploitation, un routeur et un proxy pour le Web sous Linux pour une organisation locale.
Mon groupe d'utilisateurs local, NTLug, a un ``projet d'installation de Linux'' mensuel à un gala d'informatique de la région, et on entend des rumeurs concernant la soumission de spécifications de système à un constructeur de PC local pour encourager la création d'un nouveau ``prestataire de services'' (VAR en anglais, littéralement détaillant de valeur ajoutée). On pense publier au sein du groupe la liste des revendeurs locaux qui proposent des produits Linux.
J'ai entendu parler d'efforts ciblés sur des organisations gouvernementales à Washington pour tenter des installations de Linux en masse pour les systèmes de bureaux de ces organisations. Quatre personnes devraient suffire pour installer 20 machines par heure dans une pièce disposant d'un réseau local (LAN) improvisé, et en réclamant vingt dollars par système installé, ils gagneraient tous ensemble 400 dollars de l'heure, ce qui reste de loin bien moins cher que des installations de MS-Windows, et génère malgré tout d'excellents profits.
De par leur aptitude à regrouper des personnes physiques géographiquement, les groupes d'utilisateurs représentent un lien privilégié où d'autres types d'``organisations'' peuvent se monter. Ainsi :
Ce n'est pas une organisation propre à Linus ; ils s'occupent d'activités générales de promotion touchant de près ou de loin le génie logiciel.
Ici, l'implication est plus proche de l'implication qu'on peut avoir dans un groupe de pression politique régional.
Bien sûr, tout cela est un peu biaisé car vu du bout américain (des États-Unis) de la lorgnette ; tout cela a malgré tout des retombées internationales, et la communauté internationale en général ne suit pas systématiquement la trace des États-Unis dans tout ce qui touche à l'informatique.
Le TeX Users Group (TUG) (groupe d'utilisateurs de TeX) travaille actuellement sur la version de la ``prochaine génération'' du système de mise en forme de documents LaTeX, sous le nom de LaTeX3. TeX et LaTeX fonctionnent particulièrement bien sous Linux.
On peut envoyer ses contributions à ce projet à l'adresse suivante :
TeX Users Group
P.O. Box 1239
Three Rivers, CA 93271-1239
États-Unis d'Amérique
ou, pour l'Europe,
UK TUG
1 Eymore Close
Selly Oaks
Burmingham B29 4LB
Royaume-Uni
Il vaut mieux mettre un petit mot précisant que vous souhaitez que cet argent aille au projet LaTeX3.
Un projet de la FSF qui présente un certain intérêt :
Display Ghostscript Project (projet Display Ghostscript)
La fondation pour le logiciel libre et la communauté du réseau cherchent à réunir 14 175 dollars américains pour financer la mise au point de Display Ghostscript, une extension de Ghostscript qui traitera du Display Postscript. Jusqu'à présent, nous avons réuni 8050 dollars, soit un peu plus de la moitié de ce qui est nécessaire.
Si vous souhaitez contribuer, envoyez un don à la fondation pour le logiciel libre et précisez qu'il est destiné à Display Ghostscript.
Remarquez que DGS sera la ``plate-forme de référence'' sur laquelle GNUstep sera implanté.
Leur but est de rendre librement disponibles sous forme électronique le texte des livres qui ne sont plus soumis aux droits d'auteur. La plus grosse partie de l'argent correspondant au prix du dernier concours de cassage de RC5 a été donné à cette cause.
C'est le cas de la fondation tchèque pour le logiciel libre.
Cela nous amène à parler de la possibilité de déduire ses dons des impôts ainsi que de la facilité d'envoyer ses contributions. Elles dépendent du pays dans lequel vous vous trouvez. Rien que pour cette raison, il est intéressant de disposer de nombreuses organisations.
Il existe tout un tas d'autres projets de logiciel libre sur lesquels il est probablement intéressant de se renseigner. Certains sont en relation avec Linux, mais pas tous.
Il est évident que le code ne ``s'écrit pas tout seul''. Il faut que quelqu'un s'en charge.
L'article d'Eric Raymond, The Cathedral and the Bazaar,
NdT traduit en français sous le nom La cathédrale et le bazardonne une description de l'``approche bazar de Linux'' pour le génie logiciel, si souvent citée.
On peut la caractériser par trois principes :
Typiquement, on distribue une nouvelle version du noyau Linux toutes les semaines, qu'il soit prêt ou non. On y a accepté des corrections de la part de milliers de gens. L'effroyable nombre de participants à ce projet est devenu sa grande force.
Alors que le nombre d'utilisateurs de Linux dans le monde augmente, on peut appliquer cette ``force intellectuelle'' à d'autres composantes du système, comme les bibliothèques, les utilitaires, les applications, et même la documentation. Pour chaque projet, on dispose potentiellement de millions de développeurs, d'une sorte ou d'une autre.
Que dix mille développeurs examinent le noyau est largement suffisant pour l'améliorer en continu, même si la plupart ne s'occupent que de petites portions du code, et pendant leur temps libre.
La coordination des efforts de millions de participants nécessite une approche réellement distribuée. ``Le bazar'' s'est révélé une puissante approche au développement de logiciel.
La chose la plus difficile, qu'on ne peut éviter, est de faire certains compromis pour ne pas scinder l'unité du travail.
Ça n'a aucune importance d'avoir raison si au final, le projet se disperse, et si le développement cesse.
Le cimetière des projets inachevés est rempli de conflits de personnes. C'est apparemment une des raisons pour lesquelles ``BSD Lite'' (BSD Léger) s'est scindé en trois projets. C'est clairement la raison pour laquelle on dispose de deux versions de l'éditeur de textes Emacs. C'est super clair qu'on trouve là l'explication de la prolifération d'interfaces graphiques pour l'utilisateur pour X. Il est raisonnable de penser que beaucoup de gens préfèrent écrire leur propre interface graphique plutôt qu'utiliser celle que quelqu'un d'autre a écrite.
Si les grands traits du projet sont raisonnablement compatibles, il sera moins difficile de le modifier que de partir de zéro, et vous profiterez des utilisateurs intéressés par l'ancien projet.
Ceci est en rapport direct avec la question de ``l'amour-propre'' : si vous ne souhaitez pas voir votre code se mélanger avec d'autres codes, alors les efforts seront dupliqués.
Prenez en ligne de compte, par exemple, comment les principes de The UNIX Philosophy (la philosophie Unix) s'appliquent à votre programme. Vous disposez peut-être d'idées irréprochables, et pouvez créer une application de courrier électronique parfaite, belle, monolithique, écrite en C++, qui fait tout ce que personne n'a jamais osé imaginer, et qui est bien plus rapide et plus propre que les autres systèmes de courrier électronique. Ne le faites pas, ou alors exportez au moins certaines interfaces puissantes pour que des programmes extérieurs puissent interagir avec votre programme et en prendre le contrôle.
Si EZ avait été écrit d'une manière qui rende possible aux autres programmes de communiquer avec lui, il serait probablement devenu le programme de référence de traitement de texte sous Linux.
Malheureusement, il se peut que l'année prochaine, Java 2000 ou tout autre langage ``multimédia'' à la mode pointe le bout de son nez, et fasse oublier aux gens votre client de courrier électronique : beau, mais inadaptable. Le programme de courrier électronique EXMH est construit sur le programme MH et permet de lier du code écrit en TCL (langage de commande d'outils), ce qui permettra de programmer des interfaces au nouveau langage ``Java 2000'', de nouveaux outils codant le protocole cryptographique ``PGP 6.0'', et à tout ce qui naîtra l'année prochaine. Il est donc certain qu'on utilisera encore EXMH en 2002. Il sera (probablement) plus lent et plus laid que des programmes de gestion du courrier électronique écrits plus récemment que lui, et qui utiliseront les derniers outils ``à la mode'', mais il sera encore là, alors que ces autres programmes disparaîtront dans le courant de l'année (2002) pour laisser la place à de nouvelles tendances de mode.
Je ne connais pas à coup sûr le meilleur système d'interface graphique. Voici une liste de ceux qui font beaucoup parler d'eux :
D'autres opinions que les miennes existent, ce qui est précisément pourquoi on n'aura probablement jamais une seule véritable interface graphique, et pourquoi tout le monde se fâche vite à ce propos. Ce qui nous ramène à la question de l'amour-propre.
J'ai peu à peu calmé mes critiques à l'égard de l'environnement graphique Berlin. Le consortium Berlin a d'une certaine manière ouvert son processus de spécifications, ce qui est bon. Ils se sont récemment réorganisés et beaucoup de choses qu'ils pensaient développer ont été intégrées dans l'infrastructure GGI sous-jacente.
La cathédrale et le bazar.
Je connais une demi-douzaine de projets de construction de systèmes de comptabilité et de finances. fondés sur Linux. Si certaines équipes s'entendaient, ce qui en porterait le nombre à, disons, 3, faisaient confiance à des ``extérieurs'' pour sous-traiter certaines choses, en suivant l'approche du ``bazar'', et profitaient ensuite de l'apport publicitaire, les fonctionnalités et la robustesse s'en trouveraient améliorées plus rapidement qu'elles ne le sont maintenant, et tout cela attirerait l'attention d'un plus grand nombre.
Par exemple, on travaille beaucoup, en ce moment, sur CBB, xacc, et WaterMark. C'est du gaspillage de ressources, puisque ces trois programmes doivent tous trois fournir des fonctionnalités essentiellement similaires à celles de Quicken.
Si vous n'êtes pas un ``développeur de logiciels'', il est raisonnable de contribuer à des efforts d'assistance technique pour Linux, généraux ou plus particuliers. Voici quelques idées :
Lisez le manifeste du projet de documentation de Linux pour obtenir plus de détails sur la forme correcte à donner à votre documentation pour être le plus utile possible.