Je suis développeur web freelance et propose des formations à Symfony2 ! Contactez-moi pour en discuter.

La plupart du temps, pour tester si une clé est présente dans un tableau, il faut utiliser array_key_exists. Pourtant on trouve encore des empty et isset à sa place, en pensant que ces 3 fonctions sont interchangeables : ce n’est pas le cas. Fin 2016 on trouve encore des confusions, donc cet article me servira de référence pour les futures revues de code 🙂

Lire la suite »

Un des problèmes majeurs de l’entreprise, c’est l’engagement de ses employés. Souvent, dans une entreprise, les gens sont motivés lorsqu’ils prennent un poste, mais rapidement de nombreuses contraintes et barrières les empêchent de mettre en oeuvre les bonnes idées qu’ils peuvent avoir. Rapidement, ils finissent alors par faire comme tout le monde, « faire leurs heures » et attendre de rentrer chez eux pour commencer leur vie.

Une entreprise libérée cherche à résoudre ce problème (et de nombreux autres, comme nous le verrons). C’est une entreprise dans laquelle les employés mettent en place tout ce qu’ils trouvent favorable au développement de l’entreprise, sans procédures asphyxiantes.

Entreprise libérée

L’introduction a présenté quelque chose d’assez flou, voici quelques précisions. Le reste de l’article a pour but de préciser les motivations et l’état d’esprit d’une entreprise de ce genre.

Une entreprise libérée, c’est une entreprise qui a un certain nombre de croyances.

  • Elle pense que l’Homme est naturellement bon, que les gens sont des gens biens, qu’ils ont envie de bien faire et qu’ils font de leur mieux
  • Elle est convaincue que l’intelligence collective, c’est quelque chose de très fort
  • Elle sait que le patron de l’entreprise est la première personne qui doit changer pour que l’aventure fonctionne

Chronoflex ?

Début janvier, nous avons rencontré Alexandre, dirigeant de Chronoflex. Ils font du dépannage sur site de flexibles hydrauliques, 24h/24, 7j/7. Ca a pas l’air super sexy et pourtant, ce qu’il nous a présenté est à des années lumières de ce que l’on aurait pu imaginer d’une entreprise de ce genre. Il a parlé de son entreprise, sans langue de bois, en nous présentant ce qui marchait et ce qui ne marchait pas.

Créée en 1995, la vision initiale de l’entreprise fonctionne de 1995 à 2009. Pendant cette période, l’entreprise est en forte croissance (parfois, à 3 chiffres). C’est une boite jeune, où il fait bon vivre et où on s’amuse bien. En grossissant, elle finit par se structurer, comme partout ailleurs.
La croissance se fait pendant 10 ans. Avant, pas de recherche de rentabilité. Elle arrive à faire 22 millions d’euros de chiffre d’affaire, avec 250 personnes.

En 2009, la crise les frappe de plein fouet. Ils font -34% de chiffre d’affaire. Cette entreprise qui gère bien une période de forte croissance n’est pas faite pour encaisser une période de décroissance.

Deux rencontres, à quelques années d’intervalle, vont amener l’entreprise à se redresser.
La première, c’est de rencontrer le dirigeant de l’entreprise Favi, lors d’une conférence. Jean François Zobrist fait depuis des années des conférences où il incite les entreprises à dé-hiérarchiser, et à supprimer le contrôle et le remplacer par la confiance. C’est un personnage à la forte personnalité qui va lui faire prendre conscience qu’il faut changer des choses dans son fonctionnement.

Alexandre constate qu’il a fait deux erreurs :

  • La première, c’est de gérer l’entreprise pour les 3%. Mettre en place plein de règles qui gênent la majorité des gens, à cause d’une minorité, les 3%. Ces murs invisibles empêchent les 97% de gens qui cherchent à faire de bonnes choses.
  • La seconde, c’est d’avoir confié la prise de décision à des dirigeants. Les gens les plus compétents pour savoir ce qui est bon de faire sont souvent ceux qui font le travail, et se priver du savoir collectif c’est souvent se priver de la première richesse de l’entreprise : ses employés.

3 chantiers

Pour changer, ils ont silloné la France, armés de Post-it. Partout, ils ont discuté, échangé avec les différentes structures afin de reconstruire la vision de l’entreprise et les valeurs qu’elle porte. Il s’agit de définir, d’expliciter deux choses :

  • Quel est le but du jeu ? C’est à dire, à quoi sert l’entreprise ?
  • Quelles en sont les règles ? C’est à dire, comment on fait ça ?

Les visions et valeurs

Une des premières questions pour laquelle ils ont cherché à trouver une réponse, c’est de définir, d’expliciter la vision et les valeurs de l’entreprise.
Ils ont trouvé quatre éléments de réponses :

  • Atteindre la performance par le bonheur
  • L’amour du client
  • Des équipes respectueuses et responsables
  • Un esprit d’ouverture et une ouverture d’esprit

Les irritants

Vous avez déjà essayé de marcher avec un caillou dans la chaussure ? On peut s’y habituer, mais c’est super pénible.
C’est pourtant ce qui arrive rapidement. Un ordinateur qui ne marche pas, du manque de matériel, des incidents récurrents, des procédures compliquées…

Un grand nombre de détails sont finalement des problèmes irritants qui deviennent parfois obsédants. En enlevant les cailloux, l’entreprise a permis à ses employés de se concentrer sur leur travail.

On a par exemple permit aux employés de faire du télétravail. Les études sur le sujet constatent qu’un employé en télétravail travaille 13% de moins en durée, mais est 22% plus productif. Il faut de tout pour arriver à un équilibre, mais permettre le télétravail lorsque l’employé le souhaite (pour ne pas poser une après midi pour en rendez-vous médical) ne doit pas être négligé.

Attention, n’abandonnez pas le travail sur site, en groupe. Il permet, lui, de stimuler les idées et la motivation. Si l’on prend l’exemple de qui veut gagner des millions, une étude a montré que l’appel à un ami gagne dans 64% des cas, alors que l’avis du public est bon dans 80% des cas. Ensemble, on ne gagne pas tout le temps, mais on gagne plus souvent que seul.
Il y a ainsi plus d’efficacités dans le collectif que dans quelques esprits aiguisés, ce qui peut être résumé par cette phrase : « Seul, on va plus vite, ensemble, on va plus loin ».

Les signes du pouvoir

Sans forcément faire attention, un certain nombre de choses étaient devenus des signes de pouvoir :

  • Les dirigeants ont des grands bureaux, plus grands que les autres
  • Le patron, bien qu’il n’avait pas de place attitré, avait toujours la place la plus proche de l’entrée. Au départ, c’est parce qu’il arrive plus tot que tout le monde, mais quand il part en visites, « sa » place est toujours libre
  • Les réunions secrètes du Codir. Il ne s’y passe rien de secret, et pourtant cela se passe en huis clos, sans que personne ne sache jamais se qui s’y dit.
  • Internet était bloqué pour les employés, afin qu’ils n’aillent pas sur Internet pour leur usage personnel. La solution mise en place bloquait tellement de choses qu’il était impossible de réserver un billet de train. On a donc désactivé ce bloquage pour les dirigeants.
  • Les postes à responsabilité : Directeur marketing, Directeur financier, etc.

Afin d’arrêter de donner l’image selon laquelle les dirigeants détiennent plus la vérité que quelqu’un d’autre, ils ont changé un certain nombre de choses. Par exemple, les réunions du Codir sont devenues ouvertes à tous, ceux qui étaient dans les locaux pouvaient y venir. C’était déjà le cas avant, en fait : mais comme personne n’avait expliqué qu’on pouvait y venir, les gens étaient persuadés que c’était une réunion fermée. Le dirigeant a également arrêté de mettre un costume, et a arrêté de se garer devant l’entrée, pour montrer que la place qu’il occupait le plus souvent ne lui est pas attitrée.

En ce qui concerne à Internet, oles bloquages ont été supprimés. Oui les gens utilisent Internet pour leur usage personnel, mais le principe d’avoir confiance en ses employés, c’est d’accepter l’idée qu’ils soient capables d’en faire une utilisation raisonnée.

Quand aux postes à responsabilité, comme directeur marketing, ces postes ont deux composantes, une expertise opérationnelle et une composante décisionnaire. Ils ont supprimé le titre, gardé l’expertise opérationnelle et donné aux équipes la prise de décision (cela n’a pas toujours été bien vécu mais de l’accompagnement au changement a été proposé).

Liberté & compagnie

La seconde rencontre clé, c’est la lecture du livre Liberté et Cie. Cette étude analyse le fonctionnement classique des entreprises, et étudie surtout des entreprises qui ont choisi des fonctionnements alternatifs.

