dimanche 23 novembre 2014

[Vagrant]Créer un entrepôt de box - partie 1 - introduction

Introduction

L'usage du système Vagrant nécessite un entrepôt de stockage et diffusion de BOXs.
Cet entrepôt doit satisfaire au fonctionnalités suivantes :
  • Etre accessible en HTTP, dans le réseau des postes clients, pour Download (et éventuellement Upload) de BOXs packagées.
  • Assurer un service de gestion des versions de BOXs, interrogeable depuis les postes client Vagrant
  • Idéalement, être sous le couvert d'un procédure de sauvegarde

De tels entrepôts existent en ligne (Vagrant Cloud) mais dans un contexte entreprise il est souhaitable de conserver en interne son catalogue de box.
Ce billet (et suivants) explique comment mettre en oeuvre de façon simple un tel entrepôt privé.

Sources

Schéma simplifié cycle de vie box/vm sous vagrant



Schéma détaillé cycle de vie box/vm sous vagrant





samedi 22 novembre 2014

OnePlus One

Un petit retour sur le OnePlus One, après 3 mois d'usage*


https://oneplus.net/fr/one

La version avec 64Go de stockage coûte 299 € TTC + 15€ Frais de port. Paiement uniquement en ligne via PayPal (très simple). Livré en moins d'une semaine

L'achat se fait via des codes d'invitation ou parfois des ventes en durée limitée. Et il se trouve que j'ai 3 codes d'invitation valables jusqu'au mardi 25/11 !

Les test et comparatifs pullulent sur le web. 


Avis personnel :

  • Achat
