ReLucBlog - SIG, MOZILLA & NTIC

Aller au contenu | Aller au menu | Aller à la recherche

jeudi 26 février 2009

Même quand t'utilises pas de MS tu dois payer MS

Microsoft alias MS va poursuivre TomTom pour violation de 8 brevets logiciels, dont 3 concernes Linux, source ZDnet. Et si Microsoft s'attaquait à Google pour violation du brevet sur le Web Mapping, source Baliz ?

Ce problème concerne l'infromatique en général, mais cette fois il touche directement les systèmes d'informations géographiques. Je trouve que l'attaque de TomTom montre bien l'absurdité des brevets logiciels. Tant que votre solution n'est pas lucrative vous êtes tranquille. Par contre si ça marche bien et que vous n'avez pas de brevets dans votre portefeuille, vous risquez de devoir couper des parts du gâteau pour des structures qui n'ont rien à voir avec votre réussite.

J'avais assisté, il y a 3 ans, à une conférence sur les brevets logiciels. Un des intervenants expliquait qu'il déposait des brevets logiciels juste pour être sûr que son concurrent ne vienne pas lui demander des royalties. Il ne considérait pas ceux-ci comme une richesse mais juste un moyen de défense.

Alors que les brevets ont été mis en place pour faciliter le développement de nouvelles technologies et l'enrichissement des connaissances collectives. Les brevets logiciels sont comme des cartes dans un jeu de rôle et les entreprises des rôlistes!

Pour ce qui est du brevet sur le Web Mapping, soit MS a déjà conclu un accord, soit ils sont en discussion et on apprendra peut être un jour que MS poursuit google, soit ils n'ont pas encore estimé que ce brevet valait le coup d'être exploité! Qui vivra verra!

Intrepid Ibex, Firefox et Prism

Je viens de changer de machine et j'ai pu expérimenter l'installation de la version Intrepid Ibex, 8.10, d'Ubuntu. C'est très franchement agréable de pouvoir préparer l'installation à partir d'XP en retaillant le disque dur et d'avoir l'ensemble du matériel supporter.

J'en ai profiter pour tester pour la première fois, le Firefox installé par défaut par Canonical. Il est relooké pour s'intégré parfaitement à Ubuntu. C'est la dernière version stable mise à disposition par Mozilla. Donc théoriquement pas besoin de le télécharger, mais j'ai eu une désagréable surprise avec Prism.

Prism est un projet du Mozilla Labs. Il est disponible sous forme d'une extension à Firefox 3 et il permet de transformer une application Web, en application indépendante du navigateur. C'est en fait une application qui utilise Firefox comme Runtime. J'ai donc ajouter Prism au Firefox d'Ubuntu. Je me suis rendu sur mon application Web favorite. A l'aide du menu Outils > Convert Web site to Application, j'ai transformé mon application Web en application indépendante et créé un raccourci sur le bureau. J'ai alors tester le raccourci qui me lançait un nouveau Firefox mais pas Prism!

Je n'ai pas cherché à savoir pourquoi il y avait une incompatibilité entre le Firefox fournit avec Ubuntu et Prism! J'ai préféré aller droit au but, car je n'avais pas le temps. J'ai donc téléchargé un Firefox fourni par Mozilla, réinstallé Prism, recréé mon application à partir de mon application Web, vérifié que ça fonctionnait, et je n'ai eu aucune mauvaise surprise.

Il est important que les utilisateurs d'Internet aient le choix dans le navigateur qu'ils utilisent lorsqu'ils acquièrent une nouvelle machine. Mais il est tout aussi important que l'on puisse retrouver ses chevaux, au plutôt son Prism. Cela peu paraître un peu extrémiste mais la fonctionnalité que propose Prism est par défaut dans Google Chrome et était considéré comme novatrice. Il me semble donc important que Prism soit compatible avec tous les Firefox!

mardi 24 février 2009

HTML5, CSS3, SVG... La magie du Web Ouvert!

En une semaine les démonstrations de la force du Web Ouvert se sont multiplié, ça commence par Bespin et ça fini par les démonstrations de Paul Rouget.

Bespin est un projet du Mozilla Labs. L'objectif est de démontrer la faisabilité d'un éditeur de code en ligne. L'objectif est de proposer quelque chose de nouveau pour la création de contenu Web, et avec la partie client c'est déjà réussi. Au lieu d'utiliser l'élément textarea ou quelque chose d'autre de compatible avec Internet Explorer, le Mozilla Labs a décidé de s'appuyer sur CANVAS, élément de la norme HTML5, implémenté par la majorité des navigateurs modernes. Daniel Glazman le dit très bien, c'est une innovation perturbatrice, a disruptive innovation!

