Le crime en Iceland

Lien

La lecture cet article de BBC News me donne vraiment envie d’aller en Iceland.

L’article (en anglais) : Why is violent crime so rare in Iceland?

Bicycles are left unlocked on the streets of Reykjavik

C’est un peu comme un film où tout est beau et les oiseaux chantent, mais sans retour à la réalité et sans : « La vie n’est pas rose! »

Homicide count in 2009
- Brazil 43,909
- Denmark 47
- Iceland 1
- UK 724
- US 15,241

Source: Global Study on Homicide (UN)

Le petit mot qui fâche : pourquoi est-il si compliqué de trouver l’auteur d’un article de BBC News ?

Extra-vagrant Chef!

En une dizaine de jours avec le nez dans les problématiques de migration de serveurs et de versions de PHP, MySQL et NGINX, je suis tombé sur Vagrant.

logo vagrant        logo-chef

Il s’agit d’une interface à VirtualBox en ligne de commande qui permet très simplement de maintenir des environnements isolés pour le développement ou la production. Le site vagrantbox.es propose un certain nombre de boites prètes à l’emploi. Ubuntu, Archlinux, Debain … you name it!
Le meilleur dans ce type de workflow à base de machines virtuelles c’est le provisionning : de la magie! Il s’agit d’installer et de configurer tous les logiciels nécessaires dans la boite de manière automatique. On utilise Chef pour cela.
Je n’ai pas encore écris de Vagrantfile personnellement mais je me sert de celui de  qui inclue Nginx, PHP-FPM et Memcache.

Migration de serveurs

Je suis en train de migrer les serveurs de plusieurs projets différents pour les centraliser un peu et surtout pour avoir une offre un peu plus adapté à mes besoins grandissants.

Ce n’est pas simple de faire cette migration mais je vais y arriver avec un peu de chance. Je vous tiendrais au courant des retombées de la migration dés qu’elle sera finie.

Vive le Python

logo python

Je suis sensé me concentrer sur le C ce semestre donc je me met à coder en Python; je trouve cela tout à fait logique …

Il y a des éléments de Python que j’aime beaucoup comme l’aspect modulaire, le parser de Json et surtout la POO.

Je suis toujours sur mon script de sauvegarde (au revoir le bash au passage), le but étant de partir d’un fichier .json décrivant des taches de sauvegarde sous la forme :

{
    name:           "Documents"
    local_path:     "~/Documents"
    exclude:        "Dossier1 Dossier2"
}

Ensuite la magie de Python opère et permet de générer les différentes commandes relatives à la tache si dessus :

date "+%Y-%m-%d %H:%M:%S" > Backups/{user}/Documents/logfile.txt
rm -rf "~/Documents/Dossier1"
rm -rf "~/Documents/Dossier2"
rsync -az --delete --exclude="Dossier1" --exclude="Dossier2" "~/Documents/" "Backups/{user}/Documents/"

De même pour une sauvegarde de type partagé on peut obtenir :

find "~/Music/" -path "*iTunes" -prune -o -type f -print > "Musique/myfile.txt"
rsync -az --exclude-from=".syncignore" --exclude="iTunes" "~/Music/" "Musique/"
date "+%Y-%m-%d %H:%M:%S" > Musique/logfile.txt

Rien de bien fou en somme mais Python permet de parcourir simplement un ficher Json, ce qui est sympa pour la configuration. De plus cela me permet d’ajouter simplement pas mal de petit trucs en plus comme l’affichage de la date de la dernière sauvegarde, des jolis widgets de progression …

Je continu de peaufiner un peu cela et je vous montre ensuite.