Un projet Open Source, sans entreprise pilote, gratuit pour les utilisateurs, mais comment est-ce possible?
Voilà une question qui revient souvent lors des formations QGIS dans mon établissement, qui montre que ce mode de fonctionnement n’est pas si évident pour le commun des mortels, surtout dans le monde un peu clôt de l’entreprise.
Gratuit pour l’utilisateur oui, mais pas gratuit quand même.
C’est un modèle basé sur le partage et la contribution. Si on veut que ça évolue, que ça réponde à nos besoins, il faut mettre de l’énergie dans un logiciel, quel qu’il soit. Aide toi et la communauté t’aidera, c’est comme ça que ça marche, comme n’importe quel forum en fait.
Contribuer, ça peut-être:
- du temps,
- de l’argent,
- de la mise à disposition de ressources (serveurs, salles, capacités logistiques),
- traduire le logiciel ou sa documentation, essayez, c’est simple et addictif 🙂
- signaler des anomalies en prenant le soin de les rendre reproductible,
- proposer des évolutions,
- financer des évolutions
- devenir un jedi en python et C++ et proposer ses propres évolutions via github
Le tout étant de le faire dans un état d’esprit constructif.
Des bénévoles ou des professionnels impliqués, parfois jours et nuits, répondent rarement à « pourquoi ça existe pas encore, c’est vraiment une honte ! »… A l’inverse on parle rarement dans le vide en disant « Ce serait vraiment sympa de pouvoir faire ça, je suis prêt à mettre 500 euros, quelqu’un est intéressé pour partager les coûts? ». A tel point que parfois, on a même pas le temps de mettre des sous, certains développeurs font le boulot trop vite (mais c’est pas bien, on veut aussi qu’ils vivent sereinement de leur métier pour que ces beaux projets durent et fassent vivre du monde).
Donc, vous économisez grâce à QGIS (postgis, gdal, postgres, firefox, wikipedia, OpenStreetMap)? Alors basculez une partie de ces économies ou de vos ressources pour le faire évoluer. Vous êtes convaincus mais vous ne savez pas par quel bout le prendre? Un don par mois au projet qui vous plaît, ou une contribution à du financement participatif…
Si on reste tous passifs, une dette va se construire petit à petit, qui peut aboutir à la mort du projet, malgré la bonne volonté des volontaires et financeurs.
Alors, comment on s’y prend pour QGIS?
Tout d’abord, la communauté active de QGIS est mondiale, et le langage commun rassemblant le plus de contributeurs reste l’anglais. Paradoxalement, la France est peut-être la plus grande communauté d’utilisateurs, mais vraiment pas la plus grande en termes de contributions. Donc, si on cause anglais, on aura probablement dix fois plus de personnes à même de nous aider, et nos retours d’expérience bénéficieront également à 10 fois plus de gens, y compris dans des pays en développement. Si on veut rester dans le monde francophone, on essaie de ne pas segmenter encore plus les discussions en se cantonnant à des réseaux thématiques ou pire, non ouverts sur le web.
Si comme moi vous travaillez pour une mission de service public, essayez de voir large et de viser la meilleur efficacité économique de cet argent public. Quelle meilleure mutualisation qu’une approche mondiale? Quoi de mieux que voir que son petit plugin python est utilisé au fin fond de l’Afrique pour mieux gérer la forêt équatoriale?
Donc, si on trouve un bug?
- On cherche si quelqu’un n’a pas déjà décrit le souci, d’abord en français, et dans un moteur de recherche. Si on ne trouve rien, on élargit en anglais, ou on demande de l’aide pour ça. Le forum QGIS de Géorezo est un très bon canal pour l’instant.
- Si on a rien trouvé, on cherche à rendre le bug reproductible pour un testeur. Si on y arrive pas, on fait perdre du temps à tout le monde puisqu’il sera très difficile de diagnostiquer ce bug.
- On déclare cette anomalie sur hub.qgis.org. C’est un gestionnaire de tickets de demandes d’anomalies ou d’évolutions. Soyez précis sur le contexte, les versions, fournissez des données permettant de reproduire le souci, et encore mieux, une vidéo pour montrer tout ça, ça va plus vite que 30 lignes de texte pour les cas compliqués.
- On suit de près la discussion qui se déclenchera pour aider les développeurs à corriger le souci.
- Si personne ne le corrige, par manque de priorités ou d’argent, on peut réessayer plus tard, en parler sur les listes, ou financer un développeur directement.
Si le problème est complexe, ou qu’il s’agit d’une évolution un peu lourde, il faut avant tout en discuter sur les listes de discussion. Un bon outil pour les consulter comme un forum est nabble. Ce site est utilisable pour l’ensemble des mailing lists de l’OSGEO.
Bref, je passe par les listes et outils de remontée de bug.
Si malgré tout, vous n’avez aucun retour, posez vous quelques questions:
- ma question était-elle compréhensible ?
- l’ai je posée au bon endroit ?
- était-ce le bon moment pour la poser ? (évitez les vacances d’été ou la semaine de la sortie d’une version, par exemple)
Et n’hésitez pas à réessayer plus tard, avec un autre angle, en illustrant vos propos (rien de mieux qu’une image ou une petite vidéo par exemple).
Et si je veux modifier QGIS en profondeur?
Pour les évolutions plus lourdes remettant en cause de le fonctionnement actuel de QGIS, le projet a mis en place un système pour proposer et discuter des évolutions importantes, les QEP, QGIS Enhancement Proposals.
C’est bien aussi de vous rendre visible des autres sur vos initiatives, ça servira toujours à consolider le projet, à prouver à un DSI réticent que c’est possible, que c’est sérieux et professionnel. Je commence donc au nom de mon employeur:
Voilà un récapitulatif des évolutions que l’agence de l’eau Adour Garonne a pût réaliser depuis le début de notre engagement sur QGIS.
- décompte des objets de la légende dans le composeur
- Contribution au portage du plugin Atlas vers le coeur de QGIS
- Correctifs en masse QGIS 2.0
- Légendes multi-colonnes dans le composeur (QGIS 1.8)
- Outil de calcul des doublons dans les analyses par règles
- Plugin MASK
- Plugin Layer’s menu from project
- plugin Hotlink
- correctif des lenteurs liés aux SHP en réseau
- correctif des lenteurs de l’outil d’identification… qui a abouti à la simplification à la volée pour tout le moteur de rendu. Une petit bug a permis d’aboutir à accélerer par 4 l’affichage… j’adore.
- diagnostic des crash liées aux impressions A0 haute résolution (1.8 > 2.2)
- Mode de rendu par polygones inversés (2.6)
- Assistants pour les symboles de taille proportionnelle ou classifiées avec légende
- Plugin EasyCustomLabeling
- Légende pour les diagrammes (2.10)
- un peu de traduction pour la 2.0
- des TESTS UNITAIRES systématiques (sinon, on passe son temps à corriger le même bug)
- 75 rapports de bug
- 32 demandes d’évolutions..
Et à venir pour 2016, nous finançons une QEP pour refondre l’étiquetage de QGIS et pouvoir ainsi:
- pouvoir stocker nativement des données avec le projet QGIS, sans le plugin Memory Layer Saver
- permettre de dessiner des flèches entre objet et étiquette sans le plugin EasyCustomLabeling
- permettre de gérer des étiquettes proches du concept d’annotation Arcgis, c’est à dire suivant des chemins, des retours à la ligne, sur des emplacements définis.
Une fois les évolutions acceptées et validées nous aurons certainement besoin d’aide pour financer tout ça, c’est un gros morceau!
Nous souhaiterions aussi pouvoir:
- afficher les commentaires de champs de postgres en infobulles au survol des en-têtes de colonne dans les tables attributaires et fenêtres d’identification
- afficher visuellement sur la légende si une couche est masquée à cause d’un seuil de zoom. C’est une question fréquente ici.
- travailler sur les métadonnées des couches et projets, de manière à pouvoir générer des métadonnées ISO propres en utilisant uniquement QGIS comme interface, sans plugin supplémentaire (Un job Talend indexe tout ça).
A bientôt dans la communauté QGIS ( OSGEO en fait, on les aimes tous ces outils)