Ce qui est intéressant avec cette proposition c'est le nombre de réaction, comme celle de Daniel mais aussi et surtout celle de Laurent Jouanneau. Tout comme Daniel, Laurent a été bluffé. Ce qui est intéressant dans cet article c'est la proposition d'un élément standard pour l'édition de code! Et c'est vrai que ça aurait de la gueule. Peut-être que le résultat de Bespin sera la création d'un tel élément.

Je voulais aussi revenir sur la possibilité d'utilisé du SVG pour stylisé des éléments HTML. J'en avais déjà parlé, mais ce qui est nouveau c'est que, dans la prochaine version de Firefox, il sera possible d'utiliser des éléments SVG externes. Ce qui veut dire qu'avec le trio HTML-CSS-SVG, on pourra faire des trucs super sympas, mais n'est ce pas trop ? Pour Daniel c'est même overkill!

Enfin les démos de Paul, où vous pouvez suivre les mouvements de Delphine ou voir Tristan Nitot sur un fond vert! Dans ces démos, Paul a utilisé les éléments CANVAS et VIDEO, DOM Workers et des nouveautés de JavaScript 1.8. Vous pouvez déjà en profiter si vous avez une version beta de Firefox 3.1, ou regarder les screencasts de Chris Blizzard, c'est bluffant!

Pour en savoir plus :

lundi 23 février 2009

En vrac géomatique...

vendredi 13 février 2009

En vrac géomatique...

Comme je n'ai pas le temps de traiter les informations suivantes, je les ai regroupé ci-dessus:

dimanche 8 février 2009

Google Latitude et après...

Google a publié cette semaine une nouvelle version de Google Maps Mobile, la version 3, qui ajoute la fonctionnalité Latitude. Latitude permet à un utilisateur possédant un compte Google Mail de partager sa géo-localisation avec ces contacts.

La géo-localisation de l'utilisateur peut se faire de 3 façons différentes :

  • grâce au GPS si l'appareil en est équipé
  • grâce aux réseaux d'antennes relais
  • grâce aux bornes wifi

La géo-localisation des contacts n'est possible qu'à partir du moment où l'utilisateur et son contact ont validé la mise en relation de leur position. L'utilisateur peut aussi choisir de ne fournir que la ville où il se trouve. Il lui est aussi possible de se rendre invisible. Par contre si l'utilisateur quitte Google Maps Mobile, sa position continuera à être mise à jour, à moins qu'il ne quitte l'application en spécifiant que l'application ne doit plus fournir sa position.

Il est donc possible de suivre la position de ses interlocuteurs sur de nombreux modèles d'appareils (Blackberry, S60 de Nokia, Windows Mobile version 5) mais pas encore sur l'IPhone. Une version est en préparation pour ce modèle. Enfin il est possible de suivre la position de ses contacts sur son ordinateur grâce à un gadget pour sa page iGoogle. D'ailleurs ce gadget permet de mettre à jour sa position.

Mais ceci n'est qu'un nouveau pas vers... Je ne sais pas quoi, mais imaginons un peu ce qui peut suivre!

Tout d'abord étudions les interactions avec FireEagle de Yahoo!. FireEagle est une solution permettant de centraliser l'enregistrement de sa position et de gérer les droits d'accès à cette information. Avec FireEagle, il est possible de recréer Google Latitude, mais pour ce faire il faut fournir le logiciel permettant de visualiser les positions des contacts et de fournir la position de l'utilisateur. A mon avis Google Latitude est plus un concurrent en devenir de FireEagle. L'avantage qu'a Latitude est de proposer de suite une application visuelle du partage de géo-localisation. On peut envisager que Google proposera une API ouvrant les possibilités d'interaction avec Latitude. De plus si on tient compte du fait que le W3C travaille sur une API de géo-localisation permettant à une application Web de demander au navigateur la position de l'utilisateur, la publication d'une API Latitude est très probable, la question c'est quand ?

Ensuite, il y a l'aspect social de Google Latitude. Cet aspect est encore assez peu visible mais le fait de sélectionner ses contacts gmail et de leur fournir une information personnelle est un premier pas vers la construction d'un réseau social. Fred Cavazza dans son article Google Latitude, pas réellement un réseau social mobile montre bien qu'un certain nombre d'opérateur son en avance sur la création d'un réseau social associant une dimension géographique. Il site et présente Dopplr et Brightkite. Mais si on s'intéresse au principaux réseaux sociaux que sont Facebook et MySpace, ceux-ci n'offrent pas encore de fonctions géographiques. Sachant que Google a arrêté dodgeball.com, un réseau social mobile, Latitude est peut être la mise en oeuvre et le test d'un nouveau réseau social mobile.

