Revue de presse Industrialisation PHP de la semaine 40 (2010)
Understanding APC
APC est une extension PHP qui est à la fois un cache d'OPCode et un cache de données utilisateur. Le blog TechPortal explique son fonctionnement, le compare avec memcached et propose des clés pour déterminer quand choisir l'un ou l'autre.
Zend Framework app's PHPUnit suite 3x faster
Zend a choisi PHPUnit comme outil de tests unitaires pour son framework. Leur bonne intégration, notamment grâce à Zend_test, facilite beaucoup les tests d'application développées avec Zend Framework. Cependant, les tests touchant à la base de données restent lents à cause des vidages de tables après chaque test. Olek Janiszewski propose une solution ingénieuse à ce problème : utiliser des transactions et faire systématiquement un rollback après le test unitaire.
Créer une autorité de certification et des certificats SSL auto-signés
Utiliser des certificats SSL est très important pour améliorer la sécurité des applications web. Cependant, ceux-ci coûtent souvent cher. Il peut donc être intéressant de créer ses propres certificats lorsque cela est possible, notamment dans le cas d'un usage interne à une organisation.
Bugfixes without Tests are Anti-fixes
Dans un court article, Dan Ackerson rappelle a juste titre qu'une correction de bogue sans test revient à faire un pari dangeureux. On ne peut être sûr que le remède n'est pas pire que le mal et que ce bogue ne réapparaîtra pas plus tard. C'est d'ailleurs une des choses que les utilisateurs détestent le plus : ils ne comprennent pas comment un problème corrigé peut survenir à nouveau.
Examine All HTTP/HTTPS Traffic on Windows with Fiddler2
Bien que discret, le protocole HTTP est l'élément indispensable au fonctionnement des applications web. Il est parfois nécessaire d'étudier le détail des échanges HTTP pour débusquer l'origine d''un problème. Pour cela il existe des outils que l'on appelle proxies de développement. Comme leur nom l'indique, ils se placent entre le client HTTP, généralement le navigateur mais pas seulement, et le serveur HTTP analysant tout ce qui transite. Parmi les logiciels gratuits disponibles sur Windows, on trouve Fiddler2 dont parle le blog Coding This dans un article récent.
The story of one MySQL Upgrade
Cette semaine, le blog MySQL Performance, nous conte par le détail le déroulement d'une mise à jour périlleuse d'un serveur MySQL. On y apprend les étapes définies et les outils utilisés.
Revue de presse Industrialisation PHP des semaines 32 à 38 (2010)
Maintenant que l'été est derrière nous, il est temps de reprendre nos revues de presse hebdomadaires. Cette revue de rentrée va traiter de ce qui c'est dit d'intéressant depuis le début du mois d'août.
Apache 2, Cherokee, LigHTTPd, Nginx Benchmarked with Static Files, PHP5 Script and WordPress
La guerre des serveur HTTP est déclarée depuis longtemps entre l'omniprésent Apache et son outsider LigHTTPD. Depuis quelques temps cependant, de nouveaux venus ont fait leur apparition. Parmi eux, Nginx et Cherokee.
Leur panoplie fonctionnelle est encore loin de faire de l'ombre à Apache mais leurs qualités se trouvent plutôt sur le terrain des performances. Il était temps de les comparer sur 3 usages (affichage de fichiers statiques, de scripts PHP simples et d'un blog WordPress) pour y voir plus clair.
java, le papy du web : sa pertinence hier, aujourd’hui, et demain
Une fois n'est pas coutume, je vais vous parler d'un article sur Java. On parle beaucoup de l'avenir de PHP mais ses concurrents ont également leurs péripéties. Il est intéressant de voir comment Java s'est construit et comment il évolue.
Forget Concatenation; Format your strings!
Des études ont montré que jusqu'à 70% du temps passé à travailler sur un morceau de code est dévolu à sa maintenance. Il est donc primordial que celui-ci soit clair et lisible. La concaténation de données complexes met souvent à mal ce but. La solution est souvent de privilégier le formatage.
Les interfaces, c'est bon, mangez-en !
Les interfaces sont probablement la fonctionnalité la plus sous-utilisée par les développeurs PHP de la Programmation Orientée Objet. Elles permettent pourtant de créer du code structuré mais découplé.
Exception Best Practices in PHP 5.3
Dans la série des concepts de la Programmation Orientée Objet sous-utilisés par les développeurs PHP, le second sur la liste me semble être les exceptions. Elles sont présentes dans le langage depuis la version 5.0, qui est sortie il y a 6 ans déjà, mais il est encore peu courant d'en voir un usage intensif et efficace dans le code rencontré. Ralph Shindler explique comment les utiliser au mieux et tirer parti des nouveautés introduites dans PHP 5.3.
Raw vs. cooked PHP $_POST variables
L'une des forces de PHP tient aux multiples petits détails destinés à faciliter la vie d'un développeur. Il arrive cependant que le côté magique de ces fonctionnalités puisse être déroutant si on n'en connaît pas le mécanisme interne. C'est notamment le cas de la gestion des champs de formulaire dont le nom se termine par "[]". PHP les interprète comment étant des tableaux mais ce n'est pas ce que dit HTTP, d'où parfois des confusions.
Things I learnt tracking a billion events in 24 hours
L'équipe de Playtomic, un outil analytique destiné aux éditeurs de jeux flash, doit quotidiennement faire face à une forte charge sur ses serveurs. Dans un article récent, ils nous font part des leçons apprises dans la gestion de cette situation.
Revue de presse Industrialisation PHP de la semaine 26 (2010)
Voici la dernière revue de presse avant les vacances. Selon l'actualité, j'espacerai peut-être un peu les revues de presse pendant les deux mois qui arrivent.
10 Tips for Optimizing MySQL Queries (That don’t suck)
Les conseils d'optimisation pullulent sur internet. Malheureusement, le meilleur côtoie parfois le pire comme le montre Jesse Farmer avant de proposer une liste des 10 optimisations pour MySQL qu'il considère utiles.
C'est la fête du test
Dans le prolongement de mon article sur le TestFest PHP 2010, Frédéric Hardy a rédigé un article qui explique en détails comment écrire son premier test unitaire pour PHP.
Xdebug 2.1
Derick Rethans a publié cette semaine la version 2.1 de son outil Xdebug. Cette version est la première à être totalement compatible avec PHP 5.3. Au menu des nouveautés, on trouve notamment la possibilité de tracer l'assignation des variables, de désactiver les opérateurs @ et de savoir quel bout du code a défini des entêtes HTTP.
Do yourself a favour and don’t test using HTTPS
Utiliser des connexion HTTPS en production est une très bonne chose mais cela complique souvent les tests IHM. Adam Goucher explique les raisons du problème et propose de tout simplement ne pas utiliser HTTPS lorsqu'on n'est pas en production.

