|
|
Nicolas Lehuen
Directeur
technique
The
CRM Company |
|
Nicolas
Lehuen (mod_python)
"Trop d'ouverture nuit à l'efficacité"
Il est un des rares développeurs habilités à modifier le code source du projet Apache mod_python. Nicolas Lehuen se pose en défenseur du modèle clos face aux tenants de l'ouverture à outrance.
07/11/2005 |
|
|
|
Dans quels projets êtes-vous
ou avez-vous été impliqué ?
Je participe actuellement au projet mod_python. Il s'agit
d'un module Apache permettant d'intégrer un interpréteur
Python, et de programmer des applications Web en Python.
C'est l'équivalent de mod_php ou mod_perl, qui intègrent
respectivement un interpréteur PHP et Perl dans le serveur
Apache. mod_python est utilisé ou supporté par un grand
nombre d'applications ou de frameworks Web écrits en Python.
Où
trouvez-vous le temps de vous occuper de projets non rémunérateurs ?
Je ne regarde pas la télévision ! Je suis un passionné
d'informatique, j'en fais mon hobby. J'ai toujours travaillé
sur des projets personnels et non rémunérés, pour m'autoformer,
par curiosité ou par passion. Pour moi, travailler sur
un projet Open Source, c'est continuer sur ce principe
de hobby, mais en m'impliquant dans des projets utiles
à une communauté. C'est plus gratifiant que de travailler
sur des projets personnels qui ne profitent à personne.
Maintenant, je suis père d'une petite fille depuis deux
mois et je dois avouer que mes priorités ont tendance
à être sévèrement chamboulées...
Avez-vous eu des difficultés
à entrer dans le milien du logiciel libre ?
Cela se fait tout naturellement. On commence par utiliser
un logiciel Open Source. Un jour on rencontre une difficulté,
une erreur dans la documentation, un bug... On commence
à poser des questions sur les forums, à lire un peu le
code source, à voir d'où peut venir le problème. On signale
une erreur en proposant une correction, qui va être évaluée
puis intégrée, et voilà ! Le niveau d'implication varie
par la suite selon son temps libre, ses compétences et
ses envies.
Ce qu'il faut comprendre, c'est qu'un projet ouvert n'est
pas un environnement idyllique. On peut fréquemment y
observer des altercations entre membres d'une communauté.
Les personnalités sont souvent fortes dans le monde du
logiciel libre, d'autant plus lorsque les participants
travaillent pour la gloire. Chacun cherche alors à se
mettre en avant et à pousser ses propres innovations,
ce qui peut conduire à la zizanie dans le groupe.
|
|
je
ne suis pas un fan inconditionnel du modèle
Open Source" |
|
Le libre est-il donc accessible
à toute personne de bonne volonté ?
La vraie difficulté consiste à trouver sa place dans une
communauté dont on ne connaît en général pas les membres,
qu'on ne rencontrera que très rarement. Les quiproquos
sont nombreux lors d'échanges de mails, et ce d'autant
plus lorsque la barrière de la langue intervient...
Il faut alors adopter une attitude dite "professionnelle",
sauf que dans le monde professionnel, le facteur hiérarchique
impose une certaine structure aux débats. Dans le monde
libre, la hiérarchie est beaucoup plus informelle, lorsqu'elle
existe. La méritocratie est préférée, mais la mesure du
mérite est très difficile. On pourrait se baser sur la
qualité du code produit, malheureusement cela ne laisse
pas beaucoup de places aux nouveaux entrants, qui par
définition ne peuvent directement intégrer leur travail
au projet. Par conséquent, ceux-ci doivent compenser en
faisant la promotion de leur travail sur les forums, ce
qui lance des débats sans fin.
Que représente pour vous le
monde l'Open Source et du libre ?
Disons-le tout de suite, je ne suis pas un fan inconditionnel
du modèle open source. Déjà, quand on parle d'Open Source,
de libre ou de gratuit, on entretien une confusion générale
qui mérite explication. Je vois le monde du logiciel libre
sous deux angles d'approche : le développement, et la
distribution.
Le développement logiciel, pour commencer, se décompose
en trois catégories : développement fermé - ce qui
correspond à la plupart des développements commerciaux,
et même gratuits comme Skype -, développement transparent
- le langage Java, par exemple, donne accès à son code,
mais tout le monde ne peut pas y participer -, et le développement
ouvert, où le code est ouvert aux volontaires, au travers
d'une communauté.
Pour ce qui est de la distribution du logiciel, c'est
une question de licences, où l'on trouve quatre catégories
principales : liberté sans condition - ou domaine public
-, liberté sous condition de citation, liberté sous conditions
contagieuses, et non-liberté.
Derrière le concept de libre ou d'Open Source se cachent
donc de nombreuses nuances, notamment dans les motivations
des développeurs. D'un projet "libre" à l'autre, les objectifs
et donc le mode de travail peuvent changer du tout au
tout.
|
|
Ceux
qui luttent contre le monde fermé négligent
leurs propres faiblesses" |
|
Vous semblez mettre ici développement
ouvert et clos sur un pied d'égalité...
Je pense même que le modèle clos a également ses
avantages. Le développement logiciel est un art complexe,
et il me semble qu'un environnement professionnel, structuré,
coordonné, avec des groupes de travail partageant les
mêmes locaux, ou bénéficiant du regroupement d'équipes,
permet d'obtenir de meilleurs résultats plus rapidement.
L'innovation peut se propager également plus vite en environnement
professionnel, puisqu'une équipe dirigeante peut imposer
le développement dans une nouvelle direction sans devoir
en débattre pendant des années sur des forums
Je pense que les ayatollahs qui hurlent contre le monde
fermé - et principalement contre Microsoft en oubliant
trop souvent Apple - négligent de prendre en compte leurs
propres faiblesses.
Le monde Open Source a un problème éminemment humain à
résoudre : comment des étrangers complets, ne parlant
pas tous nativement la même langue, avec des niveaux de
compétences, des objectifs et des motivations très variables,
le tout sans système hiérarchique légitime, peuvent arriver
à coopérer et à construire des projets qui soient compétitifs
avec le monde professionnel ?
Voyez-vous un mouvement de
professionnalisation du logiciel libre ?
Si le monde du libre devrait chercher à combler ses lacunes
face au monde professionnel, le monde professionnel a
très bien senti le parti pouvant être tiré du monde du
libre.
De nombreux éditeurs ont compris l'avantage marketing
que l'on peut tirer de l'Open Source. De gros éditeurs
ont "ouvert" leur progiciel : le code source est plus
ou moins disponible. C'est du domaine de la transparence
plutôt que de l'ouverture réelle.
Le métier de l'édition de logiciel s'appuyant de plus
en plus sur les revenus complémentaires du conseil et
de l'intégration, c'est un mouvement logique. Toutefois,
cela ne constitue pas à proprement parler une professionnalisation
du logiciel libre, mais une stratégie de vente du monde
professionnel qui utilise des ressorts du monde libre.
Même chose pour les soi-disant SSLL : je ne vois guère
de différence sur le fond entre une SSII qui vend de l'intégration
généraliste et une SSLL qui vend de l'intégration spécialisée
dans les logiciels libres.
Il s'agit ici du monde commercial
qui utilise les principes du libre. Et l'inverse ?
Le seul contexte où l'on observe une véritable professionnalisation
du logiciel libre, c'est lorsque des ressources financières
interviennent directement dans l'exécution d'un projet
libre, par exemple lorsque IBM soutient financièrement
et en ressources humaines le développement de Linux, ou
que la communauté européenne subventionne un projet Python
comme Pypy.
On a alors des personnes qui sont rémunérées pour travailler
sur des projets libres, ce qui change fondamentalement
leur motivation, voire leur implication.
|
|
Certains
projets disposent d'un "dictateur bénévole"
: cela accélère les choses |
|
Vous semblez avoir des idées
bien arrêtées. Vous considérez-vous comme un activiste
du libre ?
Non, pas vraiment, je participe à mon niveau, et je suis
loin d'être un ayatollah. Je pense simplement que le monde
du développement fermé a ses avantages, à commencer par
une structure et une hiérarchie établie, qui permettent
à leurs projets d'avancer plus vite. Pour commencer, cette
hiérarchie leur permet de couper court aux conflits humains.
Le libre, par son principe de méritocratie et de consensus,
prend le risque de s'embourber dans de longs débats. Ils
sont bien sûr utiles, et mettent en avant les critères
de rentabilités différents des projets non rémunérés :
on y cherche la qualité et l'efficacité.
Certains projets, à commencer par Python, disposent d'un
"dictateur bénévole", qui donne son avis plus ou moins
radical, et en cas de trop long débat, finit par trancher.
Cela accélère les choses. Cette idée de consensus est
un inconvénient nécessaire de l'Open Source. Trop d'ouverture
nuit à l'efficacité.
Quels sont vos espoirs pour
l'avenir du Libre ?
Avant tout que les aspects sociaux évoluent. Que cessent
les guerres de tranchées néfastes à l'avancement des petits
et gros projets, que disparaissent les complexes d'infériorité
ou de supériorité - au choix - vis-à-vis du monde professionnel,
et notamment de Microsoft.
Également, que les projets libres fassent un effort côté
documentation, simplification, ergonomie et formation
afin que toutes ces ressources libres de droit soient
plus facilement exploitables par les milliards de personnes
défavorisées de par le monde. |
|
Propos recueillis par Xavier Borderie, JDN Développeurs |
|
PARCOURS
|
|
|
|
Nicolas Lehuen, 29 ans, est directeur technique
de The CRM Company, depuis 2002.
1999 Consultant puis chef du pôle R&D
chez Ubicco.
1997 Developpeur puis chef de projet technique
chez Fi System.
Et aussi diplômé de l'INSA Rouen,
en 1998. |
|
|
|