Tag Archives: cloud computing

My schedule for Google I/O 2014

This year Google I/O will be about DDD, have you read the blue book ? Oh wait, sorry, it’s not about Domain Driven Design but Design, Develop, Distribute. Interesting to see that Google choose to replace the more common “Run” theme with a Distribute one. It feels like they are saying don’t worry anymore about how you will run your application, just use our cloud. But instead think how you will Distribute your mobile application… on google store of course.

We can expect a lot of announcements and sessions around Android. And a lot more, as you can see in the list of sessions I’m planning to attend. Can’t wait to learn more about Docker, Polymer, DevOps and the Google cloud platform !

Day one June 25

Day 2 June 26

Et en attendant…

Je me promène
San Francisco House San Francisco Parking

 

De l’open source à l’open data

Alors que l’open source VS propriétaire est un sujet de troll débat qui n’en est plus un, que le débat desktop VS web est a été remplacé par mobile VS Web (quelle différence?). Le vrai sujet aujourd’hui c’est l’ouverture des données, la preuve avec deux petits acteurs qui communiquent, chacun à leur manière sur le sujet.

Microsoft :

tant que les interfaces d’accès au service(API), les protocoles et les standards pour le cloud sont ouverts alors le client n’a pas à se soucier du code sur lequel il repose.” 

 Google :

  1. Can I get my data out in an open, interoperable, portable format?
  2. How much is it going to cost to get my data out?
  3. How much of my time is it going to take to get my data out?

What we mean by open, interoperable and portable is that your data should be exported in a format that is:

  • Publicly documented and non-proprietary (i.e. it does not require a commercial license to use)
  • Easy for engineers to write a program that can import the data into another system
A vos APIs… Tiens l’occasion de relinker ma présentation Ressource Oriented Architecture (slide 57)

Github, Cloudbees, Feature Flags

Quand les enfants ne sont pas là le geek code 😉

Mettre en oeuvre un processus d’intégration continue peut se faire rapidement, avoir une suite de test unitaire couvrant de manière satisfaisante son code est une autre histoire… Particulièrement sur un “code  legacy” (qui a été écrit sans test unitaire) ,  trop souvent les bugs sont découvert en production par les utilisateurs finaux.  Il faut alors revenir en arrière, reproduire et corriger le bug dans un environnement et re-livrer plus tard, sans parler d’une éventuelle reprise des données qui auraient été corrompues. Oui il y a du vécu.

Une technique pour réduire les effets néfastes d’un bug en production est de déployer progressivement à des populations restreintes les nouveautés. Pour cela il faut séparer la livraison du code de l’activation des fonctionnalités qu’il contient.

Un simple if/else peut suffire, on parle de feature flags chez Flikr.

if (newStuffIsOn) {
	doIt
} else {
	doNot
}
Voilà donc ce que j’ai codé ce week-end… Bon un peu plus en fait. Car il faut un moyen propre et élégant de gérer, d’activer et de désactiver ces flags en production.

Voici donc Feature Flags

L’idée est de gérer les flags dans un enum:
public enum Flags implements FeatureFlags {
    ONE("First Feature Flag"),
    TWO("Second Feature Flag", FlagState.UP),
    THREE("Third Feature Flag");
}
if (ONE.isUp()) {
	doIt
} else {
	doNot
}
Feature Flags génére dynamiquement à partir de l’enum une page html pour activer désactiver ces flags en live, mais aussi une interface RESTful pour les manipuler comme on souhaite.

RESTful

GET http://yourhost.net/flags/ONE pour connaitre l'état
POST http://yourhost.net/flags/ONE pour inverser l'état
PUT http://yourhost.net/flags/ONE avec UP ou DOWN en contenu pour forcer l'état d'un flag
Rien de fantastique que ce soit fonctionnellement ou au niveau du code mais il s’agissait aussi d’un pretexte pour me mettre à git et github

GitHub

