Google App Engine : Cloud computing by Google

En Avril 2008, Google a lancé, lors du Google Campfire One, Google App Engine. Mais de quoi s'agit-il ? L'idée est celle assez au goût du jour du "Cloud Computing". Cette idée consiste en ce que les développeurs d'applications web ou de services en ligne se concentrent sur ce qu'ils savent faire à savoir développer leurs produits plutôt que de dépenser de l'énergie à mettre en oeuvre les infrastructures techniques sur lesquelles ils doivent reposer, à l'instar des hébergeurs de sites internet mais pour des applications à spectre plus large. La proposition de Google ? "Venez profiter de l'infrastructure sur laquelle repose les applications Google !... Elle a fait ses preuves...". On les croit...

J'ai découvert le produit récemment en voulant jouer à créer des robots pour l'autre nouveau service Google : Google Wave (pas encore disponible pour le public celui-ci). Ces robots sont pour l'instant obligatoirement hébergés sur la plate-forme Google App Engine.

Quel est le modèle économique de l'offre Google App Engine ? C'est gratuit... En dessous de certains quotas de ressources (stockage, trafic, consommation de puissance de calcul) allouées à votre application. Si votre service en ligne a beaucoup de succès et consomme plus que les quotas lui étant gracieusement alloués, vous pouvez activer la facturation qui fonctionne sur le principe du "pay per usage". La cible paraît donc être les petites "start-up" qui n'ont pas les ressources (humaines et / ou matérielles) permettant de se doter d'une infrastructure d'hébergement applicatif complexe et veulent vérifier, sans trop de risques, la viabilité des services qu'elles proposent.

Pour qui ? N'importe qui peut se créer un compte Google App Engine et est en mesure de créer 10 applications hébergées sur l'infrastructure (pour l'heure en Java et Python). Comment ? Le service est complet et propose tout ce qu'il faut pour accompagner le développement (SDK , plugins pour IDE, documentation pléthorique en ligne, échantillons d'applications, communauté...), fournir les fondamentaux d'un service en ligne (stockage de données reposant sur JDO, système d'authentification Google...) et suivre la vie de ses applications (le dashboard Google App Engine permet de faire de l'analyse de logs, du débuggage, du suivi de consommation de ressources...).

Encore une fois un bien beau produit même si l'on peut se demander si Google veut dominer le Monde pour son malheur (!). On peut aussi aller voir ici ou pour plus d'informations.
 

Google Wave : MikoRobotOne...

J'ai ecrit hier mon premier robot pour Google Wave : MikoRobotOne.

MikoRobotOne n'est pas très malin : à chaque fois qu'un nouveau participant est ajouté à la conversation, il crée un blip (un fragment de conversation) dont le contenu, grosso modo, est l'adresse e-mail de la personne qui a ajouté le nouveau participant.



Le plus long fût de configurer l'environnement de développement sur mon MacBook : Installation de l'IDE (Integrated Development Environment) Eclipse (Galileo - Version 3.5.0), installation du plugin Google AppEngine pour Eclipse (pour le développement d'applications hébergées sur le "cloud" version Google dont je parle dans un autre billet), activation de mon compte sur Google AppEngine, installation des API Google Wave ... Ensuite c'est tout droit, nos amis de Google ont bien travaillé pour les développeurs Java. Il est à noter que les APIs sont aussi disponibles pour les développeurs Python.

Dernière remarque : pour l'heure on ne peut développer de robots Google Wave que sur la plate-forme Google AppEngine (donc uniquement en Java ou Python) mais ce n'est pas définitif.