Ce livre propose une sorte de recette pour libérer l’entreprise :

  • Ecouter ses collaborateurs. Cela commence par arrêter de parler, soi, et d’écouter, sans filtrer, ni influencer.
  • Partager sa vision. La vision est essentielle à l’entreprise, il faut la répéter. Mais il faut le faire après avoir vraiment écouté les collaborateurs.
  • Arrêter d’essayer de motiver les collaborateurs. Le management par l’incentive, avec des primes, des salaires variables sur objectifs individuels… plus globalement, le système du baton et de la carotte ne marche pas. Ca ne motive pas les gens, ça ne sert à rien, du moins pas suffisament. Le livre suggère donc de trouver d’autres moyens d’être performants : L’homme est programmé pour 2 choses, le plaisir et la maîtrise. Pour que le collaborateur soit performant, l’entreprise doit lui construire un environnement dans lequel son travail n’en semble pas, et où il a le contrôle de ce qu’il se passe.
  • Le triptyque de l’engagement :
    1. Supprimer les signes de pouvoir
    2. Créer un environnement nourricier, qui va permettre aux gens de monter en compétences
    3. Laisser place à l’action en donnant de l’espace aux employés pour qu’il puisse faire ce qu’ils considèrent être bon pour l’entreprise.

Le but, c’est d’atteindre un vrai management participatif. Souvent, le management participatif classique consiste à demander aux gens leur avis, mais en ayant déjà plus ou moins le sien à l’avance, et ne pas modifier ses idées en fonction de celles des autres.

Le vrai management participatif se fait en deux temps :

  • Partager tout ce que les dirigeants connaissent sur un sujet, fournir tous les éléments de réflexion qu’on possède aux employés
  • les laisser décider

Une étape essentielle, c’est le coaching, l’accompagnement.
La première personne qui doit changer sa vision, c’est le dirigeant. Elle doit se faire coacher.
Ensuite, les équipes, si elles souhaitent se remettre en question, doivent pouvoir se faire accompagner.

Le saut en parachute

Les premières étapes de ce chantier ont eu lieu de manière sous marine. Il n’y avait pas encore de communication globale sur ce changement, pour pouvoir revenir en arrière si cela n’était pas une bonne solution.

Pendant 18 mois, des actions ont eu lieu mais il n’y a pas eu d’annonce. Les dirigeants et des équipes ont travailllé avec un coach pour désapprendre les croyances et travailler sur lui/elle. Beaucoup de lectures / coachs (Favi et Liberté & Cie).

Le saut en parachute, c’est le moment où il y a cette communication globale, après que l’on ai décidé que c’est la voie à suivre.
Saut en parachute, car comme ce sport, c’est un acte irréversible. Une fois qu’on a sauté, il n’est plus question de remonter dans l’avion.

Ils ont donc fait une réunion clé, où a participé toute l’entreprise. Ils ont décidé, en quelques heures, de transformer ce qui était devenu un porte avion lourd a manoeuvrer, en plusieurs speed boat, plus rapides et maniables.

  • Où ? Les employés ont décidé de l’emplacement des 13 succursales
  • Qui dirige ? Les employés, à nouveau, ont coopté leurs leaders, les dirigeants de ces succursales, pour des mandats de trois ans.

C’était super : en l’espace d’1h30 ils avaient redéfini l’entreprise. Humainement, quelque chose de fort était en train de se passer.

Pourtant, ils se sont cassés la figure assez rapidement.

Ils ont mis en place seulement deux points du triptyque de l’engagement (supprimer les signes de pouvoir et donner les moyens aux employés), mais il en manquait un. Sans avoir créé d’environnement nourricier, sans avoir formé les gens, ils n’ont pas réussi leurs premières missions. Ils ne sont pas à blâmer, ils n’étaient pas équipés pour.

Au moment de la libération, on passe d’un structure où aucune information n’est accessible à une structure où tout est accessible. C’est difficile à gérer pour beaucoup, il faut de l’accompagnement et du coaching.

Finalement, ce changement est un changement de différents types de logiques.

  • Au lieu de dire aux gens ce qu’ils doivent faire, on passe à une logique de volontariat.
  • Au lieu d’être dans une logique de contrôle, on est dans une logique d’autocontrôle. Il y a une différence, que ce soit dans les faits ou dans la perception, entre le flicage et l’auto évaluation.
  • Rentrer dans une logique de culture de l’erreur.

