dimanche, septembre 9 2012, 22:42
Introduction sur les Tests Unitaires - Support de Formation
Par Olivier Hoareau - Evènements - Lien permanent
mardi, août 30 2011, 15:35
Présentation Drupal au Bordeaux PUG le 22/09 à 19h
Par Olivier Hoareau - Evènements - Lien permanent
Dans le cadre d'une PHP User Group de Bordeaux que je co-organise, nous accueilleront Stéphane Jaulin le 22 septembre 2011 à 19h qui viendra nous parler de Drupal.
mardi, avril 19 2011, 18:42
Fonctionnalité PM du jour : commencer à utiliser PM sur un projet existant
Par Olivier Hoareau - Outillage - Lien permanent
Vous travaillez déjà sur un projet de développement. Vous avez entendu parler (ou pas) d'un outil en ligne de commande qui s'appellerai PM et qui aurait certaines fonctionnalités obscures... Vous avez envie de le tester mais vous ne savez pas comment vous y prendre, ce billet est fait pour vous...
mardi, avril 19 2011, 18:10
Compiler PHP 5.3.x sous linux
Par Olivier Hoareau - Outillage - Lien permanent
Pour les besoins d'un futur billet sur ce blog, je décris ici un exemple de méthode de compilation de PHP sous Linux Ubuntu 10.04 LTS (64 Bits). La méthode reste la même dans les grandes lignes sur l'ensemble des distributions modernes, vous aurez peut être à personnaliser quelques dépendances de paquets par ci par là.
mercredi, avril 13 2011, 22:39
PM : Développeurs, augmentez votre productivité !
Par Olivier Hoareau - Outillage - Lien permanent
jeudi, mars 31 2011, 23:14
ARM : "Array Relational Mapping", où comment faire du lazy loading avec des arrays en PHP...
Par Olivier Hoareau - Trucs et astuces - Lien permanent
Considérez
$user = array('login' => 'ohoareau', 'company_id' => 12);
Imaginez que vous puissiez directement l'utiliser pour faire ça :
$login = $user['login']; // récupères les données de l'entreprise en réalisant // une jointure automatique $companyName = $user['company']['name'];
Sans avoir besoin d'utiliser un "objet" (ou classe) User pour charger "à la demande" les jointures avec la table organization...
mercredi, mars 23 2011, 07:00
Le comportement attendu d'une méthode : où comment se servir des conventions de nommage plutôt que des commentaires
Par Olivier Hoareau - Méthodologie - Lien permanent
Quel comportement attendez-vous quand vous appellez setX() ? getX($id) ? checkX() ? isX() ? listX() ? Chaque préfixe de nom de méthode à son propre "comportement attendu", voici une proposition de comportements communément utilisés...
dimanche, mars 20 2011, 22:26
Au secours j'ai trop de log !
Par Olivier Hoareau - Trucs et astuces - Lien permanent
Et vous comment faites vous pour n'activer que certaines lignes de debug mais pas toutes dans vos applications ?
dimanche, mars 20 2011, 22:01
Conférence au Bordeaux PUG sur un nouvel outil d'industrialisation PHP le 13/04/11
Par Olivier Hoareau - Evènements - Lien permanent
Le 13 avril prochain je présenterai mon outil de "gestion de projet" pour développeur PHP (version beta, open source, under heavy development).
En fait, vous aurez reconnu un outil en ligne de commande qui est un mix entre zf.bat / sf.bat et maven (entre autres ;)).
Voici le teaser de la conférence pour ceux que ca intéresse : http://bordeauxpug.org/2011/03/20/session-du-13-avril/
lundi, novembre 29 2010, 08:24
Piste pour gérer les spécificités de plusieurs clients (versions) au sein d'une même application (version)
Par Olivier Hoareau - Trucs et astuces - Lien permanent
C'est naturel (enfin pour la majorité) : on commence toujours par développer "spécifique" :
- écran et boutons d'actions spécifiques à notre client
- règle de gestion et workflow spécifiques à notre client
- messages d'erreurs et envoi d'emails spécifiques à notre client
- ...
Puis notre produit / logiciel est un premier succès et un autre client nous le demande, puis un autre, ... Nous devons alors faire face à un problème sans forcément nous en rendre compte : Comment gérer plusieurs mode de fonctionnement (i.e. un fonctionnement pour chaque client) au sein de la même application ? Comment éviter de dupliquer / cloner l'application et maintenir N versions en parallèle ?
samedi, novembre 27 2010, 14:46
Autoloader de classes : comment prendre en compte les namespaces de PHP 5.3+
Par Olivier Hoareau - Trucs et astuces - Lien permanent
Pour ceux qui ne connaissent pas (encore), le mécanisme d'autoload en PHP permet (entre autres) d'inclure "à la demande" les fichier-classe. Classiquement en PHP, nous faisons :
require_once 'My/Service.php'; $o = new My_Service();
Le mécanisme d'autoload permet d'écrire uniquement :
$o = new My_Service();
...
lundi, avril 26 2010, 00:10
" " : où comment afficher un compteur de lignes traités dans un batch, plutôt qu'un log volumineux
Par Olivier Hoareau - Trucs et astuces - Lien permanent
Vous avez un batch qui analysent des fichiers et qui affichent une ligne de log par fichier traités, voici une technique pour avoir un (fichier de) log moins volumineux
jeudi, avril 22 2010, 22:46
Batch : Attention à la mémoire vive
Par Olivier Hoareau - Analyse - Lien permanent
Le sujet des batch (en php) est assez récurrent dans le développement applicatif. On a souvent besoin de faire des scripts d'import, au hasard d'un catalogue de produits, par exemple.
Dans cette article je reviens sur une maladresse souvent implémentée dans les batchs et qui a un impact négatif sur les perfs et l'utilisation de la mémoire vive : le chargement de l'ensemble des données et l'utilisation du for(each).
mercredi, avril 14 2010, 23:53
Externaliser les messages d'erreurs des exceptions, pour les internationaliser, par exemple
Par Olivier Hoareau - Trucs et astuces - Lien permanent
Dans certains contexte, il est important de pouvoir fournir des messages d'erreurs dans différentes langues, par exemple en fonction de langue de l'utilisateur.
Parmi les sujets à mettre en oeuvre pour adresser ce point, les exceptions et leur messages sont à ne pas oublier, voici une technique que vous pouvez mettre en oeuvre.
vendredi, avril 9 2010, 22:26
Interface ArrayAccess : où des objets que l'on utilise comme des array
Par Olivier Hoareau - Méthodologie - Lien permanent
Cette semaine j'ai fait découvrir l'interface ArrayAccess à un des développeurs Parisiens que je coache.
Cette fonctionnalité lui a permis d'appréhender facilement les tests unitaires sur du code legacy, je reviens sur cette "expérience"
samedi, mars 27 2010, 21:05
Comment maîtriser la montée de version d'un framework dont votre application dépend ?
Par Olivier Hoareau - Méthodologie - Lien permanent
Vous utilisez très certainement un ou plusieurs framework comme fondations de votre projet / application (Symfony, Zend Framework, CakePHP...). Une des premières évolutions majeures (d'un point de vue technique, mais pas fonctionnel) consiste en la montée de version des frameworks dont vous dépendez. ...
mercredi, mars 24 2010, 09:00
Magento demystified : global picture de la séquence d'exécution d'une requête Magento
Par Olivier Hoareau - Architecture - Lien permanent
Ces 6 derniers mois, j'ai fait pas mal de R&D autour du produit Magento.
Je ne vous livre pas ici mes convictions sur le produits, mais juste une cartographie globale de la séquence d'exécution d'une requête Magento.
samedi, mars 20 2010, 23:57
Don't reinvent the wheel ... invent the car !
Par Olivier Hoareau - Méthodologie - Lien permanent
Vous avez déjà croisé des projets / équipes qui décident d'utiliser le dernier framework en vogue ? oui, certainement.
Par contre avez-vous déjà croisé des projets / équipes qui décident d'en changer (de framework) car ils se rendent compte que le choix n'est plus forcément pertinent ou le plus meilleur ? moi, non, pourtant c'est bien connu le la version parfaite d'un framework sur tous les sujets et ad vitam eternam n'existe pas...
samedi, mars 20 2010, 09:11
Retour d'expérience sur les métriques qualité d'une application Symfony d'un de mes clients
Par Olivier Hoareau - Analyse - Lien permanent
En novembre dernier je suis intervenu chez un client pour améliorer les pratiques de développements sur une application basée sur Symfony.
A cette occasion j'ai réalisé un audit de l'application, voici quelques métriques à noter sur cette application (il ne s'agit ni d'une tendance ni d'une moyenne, je vous livre ici les métriques brutes pour que vous puissiez comparer).
samedi, mars 13 2010, 09:00
Marathon de l'industrialisation : où comment outiller vos troupes en les motivant
Par Olivier Hoareau - Méthodologie - Lien permanent
« billets précédents - page 1 de 5