\title{LizardTech : Pourquoi nous utilisons et supportons les logiciels libres}
\subtitle{Un manifeste informel mais sincère}
\author{par Matthew Fleagle et Michael P. Gerlek, LizardTech, traduit par Laurent Pierre}

\maketitle

\textit{Un des auteurs, Michael Gerlek, a été un membre votant depuis le début de l'OSGeo et a été très influent dans son succès. LizardTech est officiellement devenu un sponsor associé de l'OSGeo en 2006 et est un utilisateur actif des outils géospatiaux libres depuis longtemps. C'est avec cet objectif en tête qu'ils ont été invités à décrire leur façon d'utiliser les logiciels libres dans une perspective à la fois commerciale et communautaire -- Le rédacteur en chef}\\

Etant une petite société avec un marché de niche basé sur la force et l'ubiquité de sa technologie propriétaire -- le format d'image et la technologie MrSID largement utilisés -- LizardTech a des raisons de chérir la propriété privée. Le fait que nous possédons quelque chose que personne ne peut utiliser sans nous payer a pour le moins fait avancer nos affaires pendant des années. Néanmoins, beaucoup ne savent pas que non seulement nous supportons les efforts de développements du logiciel libre en général, mais que nous avons supporté l'OSGeo depuis sa naissance.

Pourquoi une petite entreprise propriétaire comme LizardTech utiliserait-elle et supporterait-elle le développement de logiciel libre ? Les avancées du logiciel libre et le développement d'une éthique du partage dans l'industrie du logiciel ne représentent-ils pas des menaces pour le modèle économique de LizardTech ? Nous pensons le contraire et cet article a pour but de démontrer pourquoi. Tout d'abord, nous examinerons quelques-uns des logiciels libres que nous utilisons ou avons utilisés dans le passé, ensuite nous dirons pourquoi, pour des petites entreprises comme la nôtre qui possèdent du code propriétaire, utiliser les produits développés par la communauté du libre mais aussi apporter un support matériel à ses travaux a un sens du point de vue stratgique.

\section{Comment et pourquoi LizardTech utilise le logiciel libre}
LizardTech utilise le logiciel libre depuis sa création en 1992. Un tour d'horizon informel de l'équipe de développement de LizardTech a révélé combien nous comptons sur les outils et les bibliothèques libres : nous avons été rapidement capables de produire une liste impressionnante de paquets, des plus connus (Firefox, Apache, Linux) aux plus géo-spécifiques (GDAL, PROJ4, OpenLayers). Beaucoup de ces bibliothèques sont utilisées dans nos logiciels commerciaux. En fait, comparés à la liste précédente, nous utilisons peu de bibliothèques propriétaires d'autres fournisseurs.

% Reduced table to three short lists
\begin{description}
	\item[Bibliothèques géospatiales :]  GDAL/OGR, GeoTIFF, GEOS, OSSIM, PROJ.4, MapServer, PostGIS, OpenLayers
	\item[Bibliothèques non géospatiales :]  Berkeley DB, CppUnit, Crypto++, libcurl, dlmalloc, efence, Expat gSOAP, libgif, libjpeg, libtiff, OpenSSL, libpng, libungif, xalanj, xercesc, xml4c, zlib, zthread, boost, littlecms
	\item[Autres outils et paquets :]  Apache, Tomcat, gcc, Linux, Perl, Python, Putty, Firefox, Cygwin, Wireshark, Emacs, gnuplot, siege, autoit
\end{description}

D'accord, vous vous dites que vous êtes impressionnés par le nombre de paquets de logiciels libres qui peuvent être utilisés dans la fabrication de logiciels géospatiaux, mais vous vous demandez s'il y a des avantages au-delà des économies évidentes de licences ? Pour répondre à cette question, nous allons non seulement énumérer les avantages, mais nous allons aussi donner quelques exemples. Tout d'abord les avantages :

\paragraph{Nous n'avons pas à réinventer la roue.}

LizardTech est un groupe de travail performant. Nous n'avons pas les ressources, en terme de personnel et de temps, pour créer tout à partir de rien, surtout pour des doublons. Si le travail a déjà été fait avec succès, le bon sens commercial invite à ne pas perdre du temps, de l'argent et de la sueur à ouvrir une nouvelle voie vers le sommet de la montagne. C'est une bonne stratégie même si vous décidez de payer pour le produit existant. Quand les entreprises de lancent, elles décident de déployer OpenOffice.Org ou d'acheter des licences de MS Word, elles n'inventent pas un nouveau traitement de texte juste parce qu'elles ont besoin d'échanger des documents de travail. 

\paragraph*{Nous pouvons nous concentrer sur notre coeur de métier.}
LizardTech manque d'expérience dans des domaines ou la communauté du libre excelle. Cet argument est similaire au premier, mais cela nous amène à mentionner que nous économisons de l'argent quand nos développeurs peuvent se concentrer sur ce qu'ils font de mieux.
Disperser nos forces dans des domaines dans lesquels nous ne sommes pas experts et dans lesquels nous n'avons pas besoin de l'être, quand les experts sont là à offrir leur compétence à coût faible ou nul, est irresponsable.

\paragraph{Nous pouvons jouer dans un domaine plus grand.}
Pouvoir accéder à la propriété intellectuelle au-delà de celle de nos développeurs signifie que nous pouvons équiper nos produits pour évoluer dans des domaines plus grands sans le surcoût de trouver et d'engager du personnel supplémentaire. Ce point fait de nouveau référence au premier avantage mais il met en lumière l'occasion d'élargir la base de nos clients et de vendre plus de produits à plus de clients.

\paragraph{Nous pouvons influencer le développement d'un code bien utilisé et bien testé.}

La communauté du logiciel libre n'est pas composée de 3 personnes dans un garage -- en tout cas plus maintenant. La communauté travaille dur sur les projets libres, testant le code, trouvant ses défauts, découvrant des bogues et fournissant des correctifs et des solutions alternatives dans une boucle robuste de tests et de retours d'expérience basée sur le volontariat. Le code évolue au rythme de son utilisation dans le monde réel, par le test et la maintenance, et non en fonction d'impératifs de calendriers marketing ou de ventes. Comme résultat, les projets libres sont parmi les plus robustes des produits jamais diffusés. 

\paragraph*{Nous aimons les avantages imprévus.}
Il n'est pas rare que des avantages apparaissent à travers l'utilisation de projets libres, certains dont nous ne soupçonnions même pas l'existence auparavant. Intrigué ? Lisez la suite ...

\section{Exemples du monde réel.}
LizardTech voulait introduire la reprojection dans son produit bien connu GeoExpress. Cela permettrait de toucher un nombre plus large de clients en permettant une meilleure adéquation des fonctionnalités de notre produit avec les besoins de nos clients. Mais alors que nous sommes des experts en imagerie, nous ne le sommes pas du tout en reprojection. Les systèmes de projection utilisent des mathématiques ardues. De plus, dans beaucoup d'applications, la vie des gens dépend de leur précision : ils présentent donc le terrible double défaut d'être critiques et facilement mal codés. Même si nous avions eu des personnes à mettre sur la reprojection, nous aurions plutôt évité de nous y aventurer.

Nous avions le choix entre 2 options. Nous aurions pu acheter un paquet commercial et propriétaire ou bien utiliser un paquet libre comme la bibliothèque de reprojection PROJ.4.

La deuxième option était de loin la meilleure, et pas seulement à cause du coût de licence inexistant. Que se serait-il passé si le produit commercial avait eu une bogue qui aurait affecté notre projet ? Et s'il n'avait fonctionné que sur un système 32 bits et que nous avions eu besoin de le faire fonctionner sur un système 64 bits ? Nous aurions dû remplir un rapport de bogue ou une demande d'évolution pour un support 64 bits et attendre 6 mois la version suivante, en payant durant tout ce temps une licence de maintenance. Et le support 64 bits aurait ou pas été mis dans la boîte au moment au nous aurions déballé le paquet.

Par contraste, avec PROJ.4 nous pouvions avoir notre bogue corrigé ou notre support 64 bits rapidement mis en oeuvre. C'est vrai qu'il n'y a pas d'entreprise derrière le paquet PROJ.4 mais nous avons trouvé (spécialement dans les gros projets) que cela est rarement un problème.
Inaffectée par des pressions de conseils d'administration, la priorité de la communauté libre est de trouver et de réparer les bogues dans son code et d'ajouter des fonctionnalités dans ses produits (en fait, nous satisfaisons fréquemment un client particulier en prenant un paquet libre et en le portant vers un compilateur tel que SunPro, sur lequel nous ne supportions pas ce paquet auparavent). S'il y avait quelque chose de vraiment mauvais dans du code libre, nous pourrions payer quelqu'un de la communauté pour le réparer et être encore gagnants en terme de coût et de temps.

Alors que PROJ.4 donne à notre produit une fonctionnalité très importante et visible, une autre sorte de produit libre supporte notre produit de manière invisible. Nous utilisons GDAL, une bibliothèque qui gère une multitude de formats d'images utilisés uniquement dans les SIG, pour être sûrs que notre produit gère ces formats. Plutôt que de fournir une fonctionnalité, GDAL nous donne accès au large écosystème des SIG. Plus d'une fois, il s'est trouvé que nous gérions un format qui était important pour nos clients, format dont nous ne nous serions pas souciés autrement -- les avantages inattendus dont nous parlions plus haut.


\section{Comment et pourquoi LizardTech supporte le développement du logiciel libre}
C'est vrai que cela ne serait pas fair-play de profiter des nombreux avantages évidents des logiciels libres tout en refusant de supporter le développement de ceux-ci et en continuant à faire payer nos propres produits. Mais la principale affirmation de LizardTech dans cet article n'est pas que notre utilisation et notre support du logiciel libre est moral (un autre papier, peut-être, dans un autre journal). Nous affirmons que c'est stratégique.

Il y a beaucoup de manières pour une organisation de supporter un développement de logiciel libre de façon matérielle, c'est à dire au-delà de la simple utilisation du logiciel libre. Cela inclut par exemple des dons monétaires et des actions de mécénat, d'adhésion et de volontariat, de retour d'informations, de correctifs de bogues, d'engager des développeurs pour travailler sur du code libre, comme nous avons fait pour le support du JPEG 12 bits et la participation à des conférences. LizardTech est active dans la communauté du logiciel libre de toutes les façons précédemment décrites, et cela fait souvent partie intégrante de notre travail habituel. Voici comment nous tirons profit du support du logiciel libre :

\paragraph*{Si le logiciel libre tombe, nous tombons avec lui.}
Nous rappelons qu'en tant qu'entreprise, LizardTech compte sur les produits libres pour créer et améliorer nos propres produits. Vu de cette simple perspective, il est sensé de nourrir les poules qui pondent les oeufs, surtout quand ce que vous payez est de l'ordre de grandeur de ... ahem... du grain pour poulets.


\paragraph*{Le retour sur investissement est élevé.}
Contribuer à hauteur, disons de 5 000 \$ par an pour supporter une organisation comme l'OSGeo, où cet argent sert à garder en vie des projets de logiciels libres, est faire preuve de bon sens quand vous comparez les possibilités qu'il existerait dans un monde sans logiciel libre.
Engager plusieurs developpeurs additionnels coûterait plusieurs fois le prix annuellement, et supporter le logiciel libre, qui nous fournit du code bien testé et vite réparé quand c'est nécessaire, est une bien meilleure utilisation des fonds que de payer une entreprise propriétaire pour un logiciel qui pourrait contenir plus de bogues et qui serait plus dur à faire réparer. Pour cela, comment sait-on si une bibliothèque ou un produit contient des bogues ? Feriez-vous plutôt confiance au message marketing biaisé issu des propriétaires du produit ou bien à l'expérience de première main des utilisateurs et des développeurs ? Le mécénat est dans cette optique comme une autre sorte de contrat de travail, différent et meilleur marché.

\paragraph*{Nous pouvons impulser des changements rapides et positifs dans les produits que nous avons besoin d'utiliser.}
Nous n'avons jamais eu besoin de faire pression ou de participer à des changements radicaux dans des paquets libres, mais si un changement substantiel devenait nécessaire il est certain que la communauté libre pourrait le faire beaucoup plus rapidement que pour un code propriétaire dont le calendrier de développement est soumis au bon vouloir de la direction.

\paragraph*{La participation à des conférences sur le logiciel libre est rentable.}

Ayant des budgets limités, pourquoi donc enverrions-nous plusieurs de nos développeurs à la conférence annuelle de l'OSGeo au lieu d'une des conférences des utilisateurs de logiciels propriétaires ? Parce que non seulement ils vont se frotter à toutes les nouvelles technologies qu'ils pourraient trouver dans les autres conférences, mais qu'en plus il vont pouvoir acquérir des connaissances qu'ils vont ramener à la maison et utiliser gratuitement. De plus, les informations et les connaissances qu'ils obtiendront seront déconnectées de toute stratégie d'entreprise : personne n'essaiera de leur vendre une solution miracle ou de les bombarder avec des informations d'entreprises biaisées. Enfin, les développeurs qu'ils rencontreront seront plus disponibles pour poursuivre des conversations issues des présentations. Une façon de supporter le développement du logiciel libre est aussi de donner des locaux, sodas et sandwiches à un groupe local d'utilisateurs. LizardTech héberge tous les mois une petite réunion OSGeo dans nos bureaux de Seattle.

\paragraph*{Le logiciel libre fonctionne bien avec les standards.}
Nous avons aussi lourdement investi en supportant les standards ISO et ceux de l'Open Geospatial Consortium (OGC), qui sont 'ouverts' d'une façon différente de celle du logiciel libre. Nous avons trouvé que les standards ouverts et les processus de développement du logiciel libre sont assez similaires pour que des synergies naissent entre eux.

\paragraph*{C'est la chose à faire.}
Nous disions plus haut que ce n'était pas une question de moralité, mais si la science n'a pas encore prouvé que le monde nous sourit quand nous-mêmes sourions, c'est seulement une question de temps. Cela ne peut faire qu'avancer les intérêts d'une entreprise du 21ème siècle d'adopter envers ses clients, concurrents et partenaires une attitude qui reflète les valeurs de coopération, de collaboration, de communauté, de confiance et d'humilité contenues dans le développement du logiciel libre.

\address{Matthew Fleagle\\
  Rédacteur technique chez LizardTech\\
  \url{http://www.lizardtech.com}\\
  \email{mfleagle AT lizardtech.com}}

\address{Michael P. Gerlek\\
  Chef de projet chez LizardTech\\
  OSGeo Charter Member\\
  \url{http://www.lizardtech.com}\\
  \email{mpg AT lizardtech.com}}