En poussant un peu plus, au moment du saut en parachute ils ont constaté 4 types de comportements :

  • les papillons : certains des employés ont tout de suite été à l’aise
  • les paumés : la plupart des gens. Ils ne savent pas ce qu’ils peuvent faire et ne pas faire
  • les attentistes : ceux qui attendent de voir qui va gagner, l’ancien système ou le nouveau ? Ils prendront position en fonction du résultat.
  • Les chefaillons : des personnes qui ont besoin de pouvoir, et qui ne se retrouvent pas dans la nouvelle organisation

Accepter de mettre en place une culture de l’erreur

Ils se sont plantés ? Tant pis.

En France, on aime pas l’erreur. C’est très culturel. On peut prendre l’exemple des dictées à l’école, où chaque mot érronnée est entouré d’un rouge accusateur. On ne parle pas de tous les autres mots qui sont justes. On ne voit que l’erreur, et il ne faut pas se tromper, c’est mal.
On pénalise donc l’erreur au lieu de la valoriser.

Pourtant, ne pas avoir peur de l’erreur est essentiel dans une entreprise.

Quand on se plante, c’est qu’on a osé. Si on tape sur les doigts de quelqu’un qui se plante, il se plantera une fois ou deux mais pas 50. C’est un problème ! L’employé va finir par ne plus oser. Et si on n’ose pas, l’entreprise ne se développera pas.

le travail du dirigeant

  • Communiquer sur les valeurs de l’entreprise au quotidien, « remettre l’église au centre du village »
  • Créer un environnement nourricier, ce qui se fait de plusieurs manières :
    • vis mon job : passer sa journée d’anniversaire dans un autre service
    • UP, université permanente, propose des cours pour le développement personnel (cours de langues, excel…). Se fait entre midi et deux ou le soir.
    • module découverte, pour apprendre des sujets divers sans forcément de lien avec l’entreprise. les locaux et les ressources de l’entreprise sont mis à disposition, elle paye les repas.
  • Gardien du temple. Quand la vision dérive, il la recentre sur ses valeurs

Bref

Cet article contient de nombreux mots clés mais ne donne pas vraiment de clés à mettre en oeuvre directement. En fait, on retrouve de nombreux ingrédients des recettes de Zobrist et de « Liberté et compagnie » dans de nombreuses entreprises libérées. Les détails concrets de leur implémentation sont à voir au cas par cas.

Un des éléments à garder à l’esprit, c’est de ne pas négliger l’importance de responsabiliser les employés, pas juste créer un contexte dans lequel ils sont libres.
La liberté sans la responsabilité, c’est l’anarchie. Au contraire, la liberté avec la responsabilité entraîne le bonheur et la performance.

Il ne faut pas remplacer le contrôle par l’absence de contrôle, mais remplacer les outils contrôlant et structurants par d’autres outils. L’autoévaluation est l’un d’entre eux.

Et quel que soient les processus que l’on crée, ne pas négliger de les remettre en cause régulièrement.

Depuis quelques temps, j’ai un serveur chez DigitalOcean, qui me sert principalement pour bricoler des petites applis, et jouer autour de nouvelles technos. DigitalOcean m’a séduit par le rapport pricing/résultat. Même s’il y a des choses à redire, où s’il existe des offres similaires moins chères, je suis très satisfait de pouvoir créer/détruire des machines virtuelles en 2 clics. Cela correspond en fait totalement à mon cas d’utilisation, qui consiste à monter une machine pour tester une techno, bidouiller dessus, et la détruire quand j’ai fait le tour de ce que je voulais voir.

Par contre, il est du coup un peu pénible de devoir réinstaller sa machine virtuelle à chaque fois. Installer un LAMP basique avc phpmyadmin se fait assez vite, ça tient en quelques ligne de bash :

1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/sh
apt-get update
#install apache
apt-get install apache2
#install mysql
apt-get install mysql-server
mysql_secure_installation
#install php
apt-get install php5 php-pear php5-suhosin php5-mysql
service apache2 restart
# install phpmyadmin
apt-get install phpmyadmin
ln -s /usr/share/phpmyadmin/ /var/www

Mais dès qu’on veut faire quoi que ce soit de plus évolué, la complexité augmente rapidement. En plus d’installer des paquets il faut aller modifier des fichiers de configuration, ce qui devient rapidement chronophage, et me détourne de l’essentiel, le développement. Avec l’habitude on finit par connaitre les écueils à éviter pour aller vite, mais on y passe quand même du temps.

C’est là où Vagrant devient intéressant. Couplés à PuPHPet et DigitalOcean, j’ai personnellement atteint le nirvana de l’installation de VM en à peine 2H.