Enfin il ne faut pas oublier que Google Latitude est fortement orienté mobile. Le nouvel eldorado des acteurs d'internet est le mobile. Google a lancé Android, un système d'exploitation pour mobile. Mozilla travaille sur une version mobile de Firefox, Fennec. Et Apple avec son iPhone a révolutionné la vision que l'on pouvait avoir de l'internet mobile. Avec Latitude, Google montre qu'il est capable de proposer des solutions connectés tirant partie de l'aspect mobile du support, dans le cas présent exploiter la géo-localisation. Google avance donc ces pions dans la perspective d'une explosion de l'utilisation d'internet en condition de mobilité.

Donc a mon avis, Google Latitude est un premier pas vers 3 domaines potentiellement porteurs :

  • la géo-localisation comme information à partager, à exploiter et à diffuser ;
  • le réseau social comme cannal de diffusion ;
  • le mobile comme nouveau de consommation.

Mais n'est pour le moment qu'un test grandeur nature permettant à Google de valider la pertinence de l'association des 3.

Si vous voulez en savoir plus :

samedi 7 février 2009

Sean Gillies et les Web Services de l'OGC

Sean Gillies publie régulièrement des articles pour le développement d'API RESTFull pour les Systèmes d'Information Géographique (SIG). Dans certaines de ses publications, il peut paraître virulent envers les Web Services de l'OGC. Il a d'ailleurs été interpellé sur Twitter à ce propros et de la manière suivante :

@sgillies What's the beef with OGC WMS and WFS?

Et comme sa réponse ne tenait pas dans un tweet (140 charactères), il a rédigé ce post : What's the beef ?

Avant de parler de son problème avec les Web Services de l'OGC, je souhaite revenir sur les articles qui ont fait naître cette intérogation.

Services and web resources

Dans cette article, Sean discute de la différence entre service et ressource web. D'après le W3C, une ressource Web est identifiée par une URI et les agents intéragissent avec elles en envoyant des messages à celles-ci afin (par exemple) d'obtenir une représentation, ce qui peut se représenté ainsi :

Et dans le cas d'un Web Service OGC, la figure donne ceci (Sean utilise le service Geobase comme exemple, puisqu'il est représentatif des Web Service OGC) :

Sean pose donc la question suivante : Est-ce que l'URL de la "resource en ligne" du service (http://www.geobase.ca/wms-bin/cubeserv.cgi) permet d'identifier la ressource du service Web ? La réponse n'étant pas évidente Sean a interrogé cette URL :

 seang$ curl -i http://wms.geobase.ca/wms-bin/cubeserv.cgi?
 HTTP/1.1 200 OK
 Date: Wed, 21 Jan 2009 20:48:08 GMT
 Server: Apache/2.0.52 (Red Hat)
 Connection: close
 Transfer-Encoding: chunked
 Content-Type: application/vnd.ogc.se+xml

 <?xml version="1.0" encoding="ISO-8859-1"?>
 <ServiceExceptionReport version="1.1.3" xmlns="http://www.opengis.net/ows"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.opengis.net/ows ...">
 <ServiceException>
 CubeSERV-35000: Missing REQUEST parameter
 (raised in function handleWmsRequest() of file "main.c" line 422)
 </ServiceException>
 </ServiceExceptionReport>

La réponse étant de type '200 OK', d'après la norme RFC 2616, section 10.2.1, celle-ci est bien la représentation de la ressource identifié par l'url http://www.geobase.ca/wms-bin/cubeserv.cgi. Cette représentation a un contenu de type application/vnd.ogc.se+xml qui est une rapport d'erreur! Donc cette url http://www.geobase.ca/wms-bin/cubeserv.cgi n'identifie pas un service mais un rapport d'erreur du service. Et c'est la même chose pour tous les service Web respectant les normes de l'OGC.

Il se trouve que les Web Services de l'OGC ont été conçu comme une architecture indépendante du Web, même si de nos jours le Web est le principal tuyaux de transmission (middleware, selon Paul Prescod, ou DCP selon la documentation OGC), et que les Online Resource URL (URL de la resource en ligne) ne sont pas réellement des identificateurs universelles au sens du Web.

