Les billets de blog

Docker Apache Mysql PHP

Ce matin un collègue me demande “comment tu ferais pour travailler en PHP avec Docker ?” - la question étant de pouvoir “développer localement en PHP + Apache + MySQL sans avoir à tout installer”. Ma réponse a été “docker-compose et des liens + des volumes”. Du coup, un petit billet pour expliquer la méthode s’imposait. Voici comment je procède.

Une ligne pour avoir un serveur HTTP de développement

En parcourant des pages de ci de là, j’ai découvert deux commandes qui permettent de développer rapidement des pages nécessitant des appels HTTPRequest,

Alors que je m’amusais à développer un émulateur d’Assembleur avec en prime quelques binding de AngularJS, il m’a fallut utiliser un serveur Web pour que les appels HTTPRequest (ce que beaucoup appellent à tort Ajax). De prime abord, on aurait le réflexe de se dire “ok, on a deux possibilités, je me configure mon serveur Web pour qu’il puisse servir mon dossier de travail, ou sinon je déplace le tout dans /var/www…” avec tout les soucis de droits qu’il faut gérer.

Et si on regardait nodejs

Quand j’entend beaucoup de développeurs (expérimentés qui plus est) cracher sur Javascript, je me dis qu’il y a un vrai souci avec l’image de ce langage… Car j’ai beau regarder, tester, Javascript reste pour moi l’un des meilleures langages à ce jour. Lorsque l’on voit Firefox codé en XUL (donc en partie en JS) ou encore les capacités extraodinaires de WebGL (voyez le projet Ro.me), je me demande bien pourquoi on lui fait tellement de tort. Et c’est sans compter sur le pojet “node.js” qui est en phase de faire poids devant les grand maîtres des langages web: PHP, Java et Python.

PHP Phar

Bon pendant qu’on y est, je vais vous présenter un truc pas nouveau mais dont j’ai quand même envie de parler: Phar ! C’est un peu comme un “jar”, ça rend service et en plus ça marche !

Streaming PHP pour video ogv

Il est possible de streamer un flux avec PHP. En général on s’en sert pour la vidéo ou l’audio, mais c’est aussi très utile pour les clients qui savent gérer ce que l’on appelle un “resume download” (récupération d’un téléchargement coupé à certain endroit). Cela est aussi presque une obligation lorsque l’on veut utiliser la balise “video” en HTML5 et que le format n’est pas auto-streamé (les H264 par exemple n’ont pas ce souci) tel que le format libre Theora Ogg Vorbis.

Coder from scratch

Voilà l’heure de la réflexion sur mes 9 ans de développement PHP. Je suis passé par un paquet de frameworks, de CMS, et je ne peux qu’apprécier d’avoir une standardisation de travail. Cela dit, alors que je tente de coder un petit site interactif et communautaire… je me suis passé de CMS ou de framework. Les raisons sont obscure, je suis parti de tests et j’ai continué à implémenter du code… et du coup j’ai oublié de passer par un framework. Sauf que voilà, le résultat fonctionne très bien, il est rapide… et je dois alors me poser la question: est-ce si bien de travailler avec un framework ou un CMS ?