Vagrant sert à piloter des machines virtuelles. On lui file un répertoire de configuration pour définir l’environnement à installer sur une machine virtuelle. PuPHPet est une appli web qui permet de construire sa configuration pour Vagrant via une IHM, ce qui évite de devoir lire la doc. On est forcément plus limité que si on faisait tout soi même, mais dans mon cas (déployer un environnement apache ou nginx avec mysql ou postgresql, suivant l’humeur), j’ai de bonnes bases pour pouvoir faire ce qui m’intéresse sans m’embêter.

De l’intérêt de Vagrant

En fait, mon cas d’utilisation (déployer des VM kamikaze) est loin d’être le plus intéressant. Là où Vagrant prend tout son sens, c’est lorsqu’on travaille en équipe, et que l’on a le besoin de pouvoir avoir finalement de nouvelles machines identiques. Par exemple, lorsqu’un nouvel arrivant doit installer sa machine et qu’on veut une belle machine toute neuve, sans avoir à copier l’ISO de celle d’un copain, sans faire d’efforts, et sans surprises.
Et même s’il y a une valeur ajoutée à ce qu’un nouvel arrivant installe sa machine et comprenne ce qui s’y trouve, lorsqu’on plante sa bécane, on a pas forcément envie de passer du temps à tout réinstaller. De plus, une installation automatique et scénarisée permet d’assurer que tout le monde a le même environnement, ce qui n’est pas le cas d’un installation manuelle (« j’ai pas réussi à faire les choses telles qu’elles étaient décrites dans le manuel, donc j’ai googlé une alternative »), et qui peut souvent poser problème.

Autre avantage, toute la configuration de la machine à déployer tient en quelque fichiers de configuration. On peut donc la modifier, la versionner, la partager, la livrer… beaucoup plus facilement qu’on le ferait avec un manuel d’installation.

Ok, on a compris, on fait comment ?

PuPHPet vous permet de déployer des machines en local, chez DigitalOcean ou Amazon EC2.
Je vais décrire les étapes par lesquelles je suis passé pour partir de rien, et déployer une machine virtuelle sur Digital Ocean. Avoir un compte chez eux (associé à une carte bancaire) est nécessaire pour aller jusqu’au bout, mais la logique est la même si vous voulez déployer ailleurs.

Configuration de la machine locale

Nous aurons besoin d’une clé SSH pour nous authentifier par la suite, créons la.

1
2
cd ~/.ssh
ssh-keygen -t rsa -C "votre@email.com"

Je l’ai appelé digital_ocean au lieu d’id_rsa.

Il est nécessaire d’installer vagrant et virtual box. Vous pouvez récupérez les derniers paquets sur http://downloads.vagrantup.com/
https://www.virtualbox.org/wiki/Linux_Downloads

Sur Ubuntu/Debian, on installe les fichiers .deb avec sudo dpkg -i *.deb

Il également installer le plugin pour digital ocean :

1
2
vagrant plugin install vagrant-digitalocean
vagrant box add dummy https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box

Créer un projet

1
mkdir vagrant_env

C’est dans ce répertoire que nous mettrons le code de configuration utilisé par vagrant. En général, on fait un vagrant init pour démarrer un nouveau fichier de configuration, mais nous allons utiliser PuPHPet qui va faire ça pour nous.

Configurer digital ocean

Enregistrez la clé SSH que vous avez créé : https://cloud.digitalocean.com/ssh_keys

Il faut ensuite récupérer votre identifiant utilisateur et votre clé API : https://cloud.digitalocean.com/generate_api_key

Notez la clé API quelquepart, car elle n est plus affichée quand on revient sur la page et le seul moyen d’en avoir une est de la regénérer.

Configurez votre machine avec PuPHPet

Je vous laisse configurer votre machine aux petits oignons avec PuPHPet. N’oubliez pas de renseigner toutes les informations sur la configuration Digitalocean (clés API), nom de la machine, et type de machine.
Vous pouvez choisir le type de serveur (apache2/nginx), postgresql ou mysql, installer ou non phpmyadmin, la configuration de PHP, les packages divers à installer… c’est très simple.

Une fois terminé, un immense bouton permet de télécharger vos fichiers de configuration. Décompressez les dans un répertoire, vous devriez avoir l’arborescence suivante :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
.
├── files
│   └── dot
├── hiera.yaml
├── puppet
│   ├── hieradata
│   │   └── common.yaml
│   ├── manifests
│   │   └── default.pp
│   └── Puppetfile
├── shell
│   ├── initial-setup.sh
│   ├── librarian-puppet-vagrant.sh
│   ├── os-detect.sh
│   ├── self-promotion.txt
│   └── update-puppet.sh
└── Vagrantfile

