J'ai écrit dans mon précédent article que j'allais écrire au sujet de l'open-source. On est Dimanche, il fait beau, c'est le moment idéal !

Parlons donc du lien entre l'open-source et l'économie de l'informatique - en France avant tout.

Il y a quelques années, en mission chez Adeo, j'ai assisté à une très intéressante présentation d'un des membres du board de la fondation Apache sur le rôle de cette fondation.

Le présentateur y expliquait que le rôle de la fondation Apache était avant tout d'offrir une couche d'isolation contractuelle aux développeurs open-source. Et il y expliquait aussi comment l fondation a été créée. je vais commencer par ça, parce que c'est assez typique.

A ce sujet, l'article de la wikipedia est aussi parfaitement exact qu'inexact. Ce qu'a expliqué Dirk-Willem, c'est que les scientifiques qui ont écrit le serveur Apache, sur leur temps libre parce que leur employeur n'avait pas les moyens d'en acheter un, se sont rendus compte qu'en cas de poursuite judiciaire, ils étaient pénalement responsables. Il leur fallait donc une structure juridique les isolant des endroits où ce logiciel serait déployé, ce qui est le rôle des fondations open-sources.

Ce que je trouve fou dans cette histoire, c'est que ces gens ont travaillé pour leur employeur en plus, et que, pour schématiser, leur employeur s'est contenté de leur signaler qu'il pourrait se retourner contre eux. Bon, leur employeur, ou plutôt les parties de l'employeur qui voient dans les employés de petits rouages bien efficaces. Pour le dire autrement ... les comptables. Les mêmes qui voient depuis toujours l'informatique comme un coût.

Et on pourrait croire que l'attrait du prix nul était suffisant pour convaincre les entreprises ... En réalité, ça n'a pas été aussi simple : pendant longtemps, incitées par des fournisseurs à la moralité élastique (comme Microsoft ou Oracle), les entreprises refusaient d'utiliser de l'open-source, à cause de la viralité de la GPL, par exemple, ou d'autres considérations à base de "je ne vais pas laisser s'exécuter du code qui n'est pas audité" (croquignolet, quand on entend les récits de guerre de certains vieux développeurs ayant installé des backdoors plus ou moins nocives). Mais très vite, l'avantage du code gratuit, facile à intégrer (surtout dans des langages disposant d'un écosystème riche ainsi que de moyens commodes d'y accéder, comme le Java) a vaincu ces réticences, et on s'est retrouvé avec de plus en plus de code open-source maintenu par des équipes plus ou moins payées mis au service de ... toute l'industrie de l'informatique du monde.

libssl, curl, et tant d'autres. je suis sûr qu'ils en parlent sur explain xkcd ...

Résultat, aujourd'hui, vous écrivez tranquillement votre code Spring en rajoutant des dépendances (comme Failsafe ou Retrofit) sans vous soucier des gens qui ont développé ces dépendances. C'est bien ? Pour avoir utilisé moi-même ces dépendances, et avoir codé un peu d'open-source, c'est surtout bon ... pour le comptable de mon client, qui réduit le coût de développement du logiciel à mon tarif horaire.

Et franchement, ça fait du développement logiciel l'une des activités les moins coûteuses au monde. En fait, il n'y a que les métiers de service faiblement qualifiés qui coûteront moins cher : organiser une fête, faire livrer du matériel ... Toutes les activités d'investissement (comme l'est le développement logiciel) coûtent infiniment plus cher.

Et si vous voulez l'une des raisons pour lesquelles les éditeurs logiciels souffrent, c'est précisément ça : comme le logiciel est un coût, et que l'open-source ne vaut rien, chaque produit payant se retrouve concurrencé par une alternative open-source moins performante, mais aussi beaucoup moins chère (je le sais, je joue à Mindustry plutôt qu'à factorio).

A ce sujet, une petite parenthèse : ce qui arrive aujourd'hui à Elastic (qui se fait dévorer par Amazon) ou à Docker (qui se fait étouffer par Google - entre autres) est normal : un éditeur logiciel ne peut pas lancer un produit open-source s'en s'attendre à ce que des gens plus à l'aise en stratégie produit, et disposant de moyens supérieurs, ne vienne dévorer son marché par tous les moyens possibles. C'est mal. Mais c'est une partie de la nature humaine.

Attention, je n'écris pas ici que l'open-source est mal en soi. Au contraire, je crois vraiment que c'est l'une des transformations les plus enthousiasmantes qu'ait apporté la révolution numérique. J'écris plutôt que les entreprises consommatrices d'informatique y voient un moyen commode de réduire ce qui n'est vu que comme un coût.

Et c'est peut-être la raison pour laquelle les initiatives de financement de l'open-source ressemblent à ce point aux cagnottes qu'organisent les américains pour pallier leur système de santé défaillant ... Dans les deux cas, c'est une forme de charité douteuse, qui n'existe que parce que les gens qui ont l'argent ont trouvé des façons intelligentes de ne pas payer pour le service rendu.

Cela dit, il y a quelque chose de profondément positif à tout ça. Je crois que cette chute des coûts est à l'origine de la transformation numérique que subissent les entreprises françaises : comme le développement de nouveaux logiciels ne coûte pas grand chose, les entreprises en développent des tonnes, et financent une partie du développement des solutions open-source, tout en s'enfonçant dans une informatisation de plus en plus poussée. Ca ne veut malheureusement pas dire que les entreprises deviennent plus efficaces (et franchement, j'ai des doutes). En revanche, ça veut dire que le travail d'informaticien va devenir de plus en plus central, ce qui changera sans aucun doute les structures de pouvoir.