A mon avis pour que ces URL identifies une resource d'un service, il faudrait que sa représentation liste et présente les services disponibles.

Nanaimo's RESTful GIS

Dans ce billet Sean ne fait que cité un article sur la mise en oeuvre d'une API REST avec MapGuide dans le cadre d'une application géographique pour la ville de Nanaimo. Par contre il utilisera cette démonstration dans le post suivant.

Busting RESTful GIS myths

Dans cette article Sean utilise l'annonce faite par Nanaimo d'un SIG vraiment Web comme une occasion de démonter quelques mythes sur le REST et le Web, et de leur aptitude à concevoir des solutions de rechange à l'architecture des services OGC. Il liste donc quelques mythes et y répond!

  • Les services Web RESTFull ne s'appuient pas sur des normes

Tout d'abord, il faut savoir que le REST est un type d'architecture particulièrement contraignante puisque c'est l'architecture du Wolrd Wide Web et que ce n'est pas une norme mais nécessite et s'appuie sur des normes. D'ailleurs l'interopérabilité dépend des normes, que votre architecture soit RESTfull ou non. Paul Prescod liste les types de normes :

  In application-level networking, there are three basic things to be standardized
 
         * Addressing -- how do we locate objects
         * Methods or Verbs -- what can we ask objects to do
         * Message payloads or Nouns -- what data can we pass to the objects to ask them to accomplish their goals

Dans le cas des services Web RESTfull, les 2 premiers types de normes sont normalisé par le protocol HTTP/1.1. Donc tout le problème de l'interopérabilité des services Web RESTfull se situe dans la troisième catégorie de normalisation : le message à charge utile. Ce qui d'après Sean est une décision consciente. L'intéropérabilité n'est pas quelque chose de parfaitement solvable, mais il est possible d'isolé les problèmes et l'architecture RESTfull aide à les résoudre. Il conseille d'ailleurs à tous de lire l'article de Prescod sur la normalisation, et de passer moins de temps à parler des 'qui' des normes dans les SIG discuter du comment et plus du quoi!

  • Les services Web RESTfull ne sont pas des 'lights out' (lumières) accessibles.

En fait, les services RESTfull sont plus accessibles que les services OGC. Pour illustrer son propos Sean reprends l'analogie avec la lumière. Donc si vous mettez votre client spéciale OGC service dans le noir et qu'il ne trouve rien, Comment allez-vous accédez à votre service OGC ? Vous allez devoir vous battre avec d'autres outils de programmation Web dont aucun ne comprend la logique d'adressage et d'interaction des services OGC. Alors qu'avec un service RESTfull vous pouvez y accéder d'une façon normalisé (grâce au HTTP/1.1) avec curl, XHR ou n'imprte quoi d'autre qui vous fournira la description. Mais en tant que bon geek SIG votre client OGC est fermement attaché à votre service, mais si vous concidérez les autres agents du Web, ils ne peuvent pas les exploiter.

  • REST est trop immature pour les SIG

Le Web est basé sur une architecture REST depuis 1994. HTTP/1.1 a été adopté en 1997. Le Web date de 1990. L'architecture des service OGC n'est pas plus mature.

  • Les services Web RESTfull sont fait pour de petites solutions pas pour des solutions importantes et inter-agent

Le Wolrd Wide Web est notre application connecté la plus importante. Elle est à l'échelle mondiale. L'interopérabilité est assuré par l'utilisation des liens hypertextes. Donc sean pose la question suivante : On peut donc penser que les systèmes di'nformation géographique utilisant la même architecture serait capable d'atteindre la même échelle, non ?

Le résultat de cette article fut la question suivante : Mais quel est le problème avec les services Web OGC ?

What's the beef ?

Dernière article sur le sujet, et pour commencer Sean rappelle que la normalisation de l'OGC a du bon car elle a permis l'interopérabilité des systèmes d'information géographique.

Mais le problème qu'a Sean avec les services Web OGC c'est que leurs architectes n'ont pas fait leurs devoirs sur le Web. Car en dépit du terme Web dans le nom, les services OGC ne s'appuient pas sur l'architecture du Web et n'exploitent pas le protocole HTTP (HyperText Transfer Protocol). Les services OGC exploitent le Web comme un alchimiste comprend et utilise les éléments. On aurait pu éviter de réinventer la roue : "Update Sequence" au lieu d'expiration et validation HTTP, "Web Geolinking Service" au lieu d'une intéraction HTTP standard, ou encore "GeoDDS" au lien d'Atom. En dépit du fait que les Web Services OGC soient conçus pour être neutre du point du vue transport, HTTP est le seul "système distribué" significatif (que les architectures appellent transport). Quelques soient les exemples de service OGC, ils sont tous dépendant du protocole HTTP. Et pour tant il s ne sont pas vraiment Web!