Dans le fichier puppet/hieradata/common.yaml, vous trouverez toutes les informations que vous avez spécifiées sur comment configurer votre machine. Dans le répertoire files/dot, vous pouvez ajouter un fichier .bashrc, .vimrc… qui seront déployées lors de l’installation de votre machine.

Normalement, on est prêt à déployer sa machine :

1
vagrant up

Ca n’a pas marché pour moi (machine sous Ubuntu 12.04), il fallait encore faire quelques légères modifications. La clé ssh n’a pas été bien prise en compte lorsque je l’ai précisé dans PuPHPet, j’ai du modifier

1
config.ssh.private_key_path = "~/.ssh/digitalocean" dans le fichier VagrantFile

Il a également fallu ajouter dans mon fichier .bashrc

1
export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt

puis dans le fichier VagrantFile, ajouter la ligne

1
provider.ca_path = "/etc/ssl/certs/ca-certificates.crt"

dans vm.provider

Voici donc un exemple de configuration qu’on peut avoir. Vous pouvez voir que c’est au final très simple, on dit ce dont on a besoin et comment le configurer, et vagrant se charge de l’installer pour nous. Grâce au plugin DigitalOcean, il crée même la machine pour nous.

Fichier VagrantFile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
ENV['VAGRANT_DEFAULT_PROVIDER'] = 'digital_ocean'

Vagrant.configure("2") do |config|
  config.ssh.private_key_path = "~/.ssh/digitalocean"
  config.ssh.username = "clem"

  config.vm.box = "dummy"

  config.ssh.private_key_path = "~/.ssh/digitalocean"

  config.vm.hostname = "plop"
  config.vm.provider :digital_ocean do |provider|
    provider.client_id = "id_digital_ocean_que_vous_avez_fourni"
    provider.api_key = "cle_api_digital_ocean_que_vous_avez_fourni"
    provider.image = "Debian 7.0 x64"
    provider.region = "Amsterdam 1"
    provider.size = "512MB"
    provider.ca_path = "/etc/ssl/certs/ca-certificates.crt"
  end

  config.vm.synced_folder "./", "/var/www", id: "webroot"

  config.vm.provision :shell, :path => "shell/initial-setup.sh"
  config.vm.provision :shell, :path => "shell/update-puppet.sh"
  config.vm.provision :shell, :path => "shell/librarian-puppet-vagrant.sh"
  config.vm.provision :puppet do |puppet|
    puppet.facter = {
      "ssh_username" => "clem"
    }

    puppet.manifests_path = "puppet/manifests"
    puppet.options = ["--verbose", "--hiera_config /vagrant/hiera.yaml", "--parser future"]
  end

  config.ssh.shell = "bash -l"

  config.ssh.keep_alive = true
  config.ssh.forward_agent = false
  config.ssh.forward_x11 = false
  config.vagrant.host = :detect
end

Fichier common.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
---
vagrantfile-digital_ocean:
    vm:
        box: digital_ocean
        hostname: nom_de_votre_machine
        network:
            private_network: 192.168.56.101
            forwarded_port: {  }
        provider:
            digital_ocean:
                image: 'Debian 7.0 x64'
                region: 'Amsterdam 1'
                size: 512MB
                client_id: id_digital_ocean_que_vous_avez_fourni
                api_key: cle_api_digital_ocean_que_vous_avez_fourni
        provision:
            puppet:
                manifests_path: puppet/manifests
                options:
                    - --verbose
                    - '--hiera_config /vagrant/hiera.yaml'
                    - '--parser future'
        synced_folder:
            DXt5BtQJjHh3:
                id: webroot
                source: ./
                target: /var/www
    ssh:
        host: null
        port: null
        private_key_path: ~/.ssh/digitalocean
        username: clem
        guest_port: null
        keep_alive: true
        forward_agent: false
        forward_x11: false
        shell: 'bash -l'
    vagrant:
        host: ':detect'
server:
    packages:
        - vim
        - git
    dot_files:
        -
            bash_aliases: null
    _prevent_empty: ''
nginx:
    vhosts:
        1Zbx9ZeVKOfF:
            server_name: awesome.dev
            server_aliases:
                - www.awesome.dev
            www_root: /var/www/awesome.dev
            listen_port: '80'
            index_files:
                - index.html
                - index.htm
                - index.php
            envvars:
                - 'APP_ENV dev'
