Pendant des années, « tel collègue » vous a expliqué à quel point vous pourriez être plus productif en travaillant depuis votre domicile. Alors que de nombreuses entreprises obligent désormais leurs employés de travailler à distance pour endiguer la pandémie de Covid-19, voilà enfin venu le moment de saisir sa chance de télétravailler. Cependant, un tour rapide sur Twitter permet de constater que la plupart des gens détestent ça. Après quelques jours de confinement, nombreux sont ceux qui trouvent la situation insupportable.
Mais avant de consulter les experts du télétravail sur Twitter, il serait peut-être bon de rappeler que la majeure partie des logiciels que vous utilisez chaque jour - dont certains parmi les plus complexes et les plus importants au monde - sont écrits par des personnes qui ne se retrouvent pas tous les jours dans le même bureau et ne travaillent probablement même pas pour la même entreprise. J’ai nommé : les développeurs de logiciels libres. Une grande partie de l’infrastructure logicielle a été inventée en mode télétravail par ces développeurs. Alors, s'ils ont pu le faire, d’autres peuvent peut-être y arriver aussi ? C’est sûr que cela ne résoudra pas votre problème immédiat de garde d’enfants. La majorité des meilleurs logiciels, dont les plus utilisés au monde, ont été créés à domicile par un Finlandais parfois un peu bougon. Son nom : Linus Torvalds.
À l’origine du travail collaboratif
Linus Torvalds est peut-être plus connu être à l'origine de Linux, mais son autre innovation appelée Git - un système de contrôle de version distribué - est sans doute encore plus impressionnante. La plupart des gens n’ont pas besoin de savoir ce qu'est Git, mais tous les développeurs qui écrivent les logiciels que nous utilisons chaque jour connaissent très bien ce système. Selon les études compilées par l'analyste Lawrence Hecht, aujourd'hui, Git est « quasi-universel » dans le monde du développement. Vraiment ? Oui, une enquête réalisée par Stack Overflow montre que 87 % des développeurs utilisaient Git en 2018, et une autre de JetBrains indique que le taux d’adoption de Git est passé de 79 % en 2017, à 90 % en 2019.
Git permet aux développeurs de collaborer facilement sur le code sans qu’ils aient besoin d’interagir les uns avec les autres « dans la vraie vie ». Contrairement aux systèmes de contrôle de versions précédents comme Subversion, Git stocke les données sous forme de flux d'instantanés, ce qui le rend similaire à un mini système de fichiers. Git crée un système hautement local qui permet aux développeurs de travailler hors ligne ou hors réseau, ce qui optimise la productivité au maximum. Les développeurs soumettent des « demandes d'extraction », les « pull request », pour alerter les autres développeurs des modifications qu’ils ont apportées à un dépôt Git (généralement accessible sur GitHub ou GitLab). Git offre aux développeurs un moyen très efficace de collaborer, et toutes les technologies similaires - comme le suivi des modifications dans Microsoft Office, Google Docs, Quip, etc. - n’en sont que de pâles copies. Si seulement on pouvait faire en sorte que Linus Torvalds travaille sur les techniques de vente et de marketing... !
Les travaux de Linus
Git est peut-être le meilleur exemple pour expliquer pourquoi le développement open source peut prospérer en tous lieux, en télétravail comme dans l’entreprise. Et Linux est sans doute la meilleure preuve que cette modalité fonctionne. Il y a plus de dix ans, la Linux Foundation estimait la valeur de Linux à 1,4 milliard de dollars. Depuis, la valeur (et la base de code) de Linux n'a cessé de croître. En 2016, une estimation a suggéré que 41 000 années-personnes avaient été consacrées au développement de Linux, soit environ 5 milliards de dollars de travail « gratuit ». Aujourd'hui, Linux vaut facilement des dizaines (des centaines ?) de milliards de dollars, et il alimente en arrière-plan une grande partie du web, les téléphones Android, tous les superordinateurs les plus rapides, et bien plus encore.
Toute entreprise aimerait être propriétaire de Linux, et pourtant, selon les données les plus récentes, aucune entreprise en particulier ne contribue à plus de 11,5 % du noyau de l’OS open source. Selon la façon dont on mesure les contributions au code, dans la dernière version du noyau Linux (5.5), aucun développeur n'est responsable de plus de 1,6 % (modifications) ou de 3,6 % (lignes modifiées). Bien sûr, beaucoup de ces contributeurs sont payés pour écrire des pilotes Linux et d'autres lignes de code. Mais pour les contributeurs critiques de Linux, aucun d'entre eux ne serait renvoyé s'il décidait de télétravailler - et beaucoup le font déjà.
Le nouveau monde du télétravail
Ce qui nous ramène au sujet principal. Dans un article du Wall Street Journal, Matt Burr et Becca Endicott estiment que « très probablement, notre façon de travailler - du moins pour certains d'entre nous - ne sera plus comme avant ». Ils pensent que « les périodes chaotiques ont toujours pour effet de réordonner le réel et, ce faisant, d'ouvrir sur de nouvelles opportunités et de favoriser de nouvelles manières de penser ». Tous deux font remarquer que « le mois dernier, les Américains ont rompu avec une habitude vieille de près d'un siècle : le bureau a perdu sa première place en tant que lieu de travail des cols blancs. Des centaines de milliers d'employés, obligés de télétravailler depuis leur domicile, constateront bientôt que, dans ces conditions, la productivité, l'innovation et la créativité restent aussi fortes, sinon plus ».
Bien sûr, cela ne sera pas le cas pour tout le monde. Mais si vous êtes développeur, ce télétravail imposé de l'extérieur pourrait vous interpeller et vous vous demanderez peut-être pourquoi, quelque chose d'aussi énorme que Linux peut être développé par des équipes distribuées, mais pas pour votre application de facturation. Et même si vous n'êtes pas ingénieur logiciel, et que Microsoft Office ou Google Docs n'est pas aussi magique que Git, vos outils sont plutôt bons et suggèrent qu’éventuellement, vous pouvez être aussi productif en télétravail qu’au bureau.
Drôle d'apologie de Linus... Comme s'il était le seul à travailler sur Linux ou les autres logiciels libres et comme s'il avait inventé le principe du libre ou le travail collaboratif ou les outils qui vont avec...
Signaler un abusPour remettre les choses à leurs places :
- Linus a commencé Linux tout seul dans son coin et n'avait absolument aucune intention de travailler à plusieur dessus (ni idée que c'était possible d'ailleurs...). Il a fait connaître son projet en ~1991. C'est le projet GNU qui l'a convaincu de libérer son code et donc de permettre à plein de gens de collaborer dessus.
https://en.wikipedia.org/wiki/Linux
- GNU donc (*une* des définitions du libre, support légal au travail collaboratif - une autre étant BSD ~1977) a été formalisé par Richard Stallman ~1983...
https://en.wikipedia.org/wiki/GNU_Project
- Ce même travail collaboratif à distance et bénévole était la seule façon de travailler qui existait à l'origine de l'informatique, que ce soit dans les universités (MIT, etc.) ou les grosses entreprises de l'époque (IBM, HP, etc.). Si Stallman s'est senti obligé de le formaliser c'est parce qu'un certain développeur égoïste dans une de ces boîtes a, un jour, décidé qu'il ne voulait pas partager son code... et les juristes de ces boîtes ont commencé à réfléchir à comment appliquer leur sacro-sainte propriété intellectuelle à ce nouveau domaine pour en tirer toujours plus de sous.
- Le travail collaboratif sur les logiciels libres, comme nouveau paradigme de programmation, a été formalisé dans "La cathédrale et le bazar" ~1991 par Eric S. Raymond.
https://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar
- Il existait effectivement de nombreux systèmes de gestion de version avant Git : CVS, SVN... Linus utilisait un outil appelé BitKeeper, qui était un des rares outils de gestion de version décentralisés. Ce dernier était gratuit mais pas libre. Le propriétaire des droits de ce logiciel a décidé du jour au lendemain ~2005 de ne plus proposer de version gratuite. C'est ce revirement (et la non pré-existence d'alternative libre) qui a contraint Linus à développer son propre outil. Linus n'a ni inventé les outils de gestion de version, ni leur version décentralisée.
https://en.wikipedia.org/wiki/Git
- Pour reprendre vos arguments sur la place des entreprises dans le développement de Linux, ils sont quelques peu fallacieux. En effet, si aucune boîte ne fournit plus de 6.6% du code, le top 10 des contributeurs actuel du noyaux est "trusté" par des entreprises et dépasse 25% du code (cf la capture d'écran de votre propre article ci-dessous, j'ai sommé les contribution des 10 entreprises les plus connues dans la capture...). Cela va complètement à l'encontre du concept de décentralisation initial que vos vantez tellement dans votre article, et cela ne fait qu'empirer... Et c'est Linus qui l'a autorisé et qui ne fait rien pour l'empêcher aujourd'hui.... C'est extrêmement inquiétant pour les libristes de la première heure, qui commencent à se tourner vers d'autres OS (*BSD, Haiku, ...).
https://www.lemondeinformatique.fr/actualites/lire-microsoft-parmi-les-contributeurs-clefs-de-linux-48448.html
My 2 cents