Posts Tagged ‘communitymeeting’

-->

Retour du QGIS Community meeting 2012 @ Essen

Jeudi, 11 Octobre 2012

La nouvelle édition de la rencontre des développeurs QGIS, ou «QGIS community meeting»  a eu lieu du 3 au 7 octobre 2012, à Essen en Allemagne. Il s’agit d’un moment privilégié pour la communauté pendant lequel les développeurs peuvent échanger dans un même lieu et faire le point sur les projets actuels et futurs. Pour cette édition, le HackFest est hébergé au LinuxHotel de Essen. Un lieu au calme, dans un cadre arboré, conçu spécialement pour l’épanouissement des développeurs pendant leurs quelques jours passés devant un écran. L’hôtel est sponsor de l’événement en offrant de très bonnes conditions d’hébergement pour le projet. L’événement est également sponsorisé par OSGEO et FOSSGIS e. V.

Les organisateurs locaux sont, pour cette édition, GDB Consult et SourcePole.

LinuxHotel, Essen

LinuxHotel, Essen

qgis_hackers

Hackers vaillants ...

Contrairement à l’édition précédente, il y a eu peu de présentations, voici cependant un résumé des principales discussions et présentations communes.

Raster pipes

Radim Blazek a présenté la nouvelle architecture relative à la prise en charge des couches de type “raster” dans QGIS. Il s’agit pour l’essentiel d’un refactoring du code de QGIS pour ce qui a trait à la gestion des couches raster. Le code correspondant était jusqu’à présent difficile à appréhender et en constante évolution en terme de nombre de lignes de code.

La modification introduite par Radim consiste à considérer les traitements raster depuis les sources de données jusqu’à leur visualisation sous forme d’un ensemble d’opérations (de filtres) à l’interface générique enchaînées à travers un pipeline. chaque chaînon recevant les données traitées par le chaînon précédent. Cette modification engendre un code plus compact et plus extensible qu’auparavant.

Par exemple, pour une tâche de visualisation d’une couche raster, la chaîne mise en oeuvre est la suivante :

Provider -> Renderer -> Resampler -> Projector

Chacun des maillons ne modifiant les données ou n’allouant de nouvelle zone mémoire que quand ceci est nécessaire.

Cette architecture permet d’envisager un enrichissement des fonctionnalités offertes à chacun des maillons de la chaîne. En particulier, il a été évoqué l’ajout de paramètres utilisateurs pour chaque filtre et leur déclinaison sous forme d’interface graphique ainsi que le lien possible avec Sextante.

Voir la présentation sur Youtube

Point sur les finances

Paolo Cavallini a présenté un résumé des finances du projet QGIS. Les dépenses en matière de hackfest ont été relativement fixes jusqu’à présent et permettent d’accueillir dans de bonnes conditions une trentaine de contributeurs. Par ailleurs un nouveau « Gold Sponsor », la société Asia Air Survey qui a fait don de 9000€ permet d’envisager sereinement les prochains Hackfest.

Des discussions ont eu lieu quant à la possibilité de faire financer le développement de nouvelles fonctionnalités ou de travaux de fond par la communauté des utilisateurs. Les groupes d’utilisateurs de QGIS semblent constituer sur ce point, une structure efficace. L’expérience positive du groupe suisse d’utilisateurs de QGIS serait donc à multiplier dans d’autres pays.

Un autre point récurrent est la prise en charge des dons « ciblés » pour le développement d’une fonctionnalité particulière. Il a été décidé de formaliser les demandes de financement collaboratif lorsqu’elles émanent de la communauté QGIS, via des plateformes web existantes, qui restent à déterminer.

Nouvel éditeur d’attributs

La ville d’Uster a présenté une proposition concernant une modification substansielle de l’éditeur d’attributs de QGIS. Il s’agirait de prendre en compte la structure relationnelle de la couche de données sous-jacente. Notamment lorsqu’une table contient des relations avec d’autres tables (relation 1:N qui est généralement représentée dans une base de données via une contrainte de clé étrangère). L’interface graphique serait enrichie et permettrait à la fois d’avoir connaissance des éventuels champs externes liés à un champ et de les éditer.

Les premières moutures devraient se concentrer sur les sources de données qui supportent intrinsèquement la notion de relation entres tables (PostGIS par exemple), bien que des discussions en off aient abordé le possible support des relations qu’il peut exister entre différents Shapefile.

La proposition détaillée est disponible en ligne sur Google Docs.