php:
    version: '55'
    composer: '1'
    modules:
        php:
            - cli
            - intl
            - mcrypt
            - curl
            - common
            - gd
            - fpm
            - memcache
            - memcached
            - xcache
        pear: {  }
        pecl:
            - pecl_http
    ini:
        display_errors: On
        error_reporting: '-1'
        session.save_path: /var/lib/php/session
    timezone: Europe/Paris
xdebug:
    install: 0
    settings:
        xdebug.default_enable: '1'
        xdebug.remote_autostart: '0'
        xdebug.remote_connect_back: '1'
        xdebug.remote_enable: '1'
        xdebug.remote_handler: dbgp
        xdebug.remote_port: '9000'
mysql:
    root_password: votre_mot_de_passe_root_bdd
    phpmyadmin: '1'
    databases:
        T7hssen8Pk2a:
            grant:
                - ALL
            name: clem
            host: localhost
            user: clem
            password: votre_mot_de_passe_bdd
            sql_file: ''

Bref, j’ai vraiment été séduit par le rapport effort/résultat. Il m’aura fallu environ 1h30 pour générer cette configuration de machine que je peux redéployer à volonté, ce qui est à peine plus que le temps que ça m’aurait pris si je l’avais fait à la main. Sauf que maintenant, tous les déploiements suivants peuvent se faire via vagrant up, et que si je souhaite travailler avec des collègues sur les projets pour lesquels j’ai construit cette machine, je peux leur fournir la configuration exacte de la machine à installer.

J’ai eu l’occasion de participer à un TEDx ce weekend. 15 conférences. Toutes n’étaient pas intéressantes et il serait inutile de chercher à toutes les résumer (le plus intéressant, c’est d’y être), mais il y a quand même un paquet de choses à raconter. Ted, c’est un rassemblement autour d’idées qui « méritent de se répandre », cette fois ci afin de réfléchir autour de la société, de ses transformations et de comment y vivre mieux en collectivité, en particulier avec le numérique et tout ce qu’il permet.

C’est aussi l’occasion de découvrir des concepts et des idées d’avant garde, et de rencontrer des gens qui font tout un tas de trucs dingues. Ca a également été une bonne leçon d’humilité, car je travaille à longueur de journées sur Internet, et ai l’impression d’en connaitre le fonctionnement, les codes, etc, mais pourtant j’ai rencontré des gens qui maitrisent le sujet bien mieux que moi et en ont des sujets en avance sur ce qui se fait aujourd’hui. C’est un style d’évènement marquant, car plusieurs après on repense encore à ce qui s’est dit lors d’une des conférences.

Parmi les idées à retenir:

  • @davanac et son garage. Pour enseigner les journalisme autour de quelque chose de marquant, il propose à des groupes d’étudiants de passer 4j dans un garage, ensemble. Il apport les bières, et ensembles il montent plusieurs projets. L’idée ? C’est en créant un environnement propice à des relations humains de qualité qu’il se passe des choses qui ont de la valeur, sur le plan professionnel comme sur le plan personnel.
  • Les MOOC. Massively Online Open Courses. De l’e-learning nouvelle generation, où dans l’avenir les universités ne présente que pour les interactions, et où les étudiants pratiquent la revue par les pairs pour corriger les copies.
  • Un mur des possibles, un mur en papier où chacun pouvait écrire ce qu’il ferait si tout était possible. Une idée intéressante mais sous-exploitée, et c’est dommage que beaucoup aient écrit des conneries ou des private joke.
  • Le concept de bio-hackerspace, des coins pour du bricolage collectif dédiés à la recherche en biologie, montés grâce au système D, et résolument tourné vers le partage des connaissances grâce à l’open source. Le moteur de leur naissance ? Un contre pouvoir citoyen qui travaille à des projets qui sont difficiles à faire dans des grands groupes, par exemple à cause des difficulté hiérarchiques. En france, direction La paillasse.
  • Une vidéo d’une gamine qui ira loin dans la vie.
  • Une vidéo vraiment inspirante sur comment prendre de nouvelles habitudes, en cherchant à faire quelque chose de nouveaux tous les jours pendant 30 jours. je l’avais vue un an plus tôt, et cela m’avait poussé à mettre en ligne jour28.fr, une application web dédiée sur le sujet (pas mal bugguée, et jamais terminée, mais c’est en train de changer ;)).
  • Plusieurs conférences inspirantes sur l’échec, l’innovation… impossible à retranscrire. Vous pouvez essayer de regarder des vidéos ted sur le sujet.
  • Un paquet de phrases, et d’exemples de types qui ont fait des trucs fous (Edison et ses 7000 ampoules qui ne marchent pas, Eiffel qui construit la tour éponyme envers et contre tous…)

