Blogue

Démystifions l'Open Source

Les chroniques de l’aspirante geek continuent en 2019 et aujourd’hui, je saute à pieds joints dans le monde de l’open source pour tenter de le démystifier. C’est parti!

Commençons par une définition

Open source signifie que le code source d’un logiciel est public et accessible. Cela veut dire qu’il est généralement doté d’une licence permettant aux programmeurs de modifier le logiciel ou d’y contribuer de la manière qui leur convient: ils peuvent corriger les bogues, améliorer les fonctions ou adapter le logiciel à leurs propres besoins.

Pour démocratiser encore plus le processus, voici un exemple plus imagé : un potluck auquel tu décides d’apporter un gâteau au fromage.

  • Tous les gens invités au potluck goûtent au gâteau (utiliser)
  • Le gâteau est un succès! Les invités vous demandent la recette, que vous leur envoyez avec grand plaisir (lire)
  • Une amie, Alexandra, chef pâtissière, suggère de réduire le sucre (modifier, contribuer)
  • Un autre ami, Thomas, demande à l’utiliser pour un souper qui aura lieu la semaine prochaine (distribuer).

En comparaison, un processus de source fermé consisterait à aller au restaurant et commander un gâteau au fromage. Tu devrais, bien évidemment, payer pour manger le gâteau et même si tu le demandais, le restaurant ne te donnerait pas la recette. De plus, si tu reproduisais un gâteau en suivant exactement la même recette et que tu le vendais sous ton propre nom, le restaurant pourrait prendre des mesures contre toi.

Autre exemple: j’ai trouvé l’analogie ci-dessus sur le site d’Open Source guide: je l’ai utilisée (en le lisant), modifiée (tarte aux cerises vs gâteau au fromage + traduit en français) puis redistribuée (en l’ajoutant à cet article).

Plus facile à imaginer maintenant, non?

via GIPHY

Créée il y a plus de 20 ans, l’organisme à but non lucratif Open Source Initiative joue un rôle de premier plan dans le domaine et a établi une définition de l’open source en 10 points qui touchent notamment  la redistribution libre des logiciels, la disponibilité du code, l’anti-discrimination et la propriété des licences. En 2018 seulement, les projets de la plateforme Github, l’une des plus importantes sources de projets open source, ont reçu 1,1 milliard de contributions de plus de 3 millions de développeurs à travers le monde.

Open source vs. logiciel libre

Bien que ces termes soient souvent utilisés pour décrire la même chose, ils sont un peu différents. Les deux offrent la possibilité de télécharger et de modifier un logiciel gratuitement et sans restriction. Cependant, le logiciel libre - un concept développé dans les années 1980 par un chercheur en informatique du MIT, Richard Stallman - est défini par quatre conditions décrites par l’organisation américaine à but non lucratif Free Software Foundation. Ces "quatre libertés" insistent sur la capacité des utilisateurs à utiliser et à profiter des logiciels à leur guise. En revanche, les dix critères de l’Open Source, développés par l’Open Source Initiative dix ans plus tard, mettent davantage l’accent sur la modification des logiciels et leurs conséquences.

Cependant, ni l'un ni l'autre ne devrait être confondu avec le freeware. Freeware fait généralement référence à un logiciel propriétaire que les utilisateurs peuvent télécharger gratuitement, mais dont le code source ne peut pas être modifié.

L’humain au centre de l’open source

Un des côtés les plus appréciés de l’open source est définitivement le côté humain. Bien que chez Spektrum, on privilégie les rencontres et discussions en personne, on ne peut nier que l’open source amène un aspect collaboratif qui confirme le fait que même à distance, on peut créer de belles choses.  En effet, les projets dans l’open source sont bâtis autour de communautés qui se supportent, venant de partout dans le monde pour partager des connaissances et en apprendre davantage. De belles amitiés virtuelles et réelles peuvent également en découler, comme nous le démontrent les deux exemples ci-dessous.

Mathieu, co-fondateur de Braver et spécimen de l’écosystème SPK, s’était monté un projet open source pour répondre aux besoins de sa startup CQerl. Un jour, un développeur inconnu établi à Montréal lui a signalé un problème. Alors qu’il s’apprêtait à régler le pépin, il réalisa qu’un autre contributeur australien s’en était déjà occupé! «Au final, on s’est dit qu’on allait prendre une bière tous ensemble si on se retrouvait tous dans la même ville en même temps», dit-il. Olivier, programmeur chez Spektrum, a eu une expérience similaire lorsqu’il a contribué à un projet d’application créé par un entrepreneur qu’il admirait. Il a fini par rencontrer le CEO dans un 5 à 7 quelques années plus tard, complètement par hasard!

via GIPHY

Creuser un peu plus loin

Bien que je voulais m’en tenir à aborder le sujet en surface pour cette courte chronique, j’aurais définitivement pu creuser plus loin et expliquer davantage de concepts et de sujets reliés à l’open source. Si cet article a piqué ta curiosité et que tu souhaites approfondir tes connaissances, je te suggère fortement ces ressources :

Lors de la prochaine chronique de l’aspirante geek, tu pourras suivre une semaine dans ma vie alors que j’infiltre un «channel slack» chez Spektrum, dédié aux conversations plus techniques et geek, #labo.

Je suis certaine que j’en apprendrai beaucoup! À bientôt :)

via GIPHY