Integration d’Atlas

print_composer_atlas

Oslandia travaillait depuis quelques jours sur l’intégration du plugin Atlas dans le coeur de QGIS, grâce à de nombreux supports financiers. Ce travail a été terminé pendant le Hackfest et a été intégré avec succès dans le coeur de QGIS ! Des échanges fructueux avec Marco Hugentobler ont permis d’améliorer au passage la qualité du code.

La fonctionnalité de génération d’atlas fait maintenant partie intégrante du gestionnaire de composition de QGIS.

Elle a par ailleurs été enrichie par :

  • le support d’un mode de rendu à échelle fixe,
  • le support des expressions dans les étiquettes et les noms de fichiers de sortie (seul le champ $FIELD(xxx) était supporté par le plugin Python)

Un tutoriel plus complet sur ces nouvelles fonctionnalités est consultable en ligne.

Remote debugger

Pirmin Kalberer a présenté un plugin permettant de débugger aisément un plugin Python pour QGIS, via l’utilisation de pydev, sans avoir à modifier le plugin en question.
Il permet essentiellement de placer des points d’arrêts dans le code Python. L’exécution est également suspendue lorsqu’une exception est levée. Cette possibilité de « remote debugging » est cependant dépendante de l’environnement de développement utilisé (fonctionne a priori uniquement pour Eclipse et ERIC4).

Plugin Globe

Pirmin a également travaillé sur le plugin Globe qui permet l’affichage d’un globe terrestre dans QGIS en utilisant osgEarth. La compilation est maintenant de nouveau fonctionnelle sur la version courante du master sous Linux ainsi que sous Windows.

Gestion des contributions

Les nombreuses contributions au projet QGIS sont une bonne chose, mais il se pourrait que les retours faits aux contributeurs soient en peu frustrants. En particulier, il peut se passer un certain temps avant qu’un « pull request » sur github soit traité par les développeurs de QGIS. Afin de rationnaliser un peu le processus et de donner un peu plus de retour aux contributeurs sur le traitement de leurs ajouts, il a été proposé qu’une seule personne soit chargée de l’aiguillage central des soumission de patchs, en les affectant si nécessaire à d’autres développeurs.

Marco Hugentobler s’est proposé pour l’exécution de cette tâche.

Architecture tentaculaire

L’ensemble des serveurs et sites web gérés par le projet QGIS devient difficile à appréhender. Une tentative d’énumération exhaustive des serveurs et de leur localisation a été initiée avec les différents participants au Hackfest. L’image suivante donne une idée de la complexité actuelle de l’architecture.

qgis_web_servers

Organisation

L’organisation globale de l’événement a été saluée par l’ensemble des participants. Le Linux Hotel étant un lieu idéal pour un tél événement. La prochaine édition pourrait avoir lieu en Lettonie. Espérons que nous puissions de nouveau y être afin de continuer à améliorer Quantum GIS !

group

10e rencontres de la communauté QGIS (partie 3)

Mercredi, 25 April 2012

Le dixième Community Meeting de Quantum GIS (aka HackFest) s’est achevé la semaine passée. Après quelques jours pour se remettre de ces émotions codesques, voici la troisième et dernière partie d’un petit compte rendu (non exhaustif) de ce qui s’est déroulé pendant ce rendez vous de développeurs. Nous nous focalisons ici sur les aspects projet et structure de QGIS.

Nouveau cycle de releases

Tim Sutton a proposé de modifier l’organisation des sorties de nouvelles versions de QGIS, pour migrer vers des releases à dates fixes tous les 6 mois, en incluant une période de 3 semaines de test avant la release.

Serveur de test

Tim Sutton et Julien Malik ont également passé du temps sur la mise en place d’un serveur CDash, qui permet de remonter les informations de build de QGIS, afin de détecter les erreurs des tests unitaires sur des architectures les plus diverses possibles. C’est une avancée importante pour la qualité et la stabilité du projet, et devrait mener à une augmentation significative de la qualité du code.

«Friendly courses»

La notion de QGIS «friendly courses» a été introduite par Paolo Cavallini lors du meeting. Il s’agit de recenser sur la page wiki dédiée du projet, toutes les entreprises qui donnent des sessions de formation autour de QGIS et qui en contrepartie contribuent au projet QGIS : financement, développement, traduction…

Cette initiative permettra de sensibiliser à la fois les entreprises proposant des formations QGIS, mais aussi leurs clients, à l’écosystème Opensource. Ces derniers pourront ainsi en toute connaissance de cause favoriser les formations qui font avancer le projet.

Bien sur, en tant que contributeur de QGIS, Oslandia soutient cette initiative pour toutes ses formations liées à QGIS.

Last but not least

Le community meeting est aussi une opportunité pour les développeurs de mettre des visages sur des identifiants Git, et une soirée dans un vrai bouchon Lyonnais a permis de socialiser dans un contexte local et sympathique.

Le hackfest n’aurait pas pu voir le jour sans l’équipe d’organisation de l’OSGeo-fr, et sans les sponsors qui ont payé la salle, les pizzas, tacos, et quelques bières : 3Liz, Services Cartographiques, Camptocamp et Oslandia. Merci à eux pour leur participation nécessaire à l’avancée du projet !

10e rencontres de la communauté QGIS (partie 2)

Mardi, 24 April 2012

Le dixième Community Meeting de Quantum GIS (aka HackFest) s’est achevé la semaine passée. Après quelques jours pour se remettre de ces émotions codesques, voici la seconde partie d’un petit compte rendu (non exhaustif) de ce qui s’est déroulé pendant ce rendez vous de développeurs.

Sextante (ou : Geotraitements dans QGIS)

Un des gros sujet sur lesquels se sont concentrés les développements étaient l’intégration d’un plugin Sextante dans QGIS. Sextante est un framework, originellement disponible sous GvSig, qui se concentre sur les géotraitements. Il a été transcrit en Python par Victor Oyarla, et rendu disponible sous forme de plugin pour QGIS.


Ce framework permet de développer et d’intégrer très rapidement de nouveaux algorithmes de traitement raster ou vecteur. Victor a présenté son travail très impressionnant, avec les quelques modules déjà disponibles pour ce framework : GDAL, Ftools, Grass.. Et aussitôt de nouveaux modules se sont mis en route. La liste s’allonge chaque jour, et on trouve actuellement les modules suivants :

  • GDAL (Raster)
  • Ftools (Vecteur)
  • SAGA
  • mmqgis
  • GRASS (traitement raster et vecteurs)
  • OrfeoToolBox (Télédétection)
  • LAStools (Lidar)
  • R (geostatistiques)
  • Scripts

De futurs modules sont en cours de développement : PostGIS, WPS..

Cerise sur le gâteau, Sextante dispose également d’un modeleur, qui permet de faire des enchaînements de traitements complexes, en couplant les algorithmes de modules hétérogènes. On peut également lancer ces modèles en batch, et les utiliser en Python hors de l’interface graphique.

Il ne fait aucun doute que ce framework permettra à QGIS d’être le SIG disposant du plus grand nombre d’algorithmes de géotraitement sur le marché.

Ses capacités lui confèrent déjà quasiment le statut d’ETL spatial. Quand on sait que Victor va encore travailler neuf mois sur le sujet et que l‘inclusion dans le master de QGIS est déjà prévue, on ne peut que se réjouir et parier sans risque sur un outil stable, robuste et puissant rapidement.

Vous pouvez voir la vidéo de présentation de Victor : QGIS Sextante plugin

En attendant que le plugin soit intégré directement dans le cœur de QGIS dans la prochaine version, vous pouvez le télécharger et l’installer à partir du dépôt des plugins ou du dépôt de code subversion. Le tout est détaillé dans la page du plugin sur le projet QGIS.

À lyon, Julien Malik en a profité pour intégrer OTB dans Sextante, qui fournit désormais une panoplie large d’algorithmes de télédétection. Vous pouvez lire la description sur son blog (en anglais).

Des plugins dans le master

Il a été décidé suite à la rencontre d’intégrer des plugins Python directement dans le master de QGIS. Cela ne pourra se faire qu’à certaines conditions. Le premier plugin concerné est le DB Manager (Gestionnaire de bases de données). Cet outil gère les bases PostGIS et spatialite et permet notamment de transférer des tables de données d’une base à une autre.

Plugin Atlas

Des améliorations ont été faites par Oslandia sur le plugin Atlas, qui permet de générer des cartes au format PDF. La société Biotope a également publié un plugin compagnon qui permet de générer des synoptiques pour le plugin Atlas. Nous recherchons actuellement des financements pour ajouter de nouvelles fonctionnalités et pour stabiliser le plugin Atlas afin de pouvoir l’intégrer directement dans le master QGIS : contactez nous si vous utilisez ce plugin !

