Google Developer Day Paris 2008

Jeudi 18 septembre 2008, s’est tenu à l’**ENSA Paris** et pour la deuxième année consécutive le [Google Developer Day](http://code.google.com/intl/fr/events/developerday/2008/home.html). L’occasion pour la société de Mountain View de présenter, à plus de 300 développeurs, ses principales APIs.
Cette année, l’accent a été mis sur le nouveau système d’exploitation libre pour Smartphone : Je veux bien sur parler d’[Android](http://code.google.com/android/) et sur les APIs [OpenSocial](http://code.google.com/apis/opensocial/) qui permettent une interopérabilité entre les réseaux sociaux à partir du moment ou ils les supportent. L’événement a aussi été l’occasion pour Google de présenter ses outils [App Engine](http://code.google.com/appengine/), [GWT](http://code.google.com/webtoolkit/), [Gears](http://gears.google.com/), [Maps](http://code.google.com/apis/maps/), [Docs](http://code.google.com/apis/documents/overview.html), [Google Data](http://code.google.com/apis/gdata/) et son tout nouveau navigateur [Chrome](http://www.google.com/chrome).
### ***Android***
En ce qui concerne le nouveau système d’exploitation, rien de vraiment neuf, les membres de l’[Open Handset Alliance](http://www.openhandsetalliance.com/) créé il y a un an à l’initiative de Google travaillent toujours sur le lancement d’appareils mobiles sensés concurrencer les leaders du marché ([Windows Mobile](http://www.microsoft.com/windowsmobile/6-1/default.mspx) et [Symbian OS](http://www.symbian.com/)). La disponibilité du premier Smartphone reste toujours annoncée pour octobre 2008 et il semble que le Taiwanais [HTC](http://www.htc.com/Fr/) avec le [HTC Dream](http://htcdream.com/) sera le premier à ouvrir les hostilités.
En revanche, il est dès aujourd’hui possible de développer des applications pour Android. La version 0.9beta du [SDK](http://code.google.com/android/download.html) est en effet disponible depuis août dernier pour les plateforme Windows, Linux et Mac OS. Dans le cadre de la présentation, Christophe Petit a témoigné de son expérience sur le projet [Piggyback](http://www.piggybackmobile.com/) qui a récemment obtenu un prix aux [Android Developer Challenge](http://code.google.com/android/adc.html).
### ***OpenSocial***
OpenSocial nous a été présenté lors de la keynote matinale mais je n’ai malheureusement pas assisté au codelab qui a suivi. Le principe est le même que lorsque l’on développe une application pour [Facebook](http://fr-fr.facebook.com/). La différence est que l’API de Google se veut interopérable entre différentes plateformes de réseau social. Google annonce que : « Développer avec OpenSocial donnera accès aux membres de [iGoogle](http://www.google.com/ig), [LinkedIn](http://www.linkedin.com/), [MySpace](http://www.myspace.com/), [Ning](http://www.ning.com/), [Orkut](http://www.orkut.com/) … ».
Concrètement, cela signifie qu’une application OpenSocial sera capable, à terme, de toucher plus de 300 millions d’utilisateurs. Au niveau français, la société [Viadeo](http://www.viadeo.com/) a profité de l’événement pour annoncer que sa plateforme de réseau professionnel est d’ores et déjà compatible.
### ***App Engine***
App Engine est à la fois une plateforme d’hébergement d’applications web et un ensemble d’APIs. En effet, moyennant le téléchargement d’un [SDK](http://code.google.com/appengine/downloads.html), il est possible de créer, très facilement et en local, une application web utilisant quelques APIs de Google. L’étape suivante est sa publication sur les serveurs de Google afin de profiter de l’infrastructure. L’offre gratuite concerne un espace de stockage de 500 Mo et suffisamment de bande passante pour assurer 5 millions de pages vues par mois. Autre intérêt, il est alors possible de mapper son propre domaine sur son application hébergée. Petit bémol pour les développeurs Java que vous êtes, le SDK d’App Engine n’intègre qu’une version limité du framework [Django](http://www.djangoproject.com/) qui est écrit en … Python ! Google a déjà annoncer le support « très prochainement» d’autres langages mais le secret étant de rigueur, aucune date n’a filtré.
Wait and see !
### ***GWT***
Le Google Web Toolkit est récemment passé en version 1.5. C’est **Sumit Chandel**, un des ingénieurs en charge du projet qui est venu présenter la nouvelle release. Les fonctionnalités majeures sont le support de java 5 (annotations, génériques, autoboxing), l’amélioration des performances et l’amélioration des widgets.
Pour Sumit Chandel, GWT est parfaitement adapté pour des développements d’applications de type SaaS. Le principe est qu’à la première connexion, le client télécharge l’intégralité de l’application (JS, HTML, CSS). Il n’y a donc pas de navigation entre pages mais plutôt des chargements et des déchargements de panneaux de composants. L’intérêt est qu’à part les appels asynchrones, il n’y a plus d’interaction avec le serveur web. L’application est donc extrêmement réactive (seul le temps de premier chargement a un coût).
La suite de sa présentation a concerné les atouts de GWT. Le développement complet en Java couplé à l’utilisation du **Hosted Mode **permet l’utilisation d’outils de débug classique, évite de manipuler du JavaScript et épargne donc l’utilisation fastidieuse de plugins comme [Firebug](http://getfirebug.com/).
Le second intérêt majeur est l’optimisation du JavaScript envoyé par l’application GWT au client. En effet, le bootstrap de l’application est capable de détecter le navigateur client et d’envoyer que le code JavaScript correspondant.
La technologie semble aujourd’hui mûre mais il existe encore peu de projets d’importance sur le marché et peu de société ont aujourd’hui des retours sur expérience.
### ***Gears***
Gears se présente sous la forme d’un plugin permettant tout simplement d’avoir accès hors ligne à des applications web. Gears est disponible sur les plateformes Windows, Linux et Mac OS et s’intègre aux principaux navigateurs (IE, Firefox, Safari, Opera).
En pratique, Gears embarque un moteur de base de données, un serveur de cache pour tout ce qui est HTML, JavaScript et images et une API JavaScript qui accède aux données enregistrées localement.
Voici une liste non exhaustive des applications web capables d’utiliser ce plugin :
[Google Documents](http://docs.google.com/), [Google Reader](http://reader.google.com/), [Youtube](http://www.youtube.com/), MySpace et [WordPress](http://wordpress.org/).
Il faut aussi noter que Gears est nativement intégré au nouveau navigateur de Google : Chrome.
### ***Conclusion***
Jusqu’à présent seul Google était en mesure de proposer des applications Google. L’utilisation des différentes APIs classiques ne suffisait pas à elles seules à faire un service commercialisable.
Aujourd’hui la multinationale va plus loin et se risque sur des marchés où jusque là elle n’était pas présente : OS mobile, navigateur.
Pour parvenir à gagner des parts de marché, la stratégie est déjà connue : Faire participer la communauté. L’objectif est donc de fournir le plus possible d’outils et d’assistance aux développeurs.
On peut dès maintenant faire les liens entre les différents services :
- Développement et hébergement d’une application web pour OpenSocial via App Engine - Développement d’une application web avec GWT et couplage avec Gears pour le travail offline - Mise à disposition du SDK d’Android pour le portage des applications vers la plateforme mobile - Mise à disposition du navigateur Chrome pour une intégration complète des technologies Google afin de favoriser l’émergence d’applications de type SaaS
Raphaël Despinasse