Faut-il savoir programmer pour être géomaticien?

Au sein d’une université, d’une collectivité, d’une association ou d’une société, le géomaticien -en tant que professionnel de l’utilisation des données géographiques- a des missions diverses qui peuvent être la recherche, l’enseignement, la formation, l’assistance et/ou la production. Cette variété de missions répond à des besoins spécifiques exprimés à l’intérieur ou à l’extérieur de la structure. L’utilisation de logiciels de Systèmes d’Informations Géographiques (SIG) et de télédétection aide le plus souvent à atteindre les objectifs fixés. En effet, dans la majorité des formations SIG et de télédétection, on enseigne assez largement la manipulation des logiciels -souvent propriétaires- mais il est plus rare que des projets de conception et de développement soient demandés aux étudiants. Alors, cette observation reflète-t-elle les besoins du marché du travail? Est-il préférable de connaître des langages de programmation pour être un(e) professionnel de la géomatique qu’on soit enseignant/chercheur, chef de projet, ingénieur, architecte, manager, technicien cartographe ou entrepreneur? Pour répondre à ces questions, cet article présente certains atouts liés à la connaissance des langages de programmation dans la gestion et l’analyse des données géographiques. Ces langages sont ensuite évoqués pour les principales utilisations en géomatique Open Source.

1. Connaître des langages de programmation présente des avantages certains en SIG

1.1. S’adapter aux besoins et optimiser son travail

La programmation informatique est avant tout un langage et comme pour tout langage, nos raisonnements et nos actes sont totalement modifiés. Que ce soit pour la musique, les langues, les mathématiques, l’apprentissage demande toujours un peu de temps puis lorsque notre cerveau a imprégné les techniques et les concepts du langage, notre mode de penser est automatisé et nos actes sont beaucoup fluides. Cette maîtrise permet tout d’abord de répondre rapidement à des situations puis de concevoir et de créer de nouvelles choses : une partition, une association de mots, une théorie, un code, etc.

Dans le domaine de la géomatique, la problématique est similaire : comment résoudre ce problème? Comment vais-je cartographier mille situations géographiques en 1h? Comment vais-je traiter statistiquement un million de données satellitaires en 2h? Comment vais-je créer ce site internet avec une cartographie dynamique?

Après une phase analytique, l’objectif principal est bien de reproduire une tâche de base le plus rapidement possible et cette reproductibilité n’est possible que grâce à l’automatisation informatique. Comprendre un langage sert aussi à mieux appréhender les logiciels “presse boutons” et par extension à mieux utiliser les données géographiques. Cela permet enfin de répondre aux besoins et offrir de nouveaux services : le langage informatique est souvent à la base de l’innovation en SIG.

 1.2. Un atout pour le Marché du Travail

Les avantages pré-cités sont connus de tous et ils sont les sources de nombreuses opportunités de marché pour les entreprises. Il n’y a qu’à lire les offres d’emplois pour observer que la programmation est devenue un atout indéniable en SIG. La vidéo ci-après résume parfaitement cette observation :

Source : Le Monde, Novembre 2017.

Il est intéressant de souligner que Léo Casagrande envisage de sortir de la programmation pour quelque chose de “plus humain”. Et oui, le risque majeur est de s’enfermer dans une “bulle technique” pour continuellement suivre les évolutions des technologies et s’évertuer à créer et à innover. C’est pourquoi il est important de définir ses objectifs d’un développement au préalable. Personnellement, je pense que le code doit au contraire vous permettre de vous libérer de nombreuses charges. Certes, il y a les phases plus ou moins longues où vous codez, les corrections et les évolutions au fil du projet mais si vos objectifs sont définis, l’automatisation et la programmation des tâches doivent faire la majorité du travail.

2. Quels langages de programmation maîtriser en SIG?

Pour répondre à cette question, j’ai choisi de regrouper les langages de programmation en fonction de quatre types d’utilisation en SIG : l‘analyse de données géographiques, le développement logiciel, les développements web et mobile. Ces informations peuvent être synthétisées dans la matrice ci-après :

Langages informatiques
C C++ C# Java Python PHP Perl Ruby JavaScript R
Analyse de données géographiques x x x x x x x
Développement logiciel x x x x x x
Développement web x x x x x x
Développement mobile x x

SQL n’est pas pris en compte ici puisqu’il est relatif aux bases de données relationnelles. J’ai peut-être omis un langage et je vous remercie de m’en faire part. Selon la typologie considérée ici, on s’aperçoit que Java et Python répondent à de nombreuses situations en SIG. Ces langages sont d’ailleurs souvent utilisés pour élargir les fonctionnalités des logiciels comme QGIS par exemple.

En conclusion, il n’existe pas une seule manière d’appréhender la Géomatique et il est donc impossible de juger les compétences d’un géomaticien selon sa maîtrise ou non d’un langage de programmation. Cela dépend bien évidemment de son domaine d’application et des ses objectifs. Mais, le développement informatique répond à des besoins grandissants et offre de telles perspectives qu’il est pour beaucoup un savoir-faire indispensable à acquérir. Développement de Business, d’automatisation, d’analyses de données géographiques… les possibilités de projets et de créations sont immenses et ne demandent qu’à être réalisées! A vos scripts…

Taggé , , .Mettre en favori le Permaliens.

A propos Florian Delahaye

Fondateur et administrateur du site Geomatick.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *