Open Data: les freins à la réutilisation des données

On entends parler de plusieurs dizaines de milliard d’euros de retombées économiques en Europe grâce à l’Open Data. On parle même de mine d’or !

Bon, il faut se rendre à d’évidence, aujourd’hui point de lingots d’or mais plutôt des lingots de plomb et on cherche toujours la pierre philosophale qui permettra de les transformer en or :-)

A ma connaissance, pas une application utilisant des données publiques n’a permis de rentabiliser son développement, que ce soit par les revenus de sa vente, par les revenus liés à la publicité, par les prix glanés sur des concours ou même par des retombées d’image.

Il y a à cela plusieurs raisons que je souhaite partager.

Attention, je ne prétends pas détenir la vérité, je veux juste partager mon sentiment et mon expérience de citoyen “développeur geek” qui a à son actif une trentaine d’applications web et mobile, en donnant des exemples concrets rencontrés lors de mes développements.

« Une donnée n’a pas de valeur intrinsèque. Elle n’a de valeur qu’au travers d’une interface qui la consommera et la rendra accessible»

Je vais mettre l’accent sur 5 thématiques: la qualité des données, la couverture des données, la licence, l’engagement des fournisseurs et l’accès aux données.

Je ne parlerai pas ici de la quantité de données disponibles au jour d’aujourd’hui pour plusieurs raisons: leur nombre augmente sans cesse et on a déjà de quoi faire avec ce qui est disponible.

  • La qualité des données: c’est critique pour tout développeur qui souhaite créer une application. On trouve plusieurs problèmes de qualité des données: les erreurs dans les données (horaire faux dans un fichier de transport scolaire, une église romane au beau milieu du golfe de guinée équatoriale, …), les trous dans les données ou l’absence de valeurs (absence de la position d’un accident dans un fichier d’accidentologie), la granularité des données (trop de données agrégées qui ne permettent pas une utilisation optimale comme la consommation électrique mensuelle d’une grande ville soit 12 lignes dans le fichier alors qu’on aurai aimé avoir la consommation par jour et par quartier, au minimum), l’absence de coordonnées géographiques (trop d’adresses sans longitude et latitude) et lorsqu’elles sont présentes, utilisation de la projection Lambert 93, voir Lambert II, certes conforme à la réglementation en vigueur en France, mais non utilisable en l’état dans les outils de restitution comme Google Maps et Bing Maps qui utilisent le WGS84 (norme internationale)
  • La “couverture” des données: Ce que j’entends par couverture des données c’est le nombre d’utilisateurs susceptibles d’être intéressés par ces données. En tant que développeur (même si mes applications sont toutes gratuites), ce qui m’intéresse c’est normalement de rentabiliser mon investissement. Autrement dit, vendre le plus possible mon application. Si je développement une application sur les parking de Nantes, ce qui du reste a déjà été fait, je vais intéresser uniquement, ou presque, les Nantais, ce qui ne va pas me permettre de rentrer dans mes frais. Si maintenant, j’utilise la même application sur différentes villes, il est possible que je puisse la rentabiliser. Encore faut-il que les données publiées dans les différentes villes ne me demandent pas trop d’adaptation : problème de structure des données, de projection géographique, … (à quand une homogénéisation des structures de données au niveau national ?). Le must est d’avoir des données à portée internationale : des données sur le vin de bourgogne grâce auxquelles je pourrais vendre une application aux américains, chinois, japonais, … tous amateurs de vin français, des données touristiques sur les sites les plus visités, … Il faut bien constater qu’aujourd’hui, très peu de jeux de données ont un potentiel international
  • La licence : vous allez me dire « que vient faire la licence dans ce propos ? ». En fait, la licence peut aussi être un frein à la réutilisation de données. Je vais prendre l’exemple de données qui pour être de portée internationale demandent à être travaillée : le parle ici de l’historique et origine des noms des voies à Paris qui pourrait potentiellement intéresser les millions de touriste qui visitent notre capitale. Comme vous le savez, on peut classer en deux catégories principales les licences utilisées aujourd’hui : la licence qui ne demande que l’indication de l’origine des données, et la licence qui, en plus de  nommer l’origine des données, oblige à restituer à le communauté toute modification, adaptation du jeux de données. Cette deuxième licence est souvent utilisée pour ne pas privilégier les grosses compagnies qui ont les moyens d’investir, et qui, en devant se plier à la licence, seront obligées de partager les données modifiées. Maintenant, reprenons notre exemple des données sur l’origine et historique des noms de voies à Paris. Je suis entrepreneur et souhaite fournir une application dans plusieurs langues. Je vais donc prendre le jeu de données, payer des traducteurs pour traduire les presque 6000 textes, développer mon application puis la vendre. Sauf que la licence m’oblige à partager tout travail effectué sur ces données. Ce qui fait que quelqu’un va pouvoir bénéficier de toutes les traductions, sans dépenser un seul € et vendre son application moins chère que la mienne qui m’a nécessité un investissement important de traduction. Où se trouve mon intérêt ? Attention, je ne dis pas ici que telle ou telle licence est mieux qu’un autre mais il faut tout de même poser la question.
  • L’engagement des fournisseurs : engagement sur la continuité de service, pas sur la haute disponibilité, simplement sur le fait que les données continueront d’être publiées et mises à jour. Admettons qu’un jeu de données sur le Bourgogne soit disponible. Je fais une application à vocation internationale sur ces données que je vends à 2 millions d’exemplaires. Du jour au lendemain l’entité publique ayant libéré ces données décide soit d’arrêter tout simplement la publication de ses données, soit de ne plus les mettre à jour. Et dans ce cas, comment gérer 2 millions d’utilisateurs mécontents qui ont acheté une application qui se trouve du jour au lendemain inutilisable ? En tant que développeur, je ne demande pas un engagement écrit mais au moins moral.
  • L’accès aux données : la majorité des données sont publiées sous forme de fichiers plats et sous différents formats tels que CSV, XLS, PDF, KML, SHP, … En aucun cas je parlerai des formats de fichiers ouverts ou pas, car le débat n’est pas là. Un développeur saura toujours utiliser un fichier quel que soit son format. Pour la petite histoire, j’ai même pu utiliser des fichiers au format Shape grâce à un service trouvé sur internet qui me transformait les fichiers Shape en CSV ou KML et qui, en plus, transformait les coordonnées Lambert II ou 93 en WGS84. Bref, le soucis sur l’utilisation de données publiées en fichier plat ne vient pas du format du fichier mais du fait que les données soient publiées de cette façon. En tant que développeur, si je veux faire une application mobile sur des données publiées dans un fichier, j’ai deux choix : soit je republie les données sur un serveur et j’y accède via API depuis mon application, soit je télécharge les données sur les smartphones de mes utilisateurs pour que mon application accède aux données en local. Oui mais si jamais le fichier d’origine est mis à jour. Comment le savoir ? pourquoi imposer à mes utilisateurs un téléchargement de fichier sur leur smartphone à chaque mise à jour du fichier d’origine, qui pour un fichier d’évènements locaux, peut se faire plusieurs fois par jour ? En fait, l’Open Data c’est bien, mais l’OpenAPI c’est mieux ! L’accès directe aux données d’origine via API ou protocole, c’est le must pour le développeur. Plus de données à recopier, plus de soucis de mise à jour. On accède toujours aux dernières données publiées. Maintenant entre API et protocole d’accès, je choisi le protocole par qu’il est unique et parce qu’il y a autant d’API qu’il y a de jeux de données. On trouve aujourd’hui deux protocoles : le RDF/SPARQL et d’oData. Personnellement, je ne trouve pas le premier très adapté à l’Open Data autant je trouve l’oData simple d’utilisation. Toutes mes applications sont basées sur ce protocole et utilisent le format JSON. Les sites du CG71, Bouche du Rhône Tourisme, la ville de Versailles et la ville de Bordeaux proposent un end point oData. Certains de ces sites mettent à jour les données quotidiennement sans que j’ai  m’en soucier pour mes applications qui utilisent toujours les dernières données. Aussi, c’est pourquoi je milite pour l’OpenAPI !

Vous l’aurez lu, je ne prétends pas répondre à toutes les problématiques. Je souhaitais juste les partager avec vous.

Sachez que: En tant qu’élu de ma commune, je suis convaincu du bien-fondé de l’Open Data. En tant que citoyen, j’attends des applications qui m’aideront dans la vie de tous les jours. Et en tant que développeur, j’attends que certaines barrières soient levées afin de créer des applications pour le citoyen sur des données libérées par les élus !

About Fredrom

Après avoir travaillé plus de 22 ans chez Microsoft, dont 4 sur l'Open Data, j'ai décidé qu'il était temps pour moi de proposer mon expérience et expertise au travers de ma propre structure. J'ai donc créé la société TELISoft dont la mission principale est d'accompagner les projets Open Data et de proposer une solution en ligne Open Data (mode SaaS) ... En parallèle, je me suis associé avec AXISCOPE pour développer une solution de Démocratie Participative disponible en ligne. C’est un autre sujet qui me tient à cœur, principalement en tant que conseiller municipal depuis 2001.
This entry was posted in Applications. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s