To content | To menu | To search

Tag - clichés

Entries feed - Comments feed

Tuesday 6 February 2007

Ergonomie d'un blog

Petite étude rapide sur l'ergonomie des blogs, chez Biologeek. Le panel représentatif est peut-être un peu faible, mais l'analyse compense :-)

Wednesday 29 November 2006

Collections, Object Chaining, et la vérité sur le Père Noël

Aujourd'hui je vais vous parler de deux concepts que j'aime beaucoup et que j'ai (re)découverts en travaillant sur mon projet personnel de conquête de l'univers: les Collections d'objets et l'Object Chaining.

Les collections, qui sont peut-être finalement un design pattern connu sous un autre nom, permettent d'executer aisément des méthodes sur plusieurs objets (une collection d'objets quoi). Concrétement, disons qu'on à une classe My_Collection, qui implémente les interfaces Iterator (et Countable tant qu'a faire) de la SPL, ainsi que la fonction magique __call suivante (je vous fait grace du docblock):

class My_Collection implements Iterator, Countable {
	public function __call($method, $args) {
		$calls = 0;
		foreach($this as $item) {
			if (method_exists($item, $method)) {
				call_user_func_array(array($item, $method), $args);
				$calls++;
			}
		}
		if ($calls > 0) {
			return $this;
		} else {
			throw new My_Collection_Exception('Method catched but could not be called: '.$method);
		}
	}
}

Ce dispositif permet d'utiliser le genre de code suivant (si les objets de la collection le permettent, bien évidemment, et disons qu'ici ce sont des objets représentant des images, supportant les méthodes move et createThumbnail):

# $array contient les objets My_Image
$collection = new My_Collection($array);
$collection->move('/new/path/')->createThumbnail();

Ce qui, comme vous l'aurez deviné, déplacera les fichiers de la collection vers /new/path, puis en créera des miniatures.

Deuxième chose, l'Object Chaining. On vient de le voir en fait, ça consiste à chainer les appels de méthodes grâce à un subtil return $this;, qui retourne donc une référence à l'objet courant. Exemple pratique, dans le Zend Framework, en étendant Zend_View:

class My_View extends Zend_View {
	public function assign($spec) {
		$args = func_get_args();
		call_user_func_array(array('parent', 'assign'), $args);
		return $this;
	}
}

Ce qui autorise le genre de code suivant (en admettant que vous ayiez une instance de My_View dans le registre):

Zend::registry('view')
	->assign('foo', $foo)
	->assign('foo', $bar)
	->render('template.php');

Et là c'est fort, parceque ça rejoint fortement quelque chose dont je parlais en janvier dernier (le truc qui parle de with), et donc j'en déduis une chose formidable: Le père noël existe, et il m'a entendu. Merci Santa Copain.

Tuesday 28 November 2006

Linux + gVim + Rox-filer = Mon IDE.

Une des questions cruciales qui se pose à tout développeur à au moins un moment de sa vie (souvent plusieurs en fait) est le choix d'un environnement de développement. J'en ai testé pas mal, plus ou moins longtemps, et bien que je ne sois jamais complètement satisfait, l'idée de perdre du temps à développer le mien m'indispose. J'ai donc opté pour l'environnement qui me va le mieux: Linux + gVim + Rox-filer.

Note: je ne couvre pas ici les fonctionnalités de débuging avancé, que je n'utilise pas encore, mais pour lesquelles j'ai déjà en tête des solutions qui me conviendront bien mieux que les outils intégrés à un quelconque IDE (je pense fortement à Xdebug).

Continue reading...

Thursday 23 November 2006

Discussion sur l'optimisation en PHP chez NiKo

Une petite discussion sur l'optimisation en PHP à lieu en ce moment chez NiKo ! Ce n'est pas souvent que je link directement comme ça, donc dites vous que quand je le fais, c'est que ça en vaut la peine ;-)

Sunday 29 October 2006

Bonnes pratiques PHP

Vite fait, un petit jeu pour vous, amis PHPiens.