Je l'ai depuis 3 mois.
Reçu en 5 jours (Un collègue lui l'a eu en 36 h !), avec mode de livraison standard.
Paiement par payPal (mais c'est simple).
Pour ma part, j'ai ajouté en sus une coque (15€) et une seconde vitre (12€) achetées sur Amazon.
  • Batterie :
en général il me reste plus de 50% quand je vais me coucher (et je suis un bon consommateur...). 
La nuit, je le met en mode veille (qui a l'avantage de tout couper, sauf le réveil !!!)
Je ne le mets à charger que le matin, pendant 1 heure. Et hop je repars à 100%
Utilisé de façon intensive pendant 1 journée de vacance à Paris (Internet, GPS, prise de plusieurs dizaines de photos, vidéos) + pendant trajet TGV : Le soir il me restait encore 10%.
  • Puissance :
Un monstre !
Globalement, c'est un appareil à niveau d'un Samsung Galaxy S5, IPhone6+, Nexus 6..... mais 2 (à 3) fois moins cher.
  • Ecran :
Nickel, un poil trop lumineux peut être (mais ça se règle)
  • Stockage :
64 Go, y'a de la place. Et puis combiné avec des solution on Cloud, ça suffit amplement
  • Ergonomie/Prise en main:
C'est sûr, de grandes mains c'est mieux (si on veut n'utiliser qu'une main).
Les boutons sont intelligemment placés.
Remplace aisément une tablette pour les fonctions de lecture de document (et vidéos).
Avoir un grand écran signifie aussi un clavier à touches plus grandes, et ça c'est un "plus" pour la rédaction de sms, mails, chat...
  • App Photo/Video
Nickel. Il a remplacé mon Panasonic Lumix.
  • Téléphonie
Jamais eu de problème (coupure et autre) et je suis sur un abonnement SFR pro.
A noter qu'il est 4G (même si l'abonnement ne l'est pas).
Je m'en sert aussi comme tel main libre en lieu et place des combinés de mon bureau (qui sont une horreur). Il y a 3 micros sur le OnePlus (réduction des parasites sonores) et 2 haut parleurs.
Le seul truc embêtant (lié à l'abonnement SFR ) c'est qu'on peut pas faire d'audio-conferences...
Il n'y a pas de kit/écouteurs main libre livré avec l'appareil. Maintenant je suppose qu'un ancien kit, repris d'un autre tel, doit faire l'affaire (moi j'en utilise pas...)
  • Qualité/Durée de vie
Je l'ai depuis 3 mois.
Jamais planté.
La garantie est de 1 an + 1 an (obligation C. Européenne), donc de 2 ans.
Le suivi logiciel (versions d'androïd) s'appuie sur Cyanogenmod qui est une société/communauté très active et reconnu dans le monde Androïd. En gros, même si OnePlus arrête un jour de communiquer des mise à jour, il sera toujours possible d'en obtenir directement auprès de Cyanogenmod (gratuitement). Actuellement le OnePlus One est sous la dernière version Androïd 4.4 et la mise à jour 5.0 est prévue pour début 2015.

vendredi 14 novembre 2014

Agile Tour Brest 2014

Donc hier, 14 novembre 2014, je me suis rendu au premier Agile Tour de Brest.
Ci-après mes notes prises lors des différentes conf et ateliers auxquels j'ai assisté/participé.


Keynote - "Mieux penser pour mieux coder", par Laurent Bossavit

Cette keynote rappelle les causes naturelles de "dysfonctionnement" d'un projet. Elle dénonce des idées fausses et introduit la réponse apportée par les démarches Agile et Lean.
LB commence par nos rappeler une citation de Richard Hamming, qui en gros signifie que l'on passe la plupart de son temps à corriger des bugs que l'on a soi-même produit.

2 Facteurs clés de succès/non succès:
  • Bugs
  • Compétence
Le bug vient de l'Intellect.
Sont en cause les "Biais de confirmations"/"Biais cognitifs".

Rappel de la (bonne) pratique : Ecrire le Test avant le code.

Ensuite, on démonte quelques idées ;
"Courbe du coût de correction des défaut" => Pipeau !
"10x Programmers" => Folklore !

"Génie logiciel" : approche Tayloriste / Biais de confirmation
PDCA :
  • Promise
  • Delay
  • Cancel
  • Apologize
=> Une autre approche :
Agile : People first!
Lean : tous chercheurs. Exploiter le potentiel intellectuel et émotionnel de chacun.

PDCA :
  • Plan : ou Problem
  • Do : Expérimenter, faire...
  • Check : .. et vérifier
  • Act : Ajuster, vérifier
Et on recommence à P.

Agile ou Lean? Les 2 !
  • Agile : "accentuer le changement", repenser le contrat social
  • Lean : "Se confronter à la réalité", résoudre les problèmes de façon rigoureuse
=> Des recoupements entre les 2 méthodes, mais des objectifs différents.

Tous chercheurs... même les managers ! ... même pour sa propre santé !
 (exemple : processus de recutement @ Google )

Carol S. Dweck

Changer d'état d'esprit / Curiosité

Outils et pratiques pour mieux travailler ensemble - Aurélien Morvan

Présentation rappelant les règles de conduite d'un Workshop et des exemples d'outils (jeux). Sur vote du public, 2 cas ont été traités : "résolution de problème par la créativité" et "Cohésion d'éuipe" (ça tombe bien, c'est ceux pour lesquels j'ai voté).

Ou comment mener un atelier (réunions de lancement, de bilan, de cohésion, d'équipe, de résolution...)

Rappel des règles du jeu :

  • Commencer/Finir à l'heure
  • Respect de celui qui parle
  • 1 conversation à la fois
  • L'opinion de chacun compte

Le rôle de facilitateur :
Préparation personnelle
Implication physique
Dynamique de groupe
...
Les rôles délégués
Facilitateur, Scribe, Méta observateur, cadenceur, leader/éveilleur

Les 7P.
"70 % de préparation"

TP : "résolution de problème par la créativité"

1 - Icebreaker - 15 min
Exemples :
Alphabet des concepts
Checkin

2 - Purge - 30 min
Sortir du cadre
Vision commune
Créativité
=> Trouver des solutions ensemble
D'abord individuellement, puis mise en commun
"La sagesse du peuple"

3 - Analogies - 60 à 120 min
Identifier les idées externes utilisables en interne
(Les bilans de rétrospectives peuvent alimenter cette phase)

4 - QQOQCP - 30 min
(Qui, Quoi, Où, Quand, Comment, Pourquoi)
Plan d'action
Réponse à chaque interrogation

TP - "Cohésion d'une équipe"

1 - Icebreaker - 15 min
Checkin => arbre à personnages

2 -
Le pont
La crevasse
Matrice des attendus
Speed boat

3 - QQOQCP - 30 min
Fil des engagements

Ce que j'en retiens : L'importance de la préparation et de l'animation d'un workshop. L'utilité des techniques de "gaming", ou de "mise en forme" des workshop, destinés à provoquer la créativité et l'implication de tous.

Atelier "Mieux penser pour mieux coder" - L. Bossavit

Après la Keynote de L. Bossavit, j'étais appaté par cet atelier de près de 2 heures.
XKCD
Pensée critique
Allusion aux infos non  sourcées
Livre : "Thinking fast and slow"

Série de jeux en binômes basé sur l'analyse critique des affirmations.
Démarche permettant de croire ou non à un affirmation
Analyse de l'affirmation et de l'affirmant.
Recherche de sources/confirmations/infirmations


Ce que j'en retiens : faire jouer l'esprit critique fasse à des assertions évite de se laisser embarquer. Ce qui s'est révélé aussi, c'est quand on cherche à vérifier une assertion, on découvre d'autres choses, connexes à l'élément initial.
A l'inverse, c'est une technique que je (nous) pratique(ons). D'où l'importance de bien préparer son information, pour être à l'aise face à quelqu'un qui tenterait de la dénoncer.
J'avoue avoir été un peu déçu au début, car le titre de l'atelier semblait suggérer une mise en situation face à nos activités d'ingénierie... mais au final, on en tire des enseignements applicables à différents contextes (traitement de demande client, entretien professionnel, lecture d'une article/slide technique, ...)

"I'm not a bottleneck, I'm a free man" - Pierre Hervouet

Je me suis rendu à cet atelier quelque part à défaut, sans trop savoir ce qui m'y attendait. Grand bien m'en a pris... Ici,sans les nommer, on est dans le Kanban, le Lean, la TOC.
Mise en situation pratique, en équipe.
Optimisation des processus de production (ici, on fabriquait des Bateaux et Chapeaux en papier)
Repérage des goulots.
Affinage de la méthode.

Limiter le Multi-tasking

"Le Goal" - Theory Of Constraints
0 - Quel est l'objectif
1 - Trouver le goulot d'étranglement
2 - Se concentrer ("exploit"/"focus") sur le goulot; Le goulot est le focus
3 - Subordonner les autres (..étapes de production)
4 - Augmenter la contrainte (La capacité)
5 - Recommencer (en 1)
6 - Changer le système (quand il n'y a plus de goulot, ou que le goulot est externe)

Possibilité de "choisir" son goulot (et donc de le maîtriser)

agilecoach.net
Ce que j'en retiens : preuve (pratique) à l'appui, on voit bien comment traiter les fameux goulots d'étranglement. Au fur et à mesure de nos itérations, nous avons optimisé nos coûts de production, délivré plus et même diminué le niveau de stress des membres de la chaîne.
Personnellement, c'est cette session qui m'a le plus apportée sur cette journée.

Après les users stories, les team stories - Timothée Chevrier

Intéressant d'avoir un Feedback d'un ScrumMaster, sur 3 ans, et (c'est la beauté des pratiques agiles) de voir les ajustements opérés par cette équipe dans le temps.

Retrospectives

Fond :

  1. Rappel du contexte
  2. Collecte d'infos (comment on a travailler)
  3. Analyse des infos, sujets à traiter
  4. Définir des actions
  5. Revue des actions (!!! : ne pas oublier)

Formes

  • Timeline:Ligne de temps, Fait marquants postés, Discussion
  • Speed boat game
  • 4L
  • Future Facing Retrospective
  • Speed Car - Abyss


cf retrospectivewiki.org
funretrospective.org

Estimations

Streme Sprint Poker : 3 à 4h

Autres sujets : choix des outils de dev, un écran au mur...

Je posterai quelques photos





















Ce que j'en retiens : les pratiques Agiles (Scrum ici) ne sont pas psychorigides, surtout sur les outils utilisés. A chacun d'adapter en fonction de son contexte. Autre chose : faire confiance à l'équipe.

Clôture : Comment prendre le train numérique et tirer partie de la révolution digitale



jeudi 23 octobre 2014

[Vagrant]Résoudre l'erreur "404 not found" sur un contrôle de version de box

Si vous avez cette erreur :

>vagrant box outdated
Checking if box 'lifeplus' is up to date...
There was a problem while downloading the metadata for your box to check for updates. This is not an error, since it is usually due to temporary network problems. This is just a warning. The problem encountered was:
The requested URL returned error: 404 Not Found
If you want to check for box updates, verify your network connection is valid and try again.
C'est probablement que l'emplacement du fichier json d'où provient votre box a changé.
Changer l'url dans le vagrantfile de votre instance ne suffira pas (d'ailleurs le contrôle de version s'applique à la BOX, pas à la VM!)

En fait, lorsque l'on descend une box (depuis un entrepôt centralisé, chez VagrantCloud ou ailleurs) Vagrant crée un fichier "metadata_url" dans le répertoire de stockage local de la box (<user>/vagrant.d/boxes/<nombox>). Et ce fichier contient l'url de la source JSON initiale.

Lors des commandes "outdated", vagrant exploite cette url, et non celle de votre Vagrantfile.

Donc, pour corriger et rétablir le contrôle de version de votre box, éditer le fichier et corriger l'url.

mardi 21 octobre 2014

Oneplus One livré en 36 heures (livraison standard)

Mercredi (16/10/14) je reçois une invit pour commander un OPO.

Comme j'en ai déjà un, je file celle-ci à mon collègue AD (je voyais qu'il bouillait quand je sortais mon OPO de ma poche...)

Il commande son OPO en ligne mercredi soir, en livraison standard (soit 315 € tout mouillé)....

Le colis arrive vendredi début d'après-midi !!! soit 36 heures... et on est pas à Panam, mais à Brest "même".

Oneplus aurait-il des stocks secrets en BZH ? ou au moins en Europe ?

online.net va t'il changer la donne de l'hébergement ?

Regarder ce qu'online.net (filiale d'Iliad, de Free quoi...) nous prépare :

  • du hosting en machine dédiées, sous proc ARM, made in France (Laval).

On retrouve des facilités de mise en oeuvre à niveau des environnements virtualisés. A la grande différence qu'étant en physique, on a ici des perf constantes ( et pas du "v"cpu, "v"ram...)

Bon, c'est pas des foudres de guerre ( 32bits, 2GiB RAM, 20GB SSD, 4 "vrais" coeurs), mais ça permet de faire tourner pas mal de chose (même du java, si si !).

Hâte de voir les prix, et aussi les différentes config, mais si on se base sur ce qu'online.net propose déjà dans sa gamme Dedibox, on peut s'attendre à des premiers prix entre 5 et 20 € HT / mois.

OnePlus One

Ca fait bientôt 2 mois que j'utilise ce mobile et je dois dire que je ne regrette rien.

Puissance, batterie, photo, video (slow motion, trop top!), écran, mises à jour (androïd 4.4/cyanogenmod) : tout y est !

Franchement, pour 300€, on a un appareil à niveau d'un Samsung S5, Nexus 6, Iphone 6+... mais pour moitié moins cher.



Une petite compil de test/avis :

(très déçu que "Les numériques" n'aient publié aucun test... bouhh)