Quelle claque. J’ai mis du temps à comprendre pourquoi Linus disait que svn ne marchait pas par conception, après tout ça a marché pour moi pendant des années. Git est clairement le bon concept. La preuve: github, il n’existera jamais de svnhub, avec github nous sommes tous à un click de pouvoir contribuer à des milliers de projets open source. D’ici quelques années github aura produit un impact majeur sur la croissance et la vitalité de l’open source. En fait c’est déjà le cas, mais j’ai la conviction que l’on a encore rien vu. Un peu comme les moteurs de blogs ont déclenché la vague web 2.0 du web participatif. On peut parler d’open source 2.0.

Cloudbees

Deuxième claque. Le projet Feature Flags contient une webapp de démo, le plus simple pour montrer ce que fait Feature Flags est encore une démo (vous allez pouvoir découvrir mes talents de designer web, please fork it ! du html là aussi). Mais héberger un war java sur Internet a toujours été un problème. Les différents clouds publiques apportent des solutions. Avec cloudbees déployer du code java est presque aussi simple qu’uploader une appli php. Il s’est écoulé une petite 1/2heure entre le moment où j’ai décidé de m’inscrire à Cloudbees et le moment où mon application était live, le plus long a été de lire un peu la doc. Petite déception, il n’est pas possible n’était pas possible hier de déployer directement un war généré dans le jenkins de DEV@cloud vers le tomcat RUN@cloud.

Age d’or du développeur

Ajouter à ça le mobile (android), html 5, l’adoption des méthodes agiles, le développement vit un nouvel age d’or.

Séminaire cloud computing à Toulouse

UPDATE: les slides sont en lignes. Si vous voulez jeter un oeil à mes slides à propos de la sécurité d’Amazon Web Services je vous recommande de lire aussi l’introduction au Cloud computing de François Goldgewicht d’Aoen consulting.

Sur slideShare:


Jeudi 18 Mars, le Centre de compétence technique (CCT) du CNES organise un séminaire: “Grilles informatiques – Cloud Computing Tutoriaux – Etat de l’art – Retours d’expériences”.

J’y présenterais une étude sur la sécurité d’Amazon Web Services (AWS) intitulée “Amazon AWS – Prêt pour l’entreprise ?”. L’occasion pour moi de revenir sur le campus de Rangueil et peut-être de croiser des lecteurs Toulousains.

L’inscription est gratuite, il y a un beau programme:

09h00 – 09h30 Accueil, Introduction

09h30 – 10h00
Tutoriel Architectures informatiques dans les nuages
(F. Goldgewicht – AEON consulting)

10h00 – 10h30
Etat Art Google App Engine ou Spring Cloud Foundry
(N. Franchet – AEON Consulting)

10h30 – 11h00
Retour expérience R&T WAG (Wid Area Grid)
(J.E. Stranig – Cap Gemini)

11h00 – 11h15 Pause café

11h15 – 11h45
Retour expérience R&T GSCD (Grille de Service au profit des Centres de Données)
(J.E. Stranig – Cap Gemini)

11h45 – 12h45
Etat Art De la virtualisation…au cloud computing
(J. Etienne & C. Le Gallic – Sqli)

12h45 – 14h00 Pause déjeuner

14h00 – 14h20
Etat Art Amazon AWS – Prêt pour l’entreprise ?
(A. Pelletier – Atos Origin)

14h20 – 14h40
Retour Expérience Etude alternative à Oracle RAC pour le traitement massif
(J.O. Nahoum – Atos Origin)

14h40 – 15h00
Tutoriel L’impact du Cloud Computing pour l’infogérance
(G. Antonetti – Atos Origin)

15h00 – 15h30
Etat art Déploiement d’une application Web 2.0 sur le cloud
(H. Desaunois, F. Saunet – Valtech)

15h30 – 15h45 Pause café

15h45 – 16h15
Tutoriel Confrontation des plateformes Google App Engine & Amazon EC2
(B. Marchesson, M. Jullien – Valtech)

16h15 – 17h15
Retour Expérience Retours d’expérience Grid Computing
(J. Courquet – C-S)

17h15 – 18h00 Table ronde