Nouvelles fonctionnalités dans le master

QGIS master supporte désormais nativement les styles SLD. Un pas de plus vers une interopérabilité avec les autres outils SIG du marché.

Le rééchantillonnage de raster a été réécrit en grande partie par Marco Hugentobler, et il est désormais possible de choisir la méthode d’échantillonnage pour le rendu (plus proche voisin, moyenne, cubique, etc). Les rendus sont bien plus lisses lorsqu’on dézoome sur une zone fortement détaillée. Ceci au prix d’un temps de rendu un peu plus long, mais la différence n’est pas significative.

Hugo Mercier d’Oslandia a ajouté dans QGIS la fonctionnalité de copier-coller des styles d’une couche QGIS à une autre. Le patch a été commité et est désormais disponible dans le master.

10e rencontres de la communauté QGIS (Partie 1)

Lundi, 23 April 2012

Le dixième Community Meeting de Quantum GIS (aka HackFest) s’est achevé la semaine passée. Après quelques jours pour se remettre de ces émotions codesques, voici la première partie d’un petit compte rendu (non exhaustif) de ce qui s’est déroulé pendant ce rendez vous de développeurs.

La rencontre, organisée par l‘OSGeo-fr, a commencé jeudi 12 midi, dans les locaux de l’université de médecine à Lyon. Les premiers participants sont arrivés dans l’après midi, et se sont mis directement au travail.

L’évènement a rassemblé une trentaine de personnes et était sponsorisé par Camptocamp, 3Liz, Services Géographiques, et Oslandia, qui ont permis d’accueillir tout le monde dans les locaux et de s’assurer que les développeurs ne manquent ni de café ni de pizzas pendant ces journées.

Ci dessous la première partie des sujets qui ont été abordés pendant ce community meeting.

Documentation

Un gros travail de refonte a commencé sur la documentation utilisateur de QGIS. L’objectif est de faire une transition du format LaTeX vers le format ReST pour utiliser Sphinx afin de générer la documentation. Une transcription automatique a commencé, mais il reste encore beaucoup de travail manuel pour finaliser la transition. Le travail avance vite cependant, et des volontaires se présentent spontanément pour donner un coup de main.
Un nouveau style ReST a aussi été intégré, et devrait harmoniser désormais toutes les documentations de QGIS.
Cette transition s’accompagne aussi d’un nouveau système de traduction de la documentation utilisateur, dont l’objectif est de la rendre accessible au plus grand nombre.


Ce travail très important a été mené par l’équipe de documentation du projet QGIS. Une grosse partie a été achevée pendant la rencontre, et les travaux continuent en ce moment sur le projet. N’hésitez pas à apporter votre contribution !

QGIS Workshop en français

Oslandia a libéré la traduction française du workshop «Développer des plugins Python pour QGIS». Il reste un peu de travail pour harmoniser le document avec la documentation générale de QGIS, mais déjà des corrections ont été faites et la traduction est disponible sur GitHub : https://github.com/qgis/QGIS-workshop . Une traduction en italien a également été lancée à la suite.

QGIS Mobile

QGIS Mobile fait beaucoup parler. Depuis le début du développement par Marco Bernasocchi pour le Google Summer Of Code l’été dernier, de nombreux progrès ont été accomplis. Désormais QGIS tourne correctement sur Android, tablet ou smartphone. Le dernier point manquant est le support du Python, afin de pouvoir utiliser les plugins et de développer pour QGIS dans ce langage. Des avancées ont été faites à Lyon, et on s’achemine vers un support complet de QGIS sur cette plateforme.

La prochaine étape est désormais de réaliser une interface graphique QGIS spécifique pour les plateformes mobiles. En effet, hormis sur les grandes tablettes, l’interface de QGIS, prévue pour être utilisée sur un ordinateur classique, n’est pas adaptée pour le matériel que l’on trouve sur les tablettes et smartphones. Il faut donc redévelopper une interface. Ce travail a été proposé pour le Google Summer Of Code 2012, et (EDIT : le projet est accepté, ce qui devrait être le cas sauf surprise), une première version devrait voir le jour à la rentrée de septembre.

La suite des progrès effectués sur QGIS sera dans une prochaine entrée ici-même. Si vous souhaitez avoir plus d’information sur le projet QGIS, sur les formations disponibles, ou sur les prestations d’Oslandia autour de QGIS, n’hésitez pas à nous contacter !