12 nov. 2008

Source Ouverte

Bien que l'actualité médiatique laisse l'OpenSource de côté en ce moment, la communauté continue de travailler... Ainsi, de nombreux portable-pc (les tous petits PC de type EEE-PC ou eCafé) sont désormais proposés avec Linux au lieu de Windows.

Libre ne veut pas dire Gratuit

Il est important de souligner que le logiciel libre n'est pas forcément gratuit... Libre signifie avant tout 'code-source accessible', en d'autres termes, il n'y a pas de verrou sur le capot pour atteindre le moteur. Chacun est libre d'aller bidouiller le code générant le logiciel, même s'il n'y a, a priori, pas de raison de ne pas rémunérer le travail déjà effectué en fournissant la version de base.
Le gros intérêt de l'OpenSource est donc de fournir des outils infiniment flexibles, puisque chacun est libre d'aller rajouter les fonctionnalités qui lui paraissent utiles. C'est précisément pour cela qu'Excel, le tableur du pack Office de Microsoft (qui n'est par ailleurs pas OpenSource, il s'agit juste d'un exemple...), est si prisé dans les banques : non seulement il fait tout, mais ce qu'il ne fait pas, un peu de code suffit à le lui faire faire en utilisant Visual Basic for Application (VBA) fourni avec et déjà totalement intégré. C'est là l'un des grands atouts de l'OpenSource, mais ce n'est pas le seul.
En effet, contrairement au VBA qui est juste une 'couche supplémentaire' qui permet de rajouter les fonctions que désire l'utilisateur, un code OpenSource permet d'accéder directement au cœur du programme : tout est accessible, rien n'est caché. La transparence totale.

Et ma grand mère dans tout ça ?

On peut néanmoins se demander quel est l'intérêt pour un utilisateur final, qui ne connait rien à la programmation et désire juste avoir deux gros boutons qui lui permettraient de faire ce qu'il veut faire, d'avoir accès à 10 000 lignes de C++ cochon auxquelles il ne comprend rien. C'est là qu'intervient le concept de 'Communauté'. Sans vouloir tomber dans le prêt-à-parler médiatique, friand de ce genre de termes, la communauté des utilisateur représente un ensemble composé :


  • Des Gurus, programmeurs confirmés, dont les créateurs du logiciel.
  • Des connaisseurs, capables de modifier des parties du code, sans forcément comprendre les méandres des accès systèmes ou de l'architecture 'globale' du projet.
  • Des utilisateurs.

En remontant cette liste, les utilisateurs peuvent demander à des connaisseurs d'adapter leur programme, voire remonter jusqu'aux Gurus pour avoir une modification en profondeur plus efficace/pratique/jolie pour les prochaines versions. Bien sûr, cela nécessite d'avoir au moins un connaisseur dans son entourage proche. Mais pour une entreprise, par exemple, une seule petite équipe de programmeurs chevronnés, comme il y en a tant, peut alors adapter des programmes stables et mondialement distribués pour parfaitement coller aux usages qu'en font les employés. Et une modification pertinente peut-être remontée jusqu'aux versions distribuées. En un mot, chaque utilisateur est capable de faire profiter tous les autres de ses bonnes idées.

Mais pourquoi n'y a-t-on pas pensé avant ?

Naturellement, l'OpenSource n'est pas la panacée. Le gros problème vient de la rémunération des auteurs : en effet, la plupart des grands projets OpenSource reposent entre autre sur l'implication majeure de gens qui programment pour leur plaisir, et il serait illusoire de penser que toute l'industrie du logicielle puisse un jour s'appuyer entièrement sur du bénévolat. Néanmoins, le parallèle entre le 'commercial' prêt à l'usage et l'OpenSource novateur a permis des choses comme des spectaculaires innovations dans l'Internet Explorer de Microsoft, majoritairement inspirées du Firefox de la fondation Mozilla (OpenSource).

Tous les débats actuels sur l'économie numérique et la propriété intellectuelle, souvent axés autour d'une méconnaissance des sujets parfois grotesque d'une majorité des politiciens et journalistes qui en parlent feraient bien d'inclure le fonctionnement 'macro-économique' de l'OpenSource.
Aujourd'hui, le marché du logiciel n'est plus comparable à celui des voitures ou des frigos, mais est clairement en train de devenir un marché à deux couches : d'une part des produits de base, de plus en plus OpenSource, d'autre part des services d'adaptation et de déploiement. Et ce ne sont pas les SSII qui prospèrent en ce moment qui me contrediront.