Articles

Vagrant

Avec PHP7 et les backward incompatibilities des objets j'ai du regarder de plus près 2 technos pour faire cohabiter deux éco-systèmes de dev au sein de ma machine, histoire de pas se retaper de mise à jour sur du code qui finira ses jours sur un serveur PHP 5.6 Les deux nominés sont Docker et Vagrant . Ce sont deux environnement de virtualisation d'application qui s'utilisent via des ports dédiés au lieu du bon vieux 80 qui restera sur l'Apache de ma machine. La différence notable entre les deux c'est que docker est sensiblement plus léger et réactif que Vagrant mais qu'il ne peut faire tourner que des OS similaire à son host (le serveur des VM). En gros si vous êtes sur Linux vous pouvez émuler plus ou moins tous les Linux et si vous êtes sous Windows vous "devriez" pouvoir en faire de même avec les OS Windows. Par contre impossible de faire tourner une Ubuntu sur un Windows ( enfin pour le moment ) Pour la production, aucun doute Docker et be...

Optimisation des VM Debian dans un cluster VmWare ESX

Image
Celle là, elle m'a tellement bien occupé que je me dois de vous la raconter... TL;DR: If you're using a Linux ou Windows VmWare VM on an ESX (clustered or not) with a dedicated Disk Bay, and you experiment slow disk access and speed, you MUST set 1 CPU with 4 Cores in your VM.  Depuis quelques mois, on nous remonte un problème de performance sur la plateforme web que nous avons créé. Cette plateforme se compose de plusieurs VM Debian sous un cluster VmWare ESX. Comme un gros malin j'ai oublié il y a 4 ans de coller les datas MySQL sur la partition de données d'un des serveurs web mutualisé. 4 ans plus tard, la partition de 10go est pleine quand MySQL n'a plus assez de mémoire et doit swapper. 1ere correction augmenter la taille de la mémoire. On est passé de 4Go (lol) a 16Go. J'ai ensuite passé une petite journée à optimiser les tables critiques et les paramètres du serveur à l'aide du bien utile " mysqltuner " (apt-get install mysqltuner)....

IPv6 et lenteurs de débit en FTP sur un fichier .rar

Encore une bonne blague... TR;DL: If you don't use IPv6 disable it ! Notre serveur FTP principal a eu un comportement extrêmement étrange ces derniers temps. Un de mes collègues m'a remonté un problème sur le téléchargement d'un fichier de 200Mo qui prenait un temps infini. Incroyable puisque le fichier juste à coté se faisait en quelques minutes à un débit avoisinant les 1,5 Mo/s La seule spécificité du fichier lent, c'était son extension en .rar La grosse blague et qu'en utilisant un protocole crypté (FTPS en TLS) plus de soucis sur le fichier. Seul le téléchargement sans la couche TLS (donc en clair) posait d’atroces problèmes. Evidement on a regardé du côté des débits mais en se connectant sur soit même les débits étaient parfaits, mais même au sein de la DMZ, c'est à dire sans routage, l'improbable se produisait. Ce n'est qu'au bout de longues recherches et en utilisant monitorix que j'ai fini par trouver... L'IPv6 était a...

RFID RC522 on Raspberry PI with NodeJS

Image
It's kind of hard to succeed in this. Most of tutorials are uncomplete. Here is my compilation. Everything is done on the PI 0) Install node wget http://node-arm.herokuapp.com/node_latest_armhf.deb sudo dpkg -i node_latest_armhf.deb 1) Update your PI:  sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade sudo rpi-update sudo apt-get clean 2) Configure the SPI group: sudo groupadd -f --system spi sudo adduser pi spi # assuming the pi account is the one that will access SPI sudo nano /etc/udev/rules.d/90-spi.rules Then add this to the file : SUBSYSTEM=="spidev", GROUP="spi" 3) Configure the PI: sudo apt-get install build-essential sudo npm install -g node-gyp sudo raspi-config   under Advanced Options - enable Device Tree   under Advanced Options - disable SPI sudo reboot 4) Compile the spi_bcm2835 driver: wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.46.tar.gz tar -zxf bcm2835-1.46.tar.gz cd bcm283...

Angular 2.0 : Retour en grâce ?

J'ai très (très) longtemps fustigé Angular 1 et c'était encore le cas récement.  Je reste d'ailleurs persuadé que la version 1 d'Angular a été faite par des javaïstes refoulés qui souhaitaient torturer des gentils développeurs JS. Il y a plus d'un an, j'ai tenté pleins de framework. J'ai vite délaissé Ember parce qu'il reprenait trop de concept de Angular1 et qu'il fallait au moins 3 fichiers ou fonctions (à l'époque) pour coller un "Hello World" dans une div. Et les promesses étaient encore une vision d'esprit seulement accessibles que via Q.JS... React me semblait trop déconnecté du DOM et de ce que j'ai pu en lire, pas mal de monde pignait sur des problèmes de refresh de certains éléments dans un DOM complexe. De quoi pas donner envie... J'ai biensûr regardé du coté de Backbone mais là c'était quand même beaucoup de boulot pour arriver à la fluidité de code que je souhaitais obtenir. Y'a même eu Knockout (...

Quelques pas vers le management 3.0

Image
Chef de projet chez NCI ça doit essayer de savoir un peu tout faire. Développement, Veille Techno, Commercial, Management, Gestion de projet, etc. Dans la série Management, voici mon talk fait lors des rencontres interactives organisées par Laurent Demontiers . J'y donne quelques tuyaux pour gérer une petite équipe sans se prendre la tête à l'aide de méthodes Agiles issues KaiZen et du Management 3.0 (Jurgen Appelo).

Si tu veux mon avis sur Drupal

Image
"Quand on me demande mon avis sur Drupal"