Un financement pour pouvoir se libérer… de Framasphère !
Diaspora* est un réseau social décentralisé et respectueux de la liberté. Le terme diaspora* désigne à la fois le logiciel sous licence AGPL à installer sur un serveur pour pouvoir se connecter au réseau, et le réseau lui même, composé de toutes les différentes installations du logiciel diaspora*.
Framasphère est une de ces installations (appelées pods), et nous sommes heureux de vous fournir un accès à ce réseau depuis l’un de nos serveurs.
Démarré en Février 2010, le projet diaspora* est devenu communautaire en Août 2012. Depuis, le développement avance dans la bonne direction mais à un rythme lent : il n’est porté que par des bénévoles, principalement allemands et français.
Essayez, installez, migrez.
Senya, un développeur russe, se propose de travailler sur diaspora* à temps plein en se rémunérant grâce à une campagne de financement participatif. La fonctionnalité principale visée pour cette campagne est la possibilité de migrer son compte diaspora* d’une installation vers une autre.
C’est une fonctionnalité qui nous tient à cœur, car elle touche un point clef de notre approche de la diffusion du logiciel libre : « cultiver son jardin », c’est à dire avoir sa propre installation du logiciel.
En effet, le projet Dégooglisons fonctionne en 3 étapes : vous faire découvrir le logiciel / service, vous permettre de l’essayer, puis vous permettre de l’installer chez vous, pour être le seul maître de vos données.
Vous pourrez enfin changer de pod !
Si pour certains services ce cheminement est facile, il devient nettement plus compliqué dès qu’il n’est pas possible d’extraire vos données de l’installation de Framasoft pour les réimporter dans votre propre installation.
Qui voudrait installer son propre nœud diaspora* si cela implique de perdre tous les contacts, messages, photos, etc. postés depuis des mois sur Framasphère ? Voilà pourquoi nous encourageons vivement Senya dans son crowdfunding.
Et bonne nouvelle ! Depuis quelques jours, les 3500 euros demandés ont été atteints, Senya va pouvoir travailler sur la migration entre les serveurs diaspora* !
5 jours pour aller plus loin…
Cependant, le financement se poursuit jusqu’au 20 Mars, car Senya se propose maintenant d’ajouter les mentions dans les commentaires si 4200 euros sont atteints, et la fédération des tags entre les pods si 5000 euros sont atteints (oui, les tags ne sont actuellement pas fédérés en tant que tels, voir cet article de blog pour les détails techniques). Ces fonctionnalités sont elles aussi très intéressantes, nous vous encourageons donc vivement à donner si vous le pouvez !
Senya propose notamment une récompense intéressante : si vous donnez 150 euros, il vous aidera personnellement à installer votre propre pod diaspora* puis à migrer votre ancien compte dessus en utilisant sa fonctionnalité toute neuve. C’est une opportunité unique d’avoir enfin votre propre réseau social entièrement sous votre contrôle !
En participant à ce crowdfunding, vous ne permettez pas seulement à Framasphère et à toutes les installations de diaspora* d’être plus complètes et de mieux fonctionner, créant une alternative fiable à l’horreur qu’est Facebook. Vous montrez aussi que vivre en écrivant du code Libre est quelque chose de possible.
Non seulement vous aidez Senya, qui prend le risque de faire financer son travail par la communauté plutôt que de trouver un emploi stable traditionnel, mais vous incitez aussi les autres développeurs à se tourner vers le financement participatif pour faire vivre tous les beaux logiciels Libres que nous aimons tant !
Comment créer une belle Framacarte avec un compte ? (Tutos uMap 3/4)
Juste avant Noël, nous vous présentions Framacartes, un service de création de cartes personnalisées pour vos sites web, communautés, randos, chasses au trésor… Framacartes est basé sur le logiciel Umap, qui permet d’ajouter des points, tracés et polygones sur les fonds de cartes d’OpenStreetMap.
C’est alors qu’Antoine Riche, ingénieur informatique, Contributeur et Formateur OpenStreetmap, nous a contactés pour nous présenter sa série de tutoriels (libres, eux aussi) pour apprendre à maîtriser uMap (et donc Framacartes) à toute la famille Dupuis-Morizeau.
C’est avec son autorisation (et de chaleureux remerciements) que nous reproduirons sur le framablog les quatre premiers tutos (le niveau « débutant ») afin d’en faire profiter le plus grand nombre.
Cette semaine, créons un compte afin de faire de bien jolies cartes et de ne pas les perdre !
J’utilise un compte et crée une belle carte
Ce que nous allons apprendre
Utiliser un compte pour retrouver ses cartes
Changer la forme, la couleur et le pictogramme d’un marqueur
Créer et modifier une ligne ou un polygone
Procédons par étapes
Nous avons appris dans le tutoriel précédent comment créer une carte anonyme contenant un marqueur. Nous allons à présent créer une carte plus complète : la carte de nos vacances au Camping de la plage Goulien sur la Presqu’île de Crozon en Bretagne.
Au lieu de créer une carte anonyme, nous allons utiliser un compte pour créer cette carte.
1. Utiliser un compte
uMap permet d’associer ses cartes à un compte. Cela présente deux avantages importants par rapport à la création de cartes anonymes :
les cartes créées avec un compte constituent un catalogue permettant d’accéder facilement à ses cartes
on peut modifier chaque carte du catalogue sans avoir besoin de conserver un lien d’édition
Le logiciel umap ne gère pas directement de comptes utilisateurs : la gestion des comptes dépend de la configuration du logiciel. Sur https://framacarte.org, nous vous proposons d’utiliser un compte OpenStreetMap. Si vous n’avez pas de compte, c’est le moment de vous inscrire sur le site www.openstreetmap.org : cliquez Créer un compte dans le coin supérieur droit et suivez les instructions – une adresse mail vous sera demandée (plus d’infos).
Cliquez sur Connexion / Créer un compte puis sur le pictogramme correspondant au compte que vous souhaitez utiliser. Apparaît alors la page de connexion du site : saisissez le nom d’utilisateur et le mot de passe. La page suivante vous demande d’autoriser l’application uMap à utiliser ce compte : accordez cet accès. Vous retrouvez alors la page d’accueil de uMap, sur laquelle le lien de connexion a laissé la place à un lien Mes cartes vous permettant d’accéder à l’ensemble des cartes créées avec ce compte.
Notez l’URL de la barre d’adresse quand vous consultez votre catalogue de cartes : celle-ci contient le nom de votre compte – par exemple https://framacarte.org/fr/user/PouhiouNoenaute/. Vous pouvez l’utiliser pour accéder à votre catalogue de cartes, même sans être connecté à votre compte : vous pouvez diffuser cette URL, les récipiendaires ne pourront pas modifier vos cartes.
Toutes les cartes que vous créez en étant connecté à votre compte sont ajoutées à votre catalogue.
2. Créer un joli marqueur
Commençons par créer une carte : donnons-lui un nom, définissons une emprise et ajoutons un marqueur à l’emplacement du camping. Nous avons vu dans le tutoriel précédent comment effectuer ces opérations.
Ce gros marqueur bleu n’est pas très explicite pour figurer un camping. Remédions à cela. Dans le panneau latéral visible lorsqu’un marqueur est sélectionné, le menu Propriétés avancées permet de modifier l’apparence du marqueur :
Couleur : cliquer sur Hériter permet de choisir une couleur.
Forme de l’icône : le choix Par défaut correspond au marqueur actuel, les autres choix sont Cercle, Goutte et Épingle.
Symbole pour le marqueur : cliquer sur Ajouter un symbole pour choisir parmi une centaine de pictogrammes. Notez que le symbole n’est affiché que pour les formes d’icônes Par défaut et Goutte.
Étiquette : choisir Oui permet d’afficher en permanence le nom associé au marqueur
Voici le marqueur obtenu avec les propriétés ci-contre :
Modifier un marqueur
Pour modifier un marqueur de la carte, deux possibilités s’offrent à vous :
un clic sur le marqueur affiche le panneau qui vous permet de modifier son nom et sa description
un glisser-déposer vous permet de déplacer le marqueur sur la carte
3. Créer une ligne
Le premier jour de vacances nous allons en kayak de mer jusqu’à la Pointe de Dinan à l’ouest de la plage de Goulien. Traçons l’itinéraire suivi.
Le bouton Dessiner une ligne permet de tracer, point par point, une ligne constiutée de plusieurs segments. Cliquez à nouveau sur le dernier point tracé pour terminer la ligne : apparaît alors à droite un panneau permettant de donner un nom et une description à la ligne, comme pour les marqueurs.
Modifier une ligne
A tout moment vous pouvez sélectionner une ligne en double-cliquant dessus. Vous pouvez alors éditer ses propriétés dans le panneau latéral, ou modifier son tracé sur la carte :
supprimer un point de la ligne, matérialisé par un carré blanc, en cliquant dessus
déplacer un point par un glisser-déposer
insérer un point en cliquant sur un carré gris se trouvant au milieu de chaque segment
allonger la ligne avec un Ctrl-Clic lorsque le curseur est placé sur le premier ou dernier point
couper la ligne en deux : Clic droit sur un point puis choisir l’option Scinder la ligne
Propriétés d’une ligne
Les propriétés avancées d’une ligne permettent de définir sa couleur et d’autres paramètres définissant son style :
l’épaisseur est définie en nombre de pixels, sa valeur par défaut est 3 : saisir une valeur plus grande pour un trait plus large (qui sera plus facile à sélectionner).
l’opacité est un nombre entre 0 (transparent) et 1 (opaque), sa valeur par défaut est 0.5. Plus le trait est épais plus il peut être transparent.
la simplification du tracé définit la précision du tracé en nombre de pixels : le tracé s’adaptera au niveau de zoom. Il est en général inutile de modifier cette valeur pour un tracé réalisé à la main.
les pointillés sont définis par une série de chiffres séparés par des virgules : nombre de pixels affichés, nombre de pixels cachés, etc. L’épaisseur du trait doit être prise en compte : plus les traits sont épais plus les intervalles doivent être grands.
Voici le style de trait obtenu avec les propriétés ci-contre :
4. Créer un polygone
Le second jour de vacances nous louons un dériveur et naviguons dans la zone définie par le club nautique. Ajoutons cette zone à la carte.
Le bouton Dessiner un polygone permet de tracer le périmètre d’un polygone point par point, et de le terminer en cliquant à nouveau sur le dernier point comme pour le tracé d’une ligne. Une différence toutefois : dès le troisième point l’intérieur du polygone est coloré.
Propriétés d’un polygone
La liste des propriétés d’un polygone est assez longue. On y retrouve les mêmes propriétés que pour les lignes (couleur, opacité, etc.) : celles-ci s’appliquent au périmètre du polygone. Plus bas nous trouvons des propriétés spécifiques aux polygones :
les options trait et remplissage permettent de ne pas afficher le périmètre ou l’intérieur du polygone : si aucun de ces deux éléments est affiché le polygone est invisible.
la couleur du remplissage est par défaut celle du trait, mais peut être modifiée.
l’opacité du remplissage varie de 0 à 1, elle peut être très légère pour un polygone.
Deux autres options propres aux polygones sont disponibles :
lien externe : spécifier une URL aura pour effet d’ouvrir le page Web correspondante lorsque l’utilisateur clique sur le polygone.
Cliquable : choisir la valeur non ne permettra pas à l’utilisateur de sélectionner le polygone, donc de voir son nom et sa description dans une popup. Cela peut être utile pour définir la zone d’intérêt de la carte, qui ne porte pas elle-même d’information utile.
Un polygone non-cliquable ne peut plus être sélectionné sur la carte même en mode édition. Il faut pour cela passer par l’opération Visualiser les données disponible dans le sélecteur de calque, puis éditer l’élément correspondant dans la liste des données.
Faisons le point
Notre deuxième carte est déjà plus intéressante que la première, et en plus nous savons comment la retrouver facilement. Nous verrons dans le prochain et dernier tuto comment personnaliser notre carte.
Comment créer sa première Framacarte ? (Tutos uMap 2/4)
Juste avant Noël, nous vous présentions Framacartes, un service de création de cartes personnalisées pour vos sites web, communautés, randos, chasses au trésor… Framacartes est basé sur le logiciel Umap, qui permet d’ajouter des points, tracés et polygones sur les fonds de cartes d’OpenStreetMap.
C’est alors qu’Antoine Riche, ingénieur informatique, Contributeur et Formateur OpenStreetmap, nous a contactés pour nous présenter sa série de tutoriels (libres, eux aussi) pour apprendre à maîtriser uMap (et donc Framacartes) à toute la famille Dupuis-Morizeau.
C’est avec son autorisation (et de chaleureux remerciements) que nous reproduirons sur le framablog les quatre premiers tutos (le niveau « débutant ») afin d’en faire profiter le plus grand nombre.
Cette semaine, voyons comment créer sa première Framacarte 😉
Je crée ma première carte uMap
Ce que nous allons apprendre
distinguer le mode édition du mode consultation
identifier les étapes nécessaires pour créer une carte
produire une première carte et la diffuser !
Procédons par étapes
L’objet de notre première carte est simple : positionner un ou plusieurs lieux (domicile, vacances, travail, etc.). Procédons par étapes.
1. Le mode édition
Rendez-vous sur le site https://framacarte.org et cliquez sur le bouton Créer une carte. Apparaît alors sur votre navigateur une carte qui se présente ainsi :
Nous retrouvons à gauche les boutons disponibles lors de la consultation d’une carte. Plusieurs éléments visibles au-dessus et à droite de la carte sont visibles uniquement lorsque l’on crée ou modifie une carte, c’est-à-dire dans le mode édition :
le nom de la carte en haut à gauche
les boutons Annuler et Enregistrer en haut à droite
à droite une série de 3 boutons permettant d’ajouter des éléments à la carte : marqueurs, lignes et polygones
en-dessous une série de 5 boutons permettant de configurer la carte
2. Nommer la carte
Une carte doit porter un nom qui renseigne sur ce que représente la carte. Pour définir le nom de la carte, cliquez sur le bouton Éditer les paramètres.
Un panneau apparaît sur la droite de la carte, il contient en haut un champ de saisie pour le nom de la carte, qui contient le texte Carte sans nom : placez le curseur dans ce champ, supprimez le texte existant et saisissez le nom de votre carte, par exemple Mon domicile.
Notez que le nom en haut à gauche de la carte est immédiatement modifié. Vous pouvez également saisir un texte plus long dans le champ description, qui apparaîtra dans le panneau de légende – nous y reviendrons.
Maintenant sauvegardez la carte avec le bouton Enregistrer : un texte en anglais est affiché en haut de la carte, comme celui ci-dessous.
Ce texte explique que vous venez de créer une carte anonyme et vous donne un lien (une URL) pour pouvoir modifier la carte. En effet la carte que vous avez créée n’est associée à aucun compte, et uMap considère que seules les personnes ayant ce lien secret peuvent la modifier. Vous devez donc conserver ce lien si vous souhaitez pouvoir modifier la carte. Nous verrons dans le prochain tutoriel comment créer son catalogue de cartes en utilisant un compte, il n’est alors pas nécessaire de conserver de lien secret.
3. Ajouter un marqueur
Commencez par déplacer et zoomer la carte pour visualiser l’endroit précis de votre domicile, lieu de vacances ou de travail.
Cliquez ensuite sur le bouton Ajouter un marqueur. Le curseur prend la forme d’un signe + et est accompagné d’un marqueur de couleur bleue. Déplacez le curseur sur le lieu que vous voulez marquer et cliquez avec le bouton gauche de la souris : le marqueur est déposé à cet endroit et un panneau apparaît à droite.
Ce panneau vous permet d’associer un nom et une description au marqueur :
le nom sera affiché au survol du marqueur par la souris
le nom et la description seront visibles dans une fenêtre dite popup qui apparaîtra lors d’un clic sur le marqueur.
Nous verrons plus loin l’utilité des calques, et comment modifier les propriétés du marqueur : forme, couleur, pictogramme, etc.
Répétez l’opération pour ajouter les marqueurs que vous jugez utiles à votre carte.
4. Définir l’emprise de la carte
Il est important de définir l’emprise initiale de la carte, c’est-à-dire la partie du planisphère qui sera affichée lors de la consultation de la carte.
Cette emprise doit inclure votre marqueur et permettre de situer la carte. Il convient de trouver un compromis entre un zoom trop éloigné et un zoom trop rapproché. Le bon compromis dépend essentiellement du contenu de la carte : la majorité des marqueurs, lignes et polygones doivent être visibles et utiliser au mieux l’étendue de la carte.
Vous pouvez aussi considérer le public de la carte : une carte expédiée à votre voisin peut être très zoomée, une carte envoyée un correspondant étranger doit permettre de reconnaître le pays où se trouve votre carte.
Pour définir l’emprise, déplacez et zoomez la carte afin d’afficher l’emprise souhaitée puis cliquez sur le bouton Enregistrer le zoom et le centre actuels.
uMap enregistre en réalité le centre et le niveau de zoom. Selon la taille de la fenêtre où est affichée la carte, la partie visible pourra varier. Il est utile de prévoir une marge autour du contenu de la carte.
5. Enregistrer la carte
Toute modification de la carte doit être sauvegardée sur le serveur uMap en cliquant sur le bouton Enregistrer en haut à droite. Cette opération enregistre toutes les modifications depuis la dernière sauvegarde : vous pouvez donc réaliser plusieurs modifications à la suite puis les enregistrer. A l’inverse le bouton Annuler permet de supprimer toutes les modifications depuis la dernière sauvegarde.
Après avoir enregistré les modifications, le bouton Annuler est remplacé par Désactiver l’édition. Cela vous permet de quitter le mode édition pour voir la carte en mode consultation. Vous pouvez alors tester votre carte : cliquez sur le marqueur pour afficher la popup et vérifier son nom et sa description.
Félicitations ! Vous avez créé votre première carte uMap. Vous pouvez la diffuser à votre entourage en copiant son URL dans la barre d’adresse du navigateur, ou en copiant son URL courte disponible dans le menu Partager vu dans le tutoriel Je consulte une carte uMap.
Faisons le point
Votre première carte est créée, en quelques étapes. L’opération est assez simple, mais le résultat est somme toute assez sommaire. Le tutoriel de la semaine prochaine nous permettra de créer une jolie carte.
Comment consulter une Framacarte ? (Tutos uMap 1/4)
Juste avant Noël, nous vous présentions Framacartes, un service de création de cartes personnalisées pour vos sites web, communautés, randos, chasses au trésor… Framacartes est basé sur le logiciel Umap, qui permet d’ajouter des points, tracés et polygones sur les fonds de cartes d’OpenStreetMap.
C’est alors qu’Antoine Riche, ingénieur informatique, Contributeur et Formateur OpenStreetmap, nous a contactés pour nous présenter sa série de tutoriels (libres, eux aussi) pour apprendre à maîtriser uMap (et donc Framacartes) à toute la famille Dupuis-Morizeau.
C’est avec son autorisation (et de chaleureux remerciements) que nous reproduirons sur le framablog les quatre premiers tutos (le niveau « débutant ») afin d’en faire profiter le plus grand nombre.
Cette semaine, on apprend tout simplement à se familiariser avec uMap et à profiter pleinement d’une Framacarte !
Je consulte une carte uMap
Ce que nous allons apprendre
Manipuler une carte uMap
Partager une carte uMap
Connaître les principales fonctionnalités de uMap
Procédons par étapes
1. Manipuler la carte
Vous avez reçu par mail un lien vers une carte umap. Voici les principaux éléments de la carte, et les opérations disponibles pour la manipuler. La carte umap représentée ci-dessous est disponible ici.
À droite de la carte et selon le choix de son auteur peut être affiché un des deux panneaux suivants :
Légende : le titre de la carte, une description éventuelle, et la liste des calques
Visualiser les données : l’ensemble des éléments de la carte, répartis par calques (voir plus bas)
Le panneau Légende peut être affiché en cliquant sur le mot “Légende”, toujours visible en bas à droite de la carte.
Comme pour la plupart des cartes interactives vous pouvez :
déplacer la carte par un glisser-déposer
effectuer zooms avant et arrière avec les boutons + et -, ou avec la molette de la souris
sélectionner un élément de la carte par un clic de la souris : apparaît alors une fenêtre popup affichant une description de l’élément. Celle-ci peut inclure du texte, une image, un lien vers un site Web. Dans notre exemple la description de chaque cinéma contient une image qui est un lien sur le site Web du cinéma.
Remarque : les boutons en haut à gauche de la carte, ainsi que la barre de légende, peuvent ne pas être disponibles si l’auteur de la carte a choisi de les cacher.
Voyons maintenant quelques fonctionnalités propres à umap.
2. Le sélecteur de calques
Les éléments d’une carte umap peuvent être répartis dans plusieurs calques, ou couches. Cela permet de structurer une carte, pour qu’elle soit plus claire et plus facile à maintenir. L’utilisateur peut choisir d’afficher ou cacher chaque calque individuellement.
Le sélecteur de calques est l’icône visible en haut à gauche de la carte sous les boutons de zoom. Lorsque vous positionnez la souris sur ce bouton, la liste des calques apparaît, vous pouvez alors afficher ou cacher chaque calque, ou encore centrer la carte sur le contenu d’un calque. Dans cet exemple le calque “Stations Bicloo” est caché : cliquer sur l’oeil de ce calque permet de l’afficher.
La liste des calques, avec éventuellement un descriptif de chaque calque, est aussi visible dans la légende de la carte.
3. Le bouton Plus
Sous le sélecteur de carte est visible un bouton portant le texte “Plus”. Un clic sur ce bouton fait apparaître une série de boutons.
permet de retourner à la page d’accueil de umap.
permet de vous géolocaliser1), c’est-à-dire centrer la carte sur votre position actuelle.
permet de chercher une localité et de centrer la carte dessus : saisissez le nom d’une commune et tapez sur Entrée.
permet de partager la carte ou d’en exporter les données. Un panneau à droite de la carte est affiché, il est expliqué ci-dessous.
affiche à droite plusieurs fonds de carte : cliquer sur l’un d’eux change le fond de la carte.
est utile pour améliorer la carte OpenStreetMap – ce qui sort de l’objet de ce tutoriel.
est un outil de mesure. Activer cet outil a deux effets : d’une part il affiche la longueur des éléments linéaires de la carte et l’aire des éléments surfaciques ; d’autre part il vous permet de tracer sur la carte une ligne dont la longueur est affichée. Cliquez à nouveau sur le bouton pour désactiver cet outil.
Partager la carte
Le panneau de partage de la carte offre trois possibilités. Votre choix dépend de la manière dont vous souhaitez partager la carte :
URL courte permet de copier une URL abrégée – équivalente à l’URL de la carte – que vous pouvez par exemple envoyer dans un mail.
Embarquer la carte en iframe permet d’inclure la carte dans une page Web : il suffit de copier le code HTML et de l’insérer dans celui de votre page Web. Plusieurs options sont disponibles dans le menu Options d’export de l’iframe : taille de la carte, choix des boutons inclus dans la carte, etc. Activez ou désactivez ces options avant de copier le code HTML.
Télécharger les données permet d’obtenir les données visibles sur la carte, dans différents formats. Cela peut vous permettre d’utiliser ces données avec un autre outil.
4. Visualiser les données
La liste des éléments de la carte peut être affichée avec un clic sur Visualiser les données, accessible depuis le sélecteur de calques, la barre de légende, ou encore en haut du panneau Légende.
Le panneau alors visible à droite montre l’ensemble des éléments de la carte, organisés par calques. La loupe à gauche de chaque élément permet d’afficher sur la carte la popup décrivant cet élément. Le texte de saisie au-dessus de la liste permet de rechercher un élément, en ne montrant que ceux dont le nom contient le texte saisi.
Faisons le point
Ce premier tutoriel nous a permis de découvrir les principales fonctionnalités d’une carte uMap. La semaine prochaine nous apprendrons à créer une telle carte.
Notes :
1) La géolocalisation exige de demander l’autorisation de l’utilisateur, votre navigateur Web peut donc vous demander d’accepter ou activer la géolocalisation
Suite à la mise en place de la campagne Dégooglisons Internet, Framasoft souhaite impulser la création d’un Collectif d’Hébergeurs Alternatifs, Transparents, Ouverts, Neutres et Solidaires (C.H.A.T.O.N.S. ! 😛 ).
Ce collectif rassemblerait les organisations souhaitant proposer des services alternatifs à ceux de GAFAM (Google, Apple, Facebook, Amazon, Microsoft), respectueux de la vie privée des utilisateurs.
Le projet n’en est qu’à ses débuts et ne sera pas ouvert au public avant plusieurs mois, mais ce billet permet d’informer les actuels hébergeurs de services libres de l’initiative.
Rappelons que ce projet, qui s’étale sur plusieurs années, vise à résister à la colonisation du web par Google, Apple, Facebook, Amazon ou Microsoft (GAFAM pour les intimes, et la totalité des internautes sont, justement, très intimes avec eux).
Pour cela, nous nous étions fixés trois objectifs :
1 – Sensibiliser le grand public aux dangers (avérés, mais surtout à venir) d’une trop grande centralisation des services web :
dépendance à des outils contrôlés à distance par d’autres ;
marchandisation de nos données personnelles ;
surveillance généralisée facilitée pour les états (telle que révélée entre autre par Edward Snowden) ;
frein à l’innovation du fait de la puissance financière de ces sociétés. Pour information, Alphabet, la maison mère de Google, est la première capitalisation boursière mondiale (la seconde étant… Apple). Jamais notre monde n’a connu d’entreprises aussi riches ;
un « débordement » du cadre web qui devrait nous interroger (voiture sans chauffeur, investissement dans les biotechnologies, la robotique, des projets pas du tout farfelus pour connecter toute la planète, des objets connectés surveillant nos faits et gestes, des incursions dans le domaine politique, etc.).
2 – Démontrer que le logiciel libre était une alternative (probablement la seule, d’ailleurs) aux services de GAFAM.
Pour cela, nous avons mis en place plus d’une quinzaine de services en ligne respectueux de vos données. Et une quinzaine d’autres devraient suivre dans les 18 prochains mois.
3 – Essaimer notre démarche, afin de ne pas nous-mêmes devenir un « espace centralisé »
Un bilan positif
Sur le premier point (sensibilisation), nous sommes satisfaits du résultat :
le nombre de tickets sur notre support (241 en janvier) est aussi un bon indicateur 😛
Sur le troisième point (essaimage), il semblerait que la rencontre ait eu lieu : nous avons appris (parfois par hasard !) que de nombreux « clones » de nos services avaient été mis en place (Diaspora Nouvelle Donne, Framadate ici ou là, MyPads, etc.)
Mais aussi des faiblesses
Pourtant, nous savons que nous allons dans le mur !
Pour l’instant, nous n’avons pas de problème pour fournir le service. Grâce à vos dons, nous avons pu embaucher un administrateur système à temps plein, ce qui va nous permettre de stabiliser l’infrastructure technique (une quarantaine de machines virtuelles, tout de même).
Cependant, cette croissance permanente n’est pas tenable à long terme.
Certes, nous pourrions demander plus de dons, pour embaucher plus, maintenir plus de machines. Mais cela ne nous parait pas être une bonne solution : nous n’avons pas envie de courir derrière l’argent, et surtout cela ferait de Framasoft, à terme, un service centralisateur du même type que celui contre lequel nous essayons de résister !
Et, non, pour répondre à une demande récurrente, il n’est pas question pour nous de proposer des services payants, car nous n’avons pas envie de gérer des clients. Ça, c’est le travail d’entreprises du libre (et elles ne manquent pourtant pas). Framasoft est une petite association et ce statut nous convient tout à fait.
Framasoft : une AMAP du libre ?
Vous pouvez voir Framasoft comme une AMAP du logiciel libre, en quelque sorte. Ce type d’organisation ne fait sens que si la taille en reste raisonnable, que s’il y a proximité entre le producteur (Framasoft) et les utilisateurs (vous !).
Dit plus clairement : nous ne cherchons pas de solution technique ou financière à une crise de croissance. Même si cela peut paraître paradoxal, nous souhaitons d’ores et déjà anticiper le ralentissement de cette croissance ! 🙂
Une forme de sobriété volontaire qui pourra sans doute en étonner certains, mais qui parait relativement logique si on ne souhaite pas « industrialiser » les processus car cette industrialisation, justement, génère des effets de bords négatifs pour la vie privée de nos utilisateurs. Nous sommes fiers de notre indépendance (grâce à vos dons), et de notre côté « artisan du web » qui peut encore prendre le temps de discuter/débattre avec ses utilisateurs.
Des chatons (et de la bière ?) pour libérer le monde !
Pour les raisons évoquées ci-dessus, Framasoft souhaite aujourd’hui renforcer son objectif d’essaimage.
Nous nous proposons aujourd’hui d’impulser la création d’un collectif nommé C.H.A.T.O.N.S. pour : Collectif d’Hébergeurs Alternatifs, Transparents, Ouverts, Neutres et Solidaires.
Pour faire court, CHATONS serait un peu aux services libres ce que la Fédération FDN est aux fournisseurs d’accès internet libres : un moyen de rassembler, de mutualiser, de décentraliser, de donner de la visibilité, de fédérer autour de valeurs communes, de faciliter l’essaimage, mais sans pour autant centraliser, rigidifier, contrôler ces structures.
Pour faire plus long, reprenons les objectifs possibles d’un tel collectif, dont nous souhaitons faciliter l’émergence :
1 – Rassembler
Il existe en fait déjà de nombreux hébergeurs de services en ligne libres et alternatifs, dont certains existent depuis bien, bien plus longtemps que Framasoft.
Etc. (cette liste est très loin d’être exhaustive)
L’un des objectifs serait de proposer à ces différentes structures, si elles le souhaitent, de rejoindre le collectif.
2 – Mutualiser
Les libristes aiment leur indépendance, elle est parfois une force qui nous permet de faire preuve d’innovation, de résilience, de créativité, de réactivité. Et elle est parfois un faiblesse, qui nous fait réinventer la roue, non pas par plaisir, mais juste par ignorance que d’autres ont déjà trouvé une solution à notre problème.
L’un des objectifs serait de partager l’information et les bonnes pratiques, sans pour autant imposer ces dernières.
3 – Décentraliser
Framapad est en rade ? Vous cherchez un service de sondages plus poussé que Framadate ? Vous voulez quitter Gmail, sans savoir chez quel fournisseur prendre votre email ?
Framasoft ne couvre pas l’ensemble des besoins, et ne propose aucune garantie de disponibilités dans ses Conditions Générales d’Utilisation. Il serait donc utile de répartir la charge et les services sur différentes organisations, non seulement pour éviter les silos de données, mais aussi pour s’assurer de ne laisser aucun utilisateur dans l’impasse.
L’un des objectifs serait de mettre en réseau les différentes organisations volontaires, afin qu’elles puissent proposer des services complémentaires (voir redondants) aux utilisateurs.
4 – Donner de la visibilité
Parmi les soucis que Framasoft rencontre, il y a le fait que nous sommes loin de connaître toutes les hébergeurs libres et alternatifs en France ou à l’étranger.
Pour prendre un exemple parmi beaucoup d’autres, nous avons découvert presque par hasard l’association Nanterasso (qui dépend du GUL Nanterrux). Il y a sans doute de nombreuses autres associations de ce type en France.
D’autres structures existantes, comme ouvaton.coop, mériteraient sans doute un coup de projecteur.
L’un des objectifs serait de rendre visible, sur un site web, les différentes structures membres du collectif, ainsi que leurs offres.
5 – Fédérer
Évidemment pour qu’un collectif fonctionne, il faut que ses membres se retrouvent autour de valeurs communes. Sans elles, on finit par ne plus savoir ce qu’on fait là, ce qu’on partage avec l’autre, ni ce qui nous rassemble.
Nous proposons que le collectif rédige :
un manifeste, pour poser noir sur blanc les valeurs défendues ;
une charte, permettant à chacun de connaître les règles de gestion du collectif.
L’un des objectifs serait donc de fixer ensemble les règles communes permettant aux membres du collectif de pouvoir promouvoir et défendre efficacement les valeurs qui les rassemble.
6 – Essaimer
Le collectif CHATONS est un collectif « sans compétition » : le but ne doit pas être d’avoir le plus grand nombre d’utilisateurs, puisque les membres souhaitent décentraliser les services. Par conséquent, le collectif veillera à faciliter la création et l’accueil de nouveaux membres.
L’un des objectifs serait d’abaisser « la barrière à l’entrée » pour les nouveaux entrants. Plus il y aura de chatons actifs respectant la charte et le manifeste, mieux cela vaudra pour le collectif.
7 – Partager
Trouver des tutoriels expliquant comment mettre en place tel ou tel service, c’est bien. Mais cela ne permet de réduire efficacement l’écart entre « ceux qui utilisent » et « ceux qui savent comment ça marche ». Nous devons faire de l’éducation populaire, en partageant avec les utilisateurs de nos services. Nous devons être à leur écoute, y compris devant des questions qui nous paraissent parfois naïves : « Au fait, par où passe mon email quand je clique sur « Envoyer », et que l’ordinateur de mon destinataire est éteint ? », « Mais un logiciel propriétaire, ça ne veut pas dire que je suis propriétaire de mes données, justement ? », « Quel problème y a-t-il à utiliser GMail ? C’est gratuit et ça marche bien, non ? »
Ces questions, on nous les pose souvent, mais notre expérience a montré que nous y répondions moins bien par email que quand nous étions face aux personnes, une bière (ou autre breuvage) à la main. L’explication passe mieux, non pas parce que nous serions plus clairs après avoir bu une pinte, mais parce que nous échangeons sur un pied d’égalité avec nos interlocuteurs, qui nous apprennent aussi de leurs usages, de leurs pratiques. Si nous voulons informer objectivement le public pour qu’il puisse faire des choix éclairés, il nous faut le rencontrer, lui parler, échanger, partager. Et sortir de notre tour d’ivoire.
L’un des objectifs serait donc de consacrer du temps à des temps de partages (et non comme souvent des temps d’informations distanciés, parfois professoraux ou dogmatiques), cela n’étant possible que si le collectif dispose d’un réseau suffisamment étendu géographiquement.
Et maintenant ?
Voilà pour l’idée dans les grandes lignes.
Mais, même si nous savons que le diable se cache dans les détails, nous ne souhaitons – volontairement – pas aller beaucoup plus loin pour le moment, afin de faciliter la participation et le débat.
Ce qui a été fait :
Nous avons déjà contacté en amont quelques structures (notamment celles citées plus haut), ce qui ne veut évidemment pas dire que la participation est close ! (cf « Vous souhaitez devenir un chaton ? » ci-dessous)
Nous avons déjà commencé la rédaction d’un Manifeste et d’une Charte (en version 0.1, il ne s’agit que d’un brouillon de proposition, les versions finales n’auront probablement rien à voir)
Nous avons réservé le nom de domaine http://chatons.org, mais le site ne sera pas rendu public avant l’été.
Nous avons proposé un planning :
Janvier à juin 2016 – discussions sur la Charte et le Manifeste
26/01 – annonce “officielle” du projet CHATONS à Brest
Précisons tout de suite qu’il ne s’agit pas d’un projet interne à Framasoft, même si c’est Framasoft qui l’impulse. Nous serons à terme un chaton parmi les autres. Cependant, pour pouvoir avancer relativement efficacement, nous avons préféré proposer une base de travail (Charte et Manifeste), ainsi qu’un planning indicatif, afin de ne pas nous perdre dans les discussions trollesques que nous, libristes, apprécions tant 😉
Vous souhaitez devenir un chaton ?
Pour l’instant, nous allons débuter la phase de discussion, donc il est encore un peu tôt pour “postuler”, car nous ne saurions vous accueillir, puisque le collectif n’existe pas 🙂
Cependant, si vous pensez pouvoir apporter quelque chose de concret et tangible aux discussions (et non du “yakafokon”), vous pouvez laisser un message en commentaire du billet (en laissant bien votre adresse courriel dans le champ approprié, qui ne sera pas diffusée, au cas où nous souhaiterions vous recontacter).
Bref, pour l’instant, il ne s’agit que d’une idée, donc il va nous falloir un peu de temps pour la structurer avant de la présenter au public. Mais nous souhaitions la présenter ici, car il ne fait aucun doute que Framasoft consacrera une partie de son énergie à ce projet.
Internet est-il cassé ?
Pas encore, mais il est certain qu’Internet, tel que nous le connaissons, est en train de changer. Et pas forcément dans le bon sens.
Face à ce mouvement de concentration, qui pourrait bien transformer Internet en Googleternet ou Facebookternet, nous ne voyons qu’une seule voie (si vous en avez d’autres à proposer, on prend !) : décentraliser internet en faisant en sorte qu’il demeure tel qu’il a été conçu. Neutre. Ouvert. Interopérable. Libre.
Si nous voulons une économie qui soit aussi sociale et solidaire, il va nous falloir un internet qui soit aussi social et solidaire. Et cela passera entre autre par une diversité d’acteurs indépendants proposant des services web libres, éthiques et respectueux de vos données, décentralisés et solidaires.
Framacalc Reloaded : la force de vos feuilles de calculs se réveille !
Notre tableur en ligne, basé sur le logiciel libre Ethercalc, est déjà largement utilisé… au point d’être parfois victime de son succès ! C’est bien connu : plus un logiciel (ou un service) a d’utilisateurs, plus ils souhaitent, suggèrent et apportent des améliorations et aident ainsi le logiciel à devenir meilleur…
Alors : prêt-e-s pour les améliorations apportées à ce millésime 2016 ? C’est parti !
Une mise à jour aussi grosse qu’une pilule bleue !
La nouvelle mouture d’Ethercalc apporte déjà en elle-même de belles améliorations :
Une interface graphique plus claire et plus simple (nouvelles icônes, plus que 2 niveaux de gris…)
Le format de la date s’adapte en fonction de la langue (de votre navigateur). Pour les francophones, sachez qu’enfin vous pourrez entrer vos dates au format JJ/MM/AAAA (c’est peut-être un détail pour vous, mais pour nous…)
Les onglets sont de la partie ! Même si cette fonctionnalité est -encore- expérimentale, cela veut dire concrètement que vos pouvez avoir un classeur de plusieurs feuilles de calculs sur le même Framacalc. Vous avez le droit d’écraser une larmichette de bonheur.
Du coup, vous pouvez aussi importer vos feuilles de calculs/classeurs dès la création de votre Framapad (que vos fichiers soient en .csv, en .ods… et allez, on est choux, on accepte même le format .xlsx, parce qu’il faut bien que vous vous en libériez !)
Une petite barre « rechercher » est apparue. Avant, pour rechercher une donnée dans votre tableau, il vous fallait utiliser la fonction de recherche de votre navigateur… Mais ça, c’était avant.
Les volets (pour l’en-tête des lignes et colonnes) deviennent permanents et visibles pour tous les utilisateurs. Désormais, vous pouvez naviguer dans l’immensité de votre calc et savoir de quoi parle la cellule Z42.
Framacalc contre-attaque.
Une des fonctionnalités qui manquaient le plus à Framacalc (quand on le compare à son cousin Framapad), c’est un historique des différentes révisions de votre feuille de calcul. Eh oui : une simple erreur d’un-e de vos collaborateurs ou collaboratrices, et tout votre calc était à reprendre !
C’était compter sans la sagacité de notre nouvel employé Luc (Framasky pour les intimes), qui a dégoté le petit bout de code qui enregistre automatiquement une révision de vos calcs toutes les dix minutes ! Ce petit bout de code nécessitait quelques adaptations pour enregistrer les différentes versions de chaque calc : il ne faisait qu’enregistrer la dernière version à chaque utilisation. Bien entendu, cet apport a été soumis à la communauté d’Ethercalc, afin que cela profite à tou-te-s !
Problème : pour accéder à vos calcs enregistrés, il fallait retenir l’URL : https://framacalc.org/history/nom_du_calc… ce qui est pas très très pratique pour Han Dupuis-Morizeau, qui a déjà d’autres choses à retenir dans sa vie.
Qu’à cela ne tienne, Luc a utilisé la Force du Javascript pour ajouter un onglet « Révisions » à vos Framacalcs. Désormais, l’ensemble de vos révisions est à portée de clic.
Une chose que Luc-überGeek-Framasky ne pouvait pas laisser faire comme ça…
Ethercalc Revision Tool : le retour du Framacalc
C’est ainsi que notre Framasky a sorti son clavier laser pour coder ERT (Ethercalc Revision Tool). Un système de révisions simple et efficace conçu pour Framacalc mais que vous pouvez aussi installer sur votre propre instance d’ethercalc (pensez à bien suivre le fichier INSTALL.md car y’a un bout de code à goupiller ^^).
Pour restaurer une révision précédente de votre calc, c’est très simple :
Cliquez sur l’onglet « anciennes révisions »
Choisissez la révision qui vous intéresse (elles sont enregistrées toutes les 10 minutes dès lors que vous avez modifié votre feuille de calcul)
Cliquez dessus si vous voulez un aperçu (parce que quitte à avoir la classe, on va l’avoir jusqu’au bout)
Et cliquez sur l’icône « retour dans le temps » en haut à droite (pas d’inquiétude, une confirmation vous sera demandée).
Oui, c’est tout.
Et re-oui : ça marche avec vos anciens Framacalcs (mais leurs révisions ne sont enregistrées que depuis quelques jours seulement ^^).
C’est pas une happy end ça ?
Ethercalc Revolutions
La morale de cette histoire, c’est que le Libre apporte au Libre. Parce que vous l’utilisez massivement, il nous semble essentiel de tenir Framacalc à jour. En mettant à jour Ethercalc (et donc en profitant du travail de son équipe), nous avons découvert certaines de ses possibilités et ce qu’il manquait à nos utilisations. Alors (même si Framasoft code très peu, encore un grand merci à Luc) nous avons apporté notre petite pierre en réalisant ERT qui peut désormais servir à toute la communauté, que vos alliez sur Framacalc ou sur un autre instance d’Ethercalc qui intègre cet outil.
C’est un cercle vertueux, et ceci est (littéralement) une révolution.
Lorsqu’une personnalité notoire du Libre comme Carl Chenet s’attaque avec pertinence à la tendance massive du « tous sur GitHub » et égratigne la communauté du Libre pour son immobilisme (et même sa paresse !), Framasoft trouve que c’est une bonne occasion de lui donner un peu plus de voix encore.
S’adressant principalement aux développeurs, il pointe les dangers d’un service centralisateur, privateur, qui uniformise les pratiques en étouffant les alternatives. Ça ne vous rappelle rien ? Oui, les mêmes écueils contre lesquels nous vous mettons en garde dans notre campagne degooglisons ! Ajoutons que nous avons déjà basculé sur GitLab, comme le recommande Carl, dès 2014 et mis à la disposition de tous depuis le mois de mars 2015notre GitLab qui héberge à ce jour 3017 projets, 2071 utilisateurs inscrits, 242 groupes.
Nous reprenons ici avec son autorisation le récent billet de Carl qui a déjà suscité d’intéressants commentaires et en provoquera probablement d’autres ici même.
Alors que le projet CPython (implémentation historique du projet Python) a annoncé son passage chez GitHub (avec quelques restrictions, nous reviendrons là-dessus), il est plus que jamais important de s’interroger sur les risques encourus d’utiliser un logiciel propriétaire dans notre chaîne de création du Logiciel Libre.
Des voix critiques s’élèvent régulièrement contre les risques encourus par l’utilisation de GitHub par les projets du Logiciel Libre. Et pourtant l’engouement autour de la forge collaborative de la startup Californienne à l’octocat continue de grandir.
L’octocat, mascotte de GitHub
Ressentis à tort ou à raison comme simples à utiliser, efficaces à l’utilisation quotidienne, proposant des fonctionnalités pertinentes pour le travail collaboratif en entreprise ou dans le cadre d’un projet de Logiciel Libre, s’interconnectant aujourd’hui à de très nombreux services d’intégration continue, les services offerts par GitHub ont pris une place considérable dans l’ingénierie logicielle ces dernières années.
Quelles sont ces critiques et sont-elles justifiées ? Nous proposons de les exposer dans un premier temps dans la suite de cet article avant de peser le pour ou contre de leur validité.
1. Points critiques
1.1 La centralisation
L’application GitHub appartient et est gérée par une entité unique, à savoir GitHub, inc, société américaine. On comprend donc rapidement qu’une seule société commerciale de droit américain gère l’accessibilité à la majorité des codes sources des applications du Logiciel Libre, ce qui représente un problème pour les groupes utilisant un code source qui devient indisponible, pour une raison politique ou technique.
De plus cette centralisation pose un problème supplémentaire : de par sa taille, ayant atteint une masse critique, elle s’auto-alimente. Les personnes n’utilisant pas GitHub, volontairement ou non, s’isolent de celles qui l’utilisent, repoussées peu à peu dans une minorité silencieuse. Avec l’effet de mode, on n’est pas « dans le coup » quand on n’utilise pas GitHub, phénomène que l’on rencontre également et même devenu typique des réseaux sociaux propriétaires (Facebook, Twitter, Instagram).
1.2 Un logiciel privateur
Lorsque vous interagissez avec GitHub, vous utilisez un logiciel privateur, dont le code source n’est pas accessible et qui ne fonctionne peut-être pas comme vous le pensez. Cela peut apparaître gênant à plusieurs points de vue. Idéologique tout d’abord, mais peut-être et avant tout pratique. Dans le cas de GitHub on y pousse du code que nous contrôlons hors de leur interface. On y communique également des informations personnelles (profil, interactions avec GitHub). Et surtout un outil crucial propriétaire fourni par GitHub qui s’impose aux projets qui décident de passer chez la société américaine : le gestionnaire de suivi de bugs.
1.3 L’uniformisation
Travailler via l’interface GitHub est considéré par beaucoup comme simple et intuitif. De très nombreuses sociétés utilisent maintenant GitHub comme dépôt de sources et il est courant qu’un développeur quittant une société retrouve le cadre de travail des outils GitHub en travaillant pour une autre société. Cette fréquence de l’utilisation de GitHub dans l’activité de développeur du Libre aujourd’hui participe à l’uniformisation du cadre de travail dudit développeur.
L’uniforme évoque l’armée, ici l’armée des clones
2. Validité des points critiques
2.1 Les critiques de la centralisation
Comme dit précédemment, GitHub est aujourd’hui la plus grande concentration de code source du Logiciel Libre. Cela fait de lui une cible privilégiée. Des attaques massives par déni de service ont eu lieu en mars et août 2015. De même, une panne le 15 décembre 2015 a entraîné l’indisponibilité de 5% des dépôts. Idem le 15 novembre. Et il s’agit des incidents récents déclarés par les équipes de GitHub elles-mêmes. On peut imaginer un taux d’indisponibilité moyen des services bien supérieur.
L’excuse n°1 des programmeurs pour se lâcher sans scrupules : « GitHub est en panne »
— Hé, au boulot les gars ! — Github est en panne !
— Ah bon, continuez alors.
2.2 Les critiques relatives à l’usage d’un logiciel privateur
Cette critique, avant tout idéologique, se heurte à la conception même que chacun des membres de la communauté se fait du Logiciel Libre, et en particulier d’un critère : contaminant ou non, qu’on résume en général par GPL versus MIT/BSD.
Framanote : MIT/BSD sont des licences permissives, laissant toutes les libertés, même celle de reprendre le code dans un logiciel privateur/propriétaire. Cela correspond à la CC-BY ou à la CC-0 dans les licences Creative Commons.
GPL est une licence copyleft (ou contaminante). Le principe est que tout développement utilisant un code sous licence contaminante doit rester Libre, donc être diffusé sous la même licence. Cela correspond à la mention SA dans les licences Creative Commons.
Les défenseurs du Logiciel Libre contaminant vont être gênés d’utiliser un logiciel propriétaire car ce dernier ne devrait pas exister. Il doit être assimilé, pour citer Star Trek, car il est une boîte noire communicante, qui met en danger la vie privée, détourne nos usages à des fins commerciales, gêne ou contraint la liberté de jouir entièrement de ce qu’on a acquis, etc.
Les tenants d’une totale liberté sont moins complexés dans leur utilisation des logiciels privateurs puisqu’ils acceptent l’existence desdits logiciels privateurs au nom d’une liberté sans restriction. Ils acceptent même que le code qu’ils développent aboutissent dans ces logiciels, ce qui arrive bien plus souvent qu’on ne le croit, voir à ce sujet la liste à couper le souffle des produits commerciaux reposant sur FreeBSD. On peut donc voir dans cette aile de la communauté du Logiciel Libre une totale sérénité à utiliser GitHub. Et ce qui est cohérent vis-à-vis de l’idéologie soutenue. Si vous êtes déjà allé au Fosdem, un coup d’œil dans l’amphithéâtre Janson permet de se rendre compte de la présence massive de portables Apple tournant sous MacOSX.
FreeBSD, principal projet des BSD sous licence MIT
Mais au-delà de cet aspect idéologique pur et pour recentrer sur l’infrastructure de GitHub elle-même, l’utilisation du gestionnaire de suivi de bugs de GitHub pose un problème incontournable. Les rapports de bugs sont la mémoire des projets du Logiciel Libre. Il constitue le point d’entrée des nouveaux contributeurs, des demandes de fonctionnalités, des rapports de bugs et donc la mémoire, l’histoire du projet qui ne peut se limiter au code seul. Il est courant de tomber sur des rapports de bugs lorsque vous copiez/collez votre message d’erreur dans un moteur de recherche. Mémoire précieuse non seulement pour le projet lui-même, mais aussi pour ses utilisateurs actuels et à venir.
GitHub propose d’extraire les rapports de bugs via son API, certes, mais combien de projets anticiperont une éventuelle défaillance de GitHub ou un retournement de situation arrêtant brusquement le service ? Très peu à mon avis. Et comment migrer vers un nouveau système de suivi de bugs les données fournies par GitHub ?
L’exemple de l’utilitaire de gestion de listes de choses à faire (TODO list) Astrid, racheté par Yahoo! il y a quelques années reste un très bon exemple de service ayant grandi rapidement, largement utilisé et qui a fermé du jour au lendemain, proposant pendant quelques semaines seulement d’extraire ses données. Et il s’agissait là d’un simple gestionnaire de tâches à faire. Le même problème chez GitHub serait dramatiquement plus difficile à gérer pour de très nombreux projets, si on leur laisse la possibilité de le gérer. Certes le code reste disponible et pourra continuer de vivre ailleurs, mais la mémoire du projet sera perdue, alors qu’un projet comme Debian approche aujourd’hui les 800 000 rapports de bugs. Une vraie mine d’or d’informations sur les problèmes rencontrés, les demandes de fonctionnalités et le suivi de ces demandes. Les développeurs du projet CPython passant chez GitHub ont anticipé ce problème et ne vont pas utiliser le système de suivi de bugs de GitHub.
Debian, l’un des principaux projets du Logiciel Libre
avec autour de 1000 contributeurs officiels
2.3 L’uniformisation
La communauté du Logiciel Libre oscille sans cesse entre un besoin de normes afin de réduire le travail nécessaire pour l’interopérabilité et l’attrait de la nouveauté, caractérisée par l’intrinsèque besoin de différence vis-à-vis de l’existant.
GitHub a popularisé l’utilisation de Git, magnifique outil qui aujourd’hui touche des métiers bien différents des programmeurs auxquels il était initialement lié. Peu à peu, tel un rouleau compresseur, Git a pris une place si centrale que considérer l’usage d’un autre gestionnaire de sources est quasiment impossible aujourd’hui, particulièrement en entreprise, malgré l’existence de belles alternatives qui n’ont malheureusement pas le vent en poupe, comme Mercurial.
Un projet de Logiciel Libre qui naît aujourd’hui, c’est un dépôt Git sur GitHub avec un README.md pour sommairement le décrire. Les autres voies sont totalement ostracisées. Et quelle est la punition pour celui qui désobéit ? Peu ou pas de contributeurs potentiels. Il semble très difficile de pousser aujourd’hui le contributeur potentiel à se lancer dans l’apprentissage d’un nouveau gestionnaire de sources ET une nouvelle forge pour chaque projet auquel on veut contribuer. Un effort que fournissait pourtant tout un chacun il y a quelques années.
Et c’est bien dommage car GitHub, en proposant une expérience unique et originale à ses utilisateurs, taille à grands coups de machette dans les champs des possibles. Alors oui, sûrement que Git est aujourd’hui le meilleur des système de gestion de versions. Mais ça n’est pas grâce à cette domination sans partage qu’un autre pourra émerger. Et cela permet à GitHub d’initier à Git les nouveaux arrivants dans le développement à un ensemble de fonctionnalités très restreint, sans commune mesure avec la puissance de l’outil Git lui-même.
Centralisation, uniformisation, logiciels privateurs et bientôt… fainéantise ?
Le combat contre la centralisation est une part importante de l’idéologie du Logiciel Libre car elle accroît le pouvoir de ceux qui sont chargés de cette centralisation et qui la contrôlent sur ceux qui la subissent. L’aversion à l’uniformisation née du combat contre les grandes firmes du logiciel souhaitant imposer leur vision fermée et commerciale du monde du logiciel a longtemps nourri la recherche réelle d’innovation et le développement d’alternatives brillantes. Comme nous l’avons décrit, une partie de la communauté du Libre s’est construit en opposition aux logiciels privateurs, les considérant comme dangereux. L’autre partie, sans vouloir leur disparition, a quand même choisi un modèle de développement à l’opposé de celui des logiciels privateurs, en tout cas à l’époque car les deux mondes sont devenus de plus en plus poreux au cours des dernières années.
L’effet GitHub est donc délétère au point de vue des effets qu’il entraîne : la centralisation, l’uniformisation, l’utilisation de logiciels privateurs comme leur système de gestion de version, au minimum. Mais la récente affaire de la lettre « Cher GitHub… » met en avant un dernier effet, totalement inattendu de mon point de vue : la fainéantise. Pour les personnes passées à côté de cette affaire, il s’agit d’une lettre de réclamations d’un nombre très important de représentants de différents projets du Logiciel Libre qui réclament à l’équipe de GitHub d’entendre leurs doléances, apparemment ignorées depuis des années, et d’implémenter de nouvelles fonctionnalités demandées.
Mais depuis quand des projets du Logiciel Libre qui se heurtent depuis des années à un mur tentent-ils de faire pleurer le mur et n’implémentent pas la solution qui leur manquent ? Lorsque Torvald a subi l’affaire Bitkeeper et que l’équipe de développement du noyau Linux n’a plus eu l’autorisation d’utiliser leur gestionnaire de versions, Linus a mis au point Git. Doit-on rappeler que l’impossibilité d’utiliser un outil ou le manque de fonctionnalités d’un programme est le moteur principal de la recherche d’alternatives et donc du Logiciel Libre ? Tous les membres de la communauté du Logiciel Libre capables de programmer devraient avoir ce réflexe. Vous n’aimez pas ce qu’offre GitHub ? Optez pour Gitlab. Vous n’aimez pas Gitlab ? Améliorez-le ou recodez-le.
Que l’on soit bien d’accord, je ne dis pas que tout programmeur du Libre qui fait face à un mur doit coder une alternative. En restant réaliste, nous avons tous nos priorités et certains de nous aiment dormir la nuit (moi le premier). Mais lorsqu’on voit 1340 signataires de cette lettre à GitHub et parmi lesquels des représentants de très grands projets du Logiciel Libre, il me paraît évident que les volontés et l’énergie pour coder une alternative existe. Peut-être d’ailleurs apparaîtra-t-elle suite à cette lettre, ce serait le meilleur dénouement possible à cette affaire.
Finalement, l’utilisation de GitHub suit cette tendance de massification de l’utilisation d’Internet. Comme aujourd’hui les utilisateurs d’Internet sont aspirés dans des réseaux sociaux massivement centralisés comme Facebook et Twitter, le monde des développeurs suit logiquement cette tendance avec GitHub. Même si une frange importante des développeurs a été sensibilisée aux dangers de ce type d’organisation privée et centralisée, la communauté entière a été absorbée dans un mouvement de centralisation et d’uniformisation. Le service offert est utile, gratuit ou à un coût correct selon les fonctionnalités désirées, confortable à utiliser et fonctionne la plupart du temps. Pourquoi chercherions-nous plus loin ? Peut-être parce que d’autres en profitent et profitent de nous pendant que nous sommes distraits et installés dans notre confort ? La communauté du Logiciel Libre semble pour le moment bien assoupie.
Le « lion » du Libre assoupi devant la cheminée (allégorie)
Vous voulez sauver des chatons ? Nous aussi. Tout le monde aime les chatons. Cet article ne vous dira pas comment faire. Mais il vous apprendra (ou vous permettra d’apprendre à votre neveu) comment lire une adresse web. Ce qui est, n’en doutons pas, indispensable lorsque l’on veut sauver des chatons.
Nous avons donc décidé de piller sauvagement le blog Grise-Bouille de Gee, dessinateur libriste, chanteur yukuléliste, et framasoftien chevronné… parce qu’il a dessiné là un article d’utilité publique qui mérite d’être partagé (rappel : si vous ne le faites pas pour vous, faites-le pour les chatons !)
URL über-lue
Aujourd’hui, parlons de l’une de ces nombreuses choses auxquelles on ne prête pas d’attention parce qu’elles semblent trop compliquées… alors qu’elles peuvent nous aider énormément : l’URL.
Je précise que cet article est une introduction pour novice et qu’il ne vise pas l’exhaustivité (on ne parlera pas de protocoles FTP, de ports ou de résolution DNS). En plus, il est déjà assez long comme ça !