Dans le snippet de code qui suit se cachent 6 bonnes pratiques (7 selon le degré de subjectivité que l'on inclue dans une bonne pratique), saurez vous les retrouver ?

<?php

$code_is_ugly = true;
if (9069 === $code_author) {
	$code_is_ugly = false;
}

?>

Friday 20 October 2006

Un forum qu'il est bien: Invision Power Board

Alors au taf on va déployer des forums sur l'ensemble des sites du groupe, et donc après un rapide tour des forums disponibles (tant libres que commerciaux), on a choisi Invision Power Board. Après une matinée de trifouillage, j'ai l'intime conviction que nous avons fait le bon choix. En effet, avec Invision Power Board, on peut mettre en place un SSO en moins d'une heure tout en

  1. buvant son café
  2. lisant ses RSS
  3. discutant avec son chef
  4. glandant sur IRC
  5. rigolant avec les collègues

Et ça, c'est pas avec des forums libres que c'est possible.

Wednesday 18 October 2006

Coca-Cola et Minute Maid

Non je ne vous dirai pas que Minute Maid appartient à Coca-Cola, tout le monde le sait déjà. Le truc qu'on ne sait pas forcément, et ce surtout grâce au célèbre mantra coca == sucre, c'est qu'un Coca-Cola est moins calorique et contient moins de glucides qu'un Minute Maid Tropicale. Qui l'eut-cru ?

Friday 13 October 2006

Marre

Toujours à se plaindre sans réfléchir, prompt à insulter quelqu'un qui lui répond pourtant courtoisement, et bien sur, ne reconnaissant jamais l'aide qu'on peut s'efforcer de lui apporter, l'internaute de base est vraiment un c*nnard, surtout quand il a tort (c'est à dire la majorité du temps).

Sunday 17 September 2006

Arrêter de fumer: fausse bonne idée ?

J'avoue, j'avais envie d'avoir un titre polémique à la con, et ne nous leurrons pas, arrêter de fumer est toujours une bonne idée. Je voulais juste vous faire part de quelques réflexions à ce sujet. Tout d'abord, sachez qu'arrêter de fumer fait grossir. C'est inéluctable si on ne prend pas soin de remplacer la clope par une activité saine et physique (en général c'est du sport). J'ai personellement pris une bonne dizaine de kilos en moins de 10 mois après avoir arrêté de fumer. Ma coiffeuse me disait cet après midi qu'un de ses collègues avait pris 17 kilos en moins de 2 mois ! Dingue non ? Deuxième point, l'acte de fumer est un facteur d'intégration social. Ca parait con comme ça, mais engager la conversation sur un t'as pas du feu ? ou t'as pas une clope ? n'est pas rare, d'autant plus quand on arrive dans un milieu nouveau mais dans lequel on risque de passer une grande partie de son temps (école, travail, etc.). Par exemple vendredi, en sortant du bureau j'ai croisé Bertrand (ce n'est pas son vrai prénom non, mais j'essaye de me conformer à la règle 364) qui fumait sa clope, et comme j'aime bien Bertrand mais que je n'ai pas souvent l'occasion de parler avec lui (il est journaliste, donc il travaille à l'autre bout des locaux), j'aurai bien aimé rester à fumer une clope avec lui pour discuter. Dernière chose, fumer c'est foutrement agréable, quoi qu'on en dise.

Maintenant, n'allez pas croire que j'incite les gens à fumer, bien au contraire. Le non-fumage possède bien ses avantages indéniables, nottament au niveau physique: on respire mieux, c'est un fait. L'odorat et le goût sont des sens complètement dévastés par la cigarette. La majorité des fumeurs vous soutiendront que non non ça va, je sens les odeurs, mais ils se fourvoient, comme je me suis moi même fourvoyé à l'époque. En deux semaines l'effet est foudroyant, surtout au niveau du goût pour moi (je suppose que c'est différent pour tout le monde). Autre effet notable: on devient plus riche. Pour une personne qui, comme moi auparavant, fume un paquet de cigarettes par jour, ce sont pas moins (souvent plus en fait) de 5 euros par jour qui s'envolent en fumée, au sens le plus strict du terme. 5 euros par jour, ça fait 150 euros par mois, c'est énorme, même quand on gagne bien sa vie (comme moi oui, même si je ne suis pas l'homme le plus riche du monde). La plus grande des joies étant de pouvoir se regarder dans la glace et de se dire que la victoire de l'homme sur le tabac, c'est beau.

Dernière chose à noter: Rien n'impressionne un fumeur. Vous aurez beau lui dire qu'il court à sa perte à chaque bouffée qu'il inhale, que ses clopes sont bourrées de produits nocifs pour la santé, qu'il creuse sa tombe, etc., il le sait déjà et, la plupart du temps, il s'en fout. Que voulez vous faire contre quelqu'un qui court sciemment au devant de sa mort ? Il est beaucoup plus facile d'arrêter de fumer inconsciemment. C'est comme ça que j'ai fait: ma copine (toute neuve à l'époque) m'incitait à réduire ma consommation (contrairement à une ex qui m'avait interdit de fumer, ce qui est la pire chose qu'on puisse faire), et plus le temps passait, moins je fumais. Au bout de 2 mois (maximum), je ne fumais plus, sans m'en être rendu compte. Dingue.