Ça m’a donné envie de lire/voir/faire :

  • une contre histoire des internets, par la quadrature du net
  • surfer la vie, de Joel de Rosnay, que j’ai depuis des mois sur une étagère et que je n’ai pas ouvert
  • de jeter un oeil à phdcomics
  • bricoler un aéroglisseur
  • de réapprendre la bio
  • de me lancer dans des projets cools

Les trucs pas terribles :

  • le ton inutilement « pédant », en particulier avec l’usage répété et erroné du verbe hacker, ainsi qu’à cause d’anglicismes malheureux (le mot ‘talk’ pour ‘conférence’, malheureusement également très présent chez les développeurs). C’est la tendance qui veut ça, on croit qu’il est possible de hacker tout et n’importe quoi, et on est même convaincu qu’on innove quand on le fait. Par contre il est assez ridicule de croire qu’on hacke la politique quand on organise un forum de discussion, l’idée n’est pas révolutionnaire et sa présentation devient risible…
  • un choix de gens un peu trop ‘classique’, et assez peu varié. Normal qu’on voit plein de gens brillants mais j’aurais sûrement aimé plus de variété. La présence de plusieurs étudiants était dû au thème, mais bon…
  • plusieurs conférences qui se répétaient entre elles (que ce soit dans les thèmes ou les idées développées), ce qui est dommage étant donné la variété de choses qu’il était possible de raconter.
  • une ou deux conférences un peu brouillon, hors sujet ou bien où il était difficile de suivre là où le conférencier voulait nous amener. Mais globalement, dû au format très stéréotypé ted, les présentations étaient globalement très bien maitrisées et de bonne qualité.

Malgré ces quelques points noirs (je cherche un peu la petite bête), c’est un événement cool qui donne envie de se bouger, et de revenir l’année suivante.

Logo du Startup WeekendJ’ai fait mon second Startup Weekend la semaine dernière. Mon premier avait eu lieu en tant que participant début mars à Toulouse (j’en avais fait un retour), peu de temps après que je découvre ce concept fabuleux : concevoir en un weekend les bases d’une startup, à partir d’une équipe et d’une idée lancée sur le tas.

Ma motivation cette fois-ci était de proposer un projet. Par contre, j’avais beau avoir quelques idées, je n’avais rien préparé de sérieux ou consistant. Une fois dans l’amphi, il a donc été dur de lutter contre la timidité et proposer mon idée à 60 inconnus, en une minute. Je l’ai pourtant fait car je savais que ça en vaudrait la peine (ça n’a pas été facile), et je ne regrette pas. J’ai improvisé une intro pendant que le mec précédant présentait son idée, puis j’ai réussi à parler de la mienne : tirer avantage des nouvelles technologies pour le jeu en entreprise.
J’ai été un peu déçu après coup de ne pas avoir dit tout ce que j’aurais voulu dire, mais en une minute j’ai réussi à faire passer mon message, et des gens sont venus me voir pour en parler. Quelques un ont trouvé le concept intéressant et avec du potentiel, et m’ont soutenus. Si l’aventure s’était arrêté là pour ce projet, l’expérience aurait déjà été très enrichissante. Ca n’a pas été le cas.

Mon projet a été sélectionné.
Lire la suite »

StartupWeekendCe weekend, j’étais à l’école de Commerce de Toulouse pour participer au Startup Weekend qui y avait lieu. Le concept ? Réunir des gens et des idées dans un même endroit, sélectionner les idées les plus intéressantes ou prometteuses, monter une équipe, et leur faire construire une startup sur le sujet en un weekend. Je ne connaissais pas le principe il y a à peine un mois, mais l’idée m’a tout de suite séduit. Il y a des weekend de ce genre assez régulièrement aux 4 coins de la France, donc si vous avez l’occasion, n’hésitez pas !
Lire la suite »

Hello World !

7 novembre, 2011

Salut !

Bienvenue dans ce blog geeko-technique ou je vais vous parler de mes avancées dans l’univers du framework web Symfony, ainsi que de 2-3 choses en rapport avec le développement, les bonnes pratiques, tout ce joli monde. Je vais aussi vous parler de mes expérimentations avec les technos qui ont la côte, du style backbone.js et, globalement, tout ce qui est assez innovant en matière de web.