A mon tour

Voilà toute l'histoire, et je partage un certain nombre de ses idées. Il y a d'ailleurs d'autres norme de l'OGC que je concidère comme non adaptée au Web, le GML pour ne pas le citer. Mais j'espère que les recherches et développements (GeoRSS, GeoJSON) effectués par la communauté en dehors de la fondation obtiendront une normalisation indiscutable.

jeudi 5 février 2009

Appel aux dons pour OpenStreetMap

L'équipe d'OpenStreetMap pour être plus précis SteveC, Nick Black et Nick Hill viennent d'installer les premiers vrais serveurs d'OpenStreetMap.

Et ils lancent une campagne d'appel aux dons pour mobiliser 10 000 £ afin d'acheter des serveurs pour la nouvelle version de l'API et de l'application serveur, la 0.6, puisque c'est la 6ème version.

Depuis ces débuts, OpenStreetMap a connue une croissance exponentielle, et il est nécessaire de passer un palier pour que les administrateurs, les développeurs, et nous, qui contribuons, puissions construire la carte la plus détaillé de la planète.

Donc si vous souhaitez soutenir ce projet donner via donate.openstreetmap.org!

Info trouver sur OpenGeoData.

mercredi 4 février 2009

Actu OpenStreetMap

Je commencerais par cette vidéo : OSM 2008: A Year of Edits, trouvée via OpenStreetMap 2008 Edits video, réalisée par ItoWorld et qui retrace l'activité du projet au cours de l'année 2008. Plus de 20.000 personnes ont modifié ou ajouté des détails cette année.


Il est amusant de voir des routes se tracer, des contours administratifs être ajoutés. On peut voir dans la vidéo l'import des données Tiger mais surtout J'ai été étonné de l'activité en Biélorussie. J'ai vérifié. Je ne connais pas Minsk, mais la carte à l'air plutôt complète! La carte libre du monde est en construction et son évolution est très intéressante.

Amélioration du support d'OpenStreetMap dans WorldWindJava. Cette amélioration a été réalisé par un contributeur à partir du code intégrant Virtual Earth dans WWJava.

Tweets cartos : Il est maintenant possible de suivre l'activité d'OpenStreetMap sur Twitter, via les tweets OpenStreetmap et SteveC.

lundi 2 février 2009

Google Earth 5.0 et la concurence

Google vient de publier en grande pompe la nouvelle version de son logiciel de visualisation du globe : Google Earth version 5.0.

Avant de siter quelques évolutions proposer par cette nouvelle version, je souhaiterais revenir sur la concurence.
Le premier est TerraExplorer de Skyline. Cette technologie est exploiter dans la version 3D du géoportail de l'IGN mais aussi à l'agglomération de Montpellier.
Le second est WorldWind, issue des développement de la NASA.
Enfin il y a EarthBrowser, développé avec les technologies Flash.
EarthBrowser chez Fred Cavazza
Si je me permet de revenir sur les autres applications de visualisation du globe, c'est que Fred Cavazza présente EarthBrowser comme une très bonne alternative à Google Earth. Il identifie 2 avantages :

  • l'interface ultralight comme dans WorldWind;
  • le fait qu'il soit basé sur les technologies Flash.

Ce deuxième point est vraiment l'avantage concurentiel de EarthBrowser. Le fait de s'appuyer sur les technologies Flash, dans le cas présent le lanceur d'application AIR, offre une solution théoriquement facilement extensible et facilement adaptable. C'est l'avantage de s'appuyer sur une technologie de type RIA (Rich Internet Application). Mais surtout de facilement portable sur internet sans que l'utilisateur n'ai besoin d'installer un autre plugin que celui d'Adobe, Flash.

Sinon, voici quelques évolutions de la version 5.0 de Google Earth :

  • La possibilité d'explorer les fonds marins (modèle 3D, vidéo, etc) ;
  • La disponibilité en 40 langues ;
  • La consultation d'images historiques, qui permet de consulter l'évolution d'un site ;
  • L'enregistrement de visites virtuelles, l'ajout de commentaires audios, et le partage de ceux-ci ;
  • L'exploitation directe de données GPS, plus besoin de convertir ses données au format KML pour les visualiser.

Pour en savoir plus :