Aller au contenu | Aller au menu | Aller à la recherche
Comme tous les ans, je serai au Forum PHP 2008. Le programme est alléchant alors si vous n'êtes pas encore inscrit, c'est par ici.
Et si vous voulez afficher votre présence au forum, vous pouvez utiliser la bannière suivante :

La saison des Apéros PHP lillois reprend le 20 octobre à 19h30 à l'Ecart.
Damien Seguy, fondateur de Nexen, profitera de sa présence à Lille ce jour là pour donner une conférence lors de cet Apéro PHP.
Les Apéros PHP sont toujours un moment privilégiés pour échanger autour d'un verre sur les sujets qui vous intéressent alors n'hésitez pas à venir nombreux !
Les inscriptions au Forum PHP 2008 sont ouvertes. Cet évènement majeur du monde PHP francophone se déroulera les 8 et 9 décembre à Paris. Cette année les deux thèmes principaux sont "Web services professionnels" et "Grands projets en PHP : organisation, méthodes et bonnes pratiques".

Comme l'an passé, la première journée sera plus axée fonctionnelle tandis que la seconde sera plutôt destinée aux techniciens.
Le programme de cette année est une fois de plus très alléchant avec la présence de trois personnalités importantes du monde PHP et du monde du logiciel libre :
Parmi les temps forts de ce forum nous pouvons mettre en avant les sessions "Retours d'expériences : Drupal, 20Minutes.fr et la BNP" et "Oracle côté serveur, Javascript côté client" pour la journée fonctionnelle ainsi que les sessions "Conception d'une application PHP performante (analyse de code / découplage)" et "Les solutions Haute disponibilité avec MySQL" pour la journée technique.
La première télévision sur le web entièrement consacrée à PHP vient d'être officiellement lancée. PHPTV est une initiative de l'AFUP produite par la société OpenStates. Cette web TV publiera une émission chaque mois.

Au programme de la première émission, on trouve :
Samedi, j'ai participé au PHPCamp organisé par l'AFUP à la Cantine, à Paris. (Oui je sais, je n'ai pas trouvé pris le temps de l'annoncer, honte sur moi)
Que dire de cette journée ? Tout d'abord parlons du lieu, La Cantine. C'est un endroit agréable, très convivial. Paul, le maître des lieux, a su s'occuper de nous avec soin. Rien à redire.
Image de Julien Pauli
Concernant les sessions, les sujets étaient variés. Allant de thèmes assez génériques comme les frameworks ou la qualité logicielle jusqu'à des choses plus pointues comme le web scraping ou encore PHK, un gestionnaire de paquets pour PHP.
Ce genre de rencontre est également l'occasion de revoir des têtes connues, de faire de nouvelles rencontres et même de retrouver des personnes rencontrées il y a des années puis perdues de vue.
Enfin, Raphaël Rougeron a animé un atelier PHP TestFest tout au long de la journée. L'objectif était de montrer à qui le souhaitait comment on peut aider le projet PHP en écrivant des tests unitaires. Cela a permis de démystifier l'exercice qui finalement à la portée de bien des développeurs PHP. C'est un moyen simple et efficace de participer activement à l'amélioration de PHP.
Un groupe Flickr a été créé pour centraliser les photos prisent lors de ce PHPCamp.
Comme chaque année, le Forum PHP se tiendra cet automne.
Si vous avez envie de présenter une technique, un outil, un savoir-faire lié au monde PHP ou faire un retour d'expérience de l'utilisation de PHP au sein de votre entreprise, n'hésitez pas à postuler.
Le semaine dernière, j'ai eu le plaisir de présenter PHP 5.3 et PHP 6 aux étudiants de la Licence PRO WebDéveloppeur de l'INSSET de Saint Quentin.
La présentation est disponible sur la page des conférences données par Kanopée.
Donner cette présentation était quelque chose d'important pour moi à deux titres. Le premier c'est qu'il y a 6 ans, j'étais moi-même élève de la première promotion de cette licence. Le second est qu'à la rentrée prochaine, je vais assurer le cours de PHP dans cette même licence. Il s'agissait donc en quelque sorte d'une répétition.
Comme prévu, j'ai eu le plaisir de donner une conférence à Montréal lors de la rencontre PHP Québec de février.
Le sujet était "Déboguer une application web avec FirePHP". Déboguer une application web peut rapidement devenir fastidieux. L'utilisation d'un débogueur simplifie ce processus mais il n'est pas toujours possible d'en utiliser un. FirePHP est une extension Firefox qui permet de fournir des informations de déboguage sans interférer avec l'affichage de l'application web. Cela est particulièrement pratique pour déboguer de l'Ajax par exemple.
Vous pouvez télécharger la présentation ainsi que le code source des exemples sur le site de Kanopée. Enfin, grâce au bons soins de Damien Seguy un enregistrement vidéo de cette conférence est disponible.
J'aurai la chance d'être au Canada pour deux semaines de vacances début février. En plus de la découverte de ce pays qui s'annonce très beau (et froid), je participerai à la rencontre mensuelle de PHP Québec qui aura lieu le 7 février 2008 de 19h à 22h à l'École de technologie supérieure dans la salle B1510.
J'y ferai une présentation de FirePHP et de la manière dont son utilisation peut faciliter le débogage d'une application PHP.
L'AFUP vient de mettre en ligne le site Planète PHP Fr qui regroupe les billets des blogs et des sites francophones traitant de PHP.
Si vous connaissez un site francophone intéressant et traitant de PHP qui n'est pas listé, n'hésitez pas à le signaler à l'adresse planetephpfr@afup.org.
Merci à Perrick pour avoir pris le temps de faire aboutir ce projet qui traînait dans les cartons depuis trop longtemps.
Si, comme moi, la défense des privilèges intérêts vitaux de nos amis de la SNCF vous a empêché de vous rendre au Forum PHP 2007, consolez vous.
L'AFUP vient en effet de mettre en ligne les premières présentations des conférences ainsi que les premiers podcasts. Les autres seront mis en ligne au fur et à mesure de leur disponibilité.
Par ailleurs, des résumés pour chaque conférence seront prochainement mis en ligne.
Je ne sais pas pour vous mais pour moi le temps file à une allure folle. Dans seulement trois semaines aura lieu le Forum PHP 2007.
Cette année encore, ce sera l'occasion de rencontrer quelques "stars" internationales comme Rasmus Lerdorf, le créateur de PHP, Andrei Zmievski, Derrick Rethans mais aussi et surtout de croiser les acteurs majeurs de PHP en France.
Par ailleurs, une conférence de dernière minute est venue s'ajouter. Elle portera sur les technologies Microsoft dans le cadre du développement d'applications avec PHP et notamment Fast CGI dans IIS 7, Microsoft Ajax Framework, Phalanger (Compiler du PHP pour le framework .NET) et enfin Silverlight.

Les inscriptions au Forum PHP 2007 sont ouvertes depuis ce matin.
Pour rappel, au programme de cette édition 2007, on trouve notamment :
Je ne peux que vous encourager à vous inscrire rapidement car chaque année le forum est complet quelques semaines avant sa tenue.
Après un an et demi de développement, PDT (ex PHP IDE) sort aujourd'hui en version 1.0. Développé en tant que plugin d'Eclipse, PDT souhaite devenir l'éditeur PHP Open Source de référence.
PDT est l'extension de WTP pour les développeur PHP. Il est construit selon 3 axes :
Par ailleurs, l'avantage de son implémentation en tant que plugin Eclipse est que l'on peut profiter de l'écosystème d'Eclipse comme les plugins Subclipse et Aptana notamment.
L'AFUP vient d'annoncer officiellement le programme du Forum PHP 2007 qui aura lieu à Paris les 21 et 22 novembre prochains.
Kanopée, ma société de développement d'application web fait partie des organisateurs de l'évènement. Vous pourrez donc m'y croiser alors n'hésitez pas à venir faire connaissance.
J'ai suivi récemment la formation eZ Publish Basics à Lyon. A la demande de certains lecteurs (c'est mon côté diva qui aime se faire solliciter), je vais résumer un peu ce qui s'est passé pendant ces 4 jours.
La formation s'est déroulée dans les locaux lyonnais d'eZ Systems. Situés en plein coeur de la ville, ceux-ci sont agréables et l'équipe charmante. Nous étions 4. D'après ce que j'en sais, la formation se fait par groupe de 3 à 7 personnes.
Au niveau du contenu,la formation est découpée ainsi :
Notre formateur a été très à notre écoute, adaptant le rythme, ses explications et certains exercices au niveau des participants. Dans notre cas le niveau étant plutôt bon, le rythme a été soutenu et à vrai dire assez intensif mais cela nous a permis de couvrir un maximum de choses.
Sans fausse modestie, je pense être un développeur PHP expérimenté. Je n'ai pas trouvé cela techniquement difficile. En revanche, la quantité de concepts et de pratiques à intégrer est assez conséquent et nécessite probablement de ne pas avoir à se battre avec la technique en plus.
Je suis très content d'avoir suivi cette formation et autant avant d'y aller j'avais un doute sur sa nécessité autant après avoir vu la quantité de choses à apprendre pour (bien) développer avec eZ Publish je me demande comment j'aurais fait pour m'auto former en un temps raisonnable.
Par ailleurs, j'ai pu à cette occasion revoir ou rencontrer un tas de gens plus sympathiques les uns que les autres grâce à l'organisation d'une soirée par Thanh. Merci à lui.
Enfin, ce séjour à Lyon m'a permis de mieux découvrir cette belle ville et certains de ses restaurants comme Le Petit Léon, le Carré Saône (et son filet mignon au miel) ou encore Le Comptoir des Marronniers que je vous recommande chaudement.
L'AFUP vient de lancer un appel à conférenciers pour le Forum PHP 2007. N'hésitez pas à postuler si vous avez une expérience intéressante ou des connaissances poussées à partager.
Un ordinateur et un homme ne voient pas toujours les choses de la même manière. Les tris notamment réservent des surprises. Prenons un exemple avec PHP.
Soit le tableau associatif suivant où la clé représente un numéro de version et la valeur, le nombre d'installation répertoriée pour celle-ci :
$tableau = array( '2.1.1' => 38, '1.0.8' => 14, '2.1.12' => 53, '2.1.6' => 38, '1.9.7' => 26, );
On souhaite le trier selon la version. Pour cela, on peut utiliser la fonction ksort() qui trie un tableau selon la clé. On obtient alors :
array(5) {
["1.0.8"] => int(14)
["1.9.7"]=> int(26)
["2.1.1"] => int(38)
["2.1.12"]=> int(53)
["2.1.6"]=> int(38)
}
L'ordre semble bon à première vue mais si on regarde de plus près, les version 2.1.12 et 2.1.6 sont inversées. Tout du moins, notre cerveau les aurait triées différemment. La raison est toute simple. PHP constate que les clés sont des chaines de caractères et les trie donc comme telles. Notre cerveau quant à lui va un peu plus loin et comprend qu'on peut scinder cette chaine en 3 blocs et il va ordonner ces blocs et non la chaine elle-même Pour lui, le bon ordre est le suivant :
array(5) {
["1.0.8"] => int(14)
["1.9.7"]=> int(26)
["2.1.1"] => int(38)
["2.1.6"]=> int(38)
["2.1.12"]=> int(53)
}
On appelle cela l'ordre naturel.Malheureusement pour notre exemple, ce n'est pas la méthode de fonctionnement classique des ordinateurs. Il existe bien en PHP une fonction natsort() de tri par ordre naturel mais elle ne sait trier que par valeur et non par clé. Certains petits malins pourraient être tentés d'utiliser la fonction array_flip(), qui inverse les clés et les valeurs d'un tableau, avant et après le tri pour contourner ce problème mais voici le tableau qu'ils obtiendraient :
array(4) {
["1.0.8"]=> int(14)
["1.9.7"]=> int(26)
["2.1.6"]=> int(38)
["2.1.12"]=> int(53)
}
La version 2.1.1 a disparu. La raison est toute simple, en inversant les clés et les valeurs, les versions 2.1.1 et 2.1.6 ont la même clé (38), la seconde version écrase donc la première.
Heureusement avec un peu d'astuce, il est possible de trier ce tableau dans l'ordre naturel sans risquer cet effet de bord en combinant les fonctions uksort() et strnatcmp() ainsi :
uksort($tableau, 'strnatcmp');
On obtient bien :
array(5) {
["1.0.8"] => int(14)
["1.9.7"]=> int(26)
["2.1.1"] => int(38)
["2.1.6"]=> int(38)
["2.1.12"]=> int(53)
}
La subtilité est que la fonction uksort() demande un callback vers une fonction qui va être chargée de trier les éléments du tableau 2 à 2. Cette fonction de comparaison doit retourner un entier supérieur, égal ou inférieur à zéro, pour, respectivement, indiquer que le premier argument est supérieur, égal ou inférieur au second.
Si généralement on utilise une fonction "maison" avec un callback, il est parfaitement possible d'utiliser une fonction native de PHP. C'est ce qui est fait ici afin de ne pas réinventer la roue et d'optimiser les performances.
C'est non sans une certaine fierté que je peux annoncer officiellement que je vais enseigner le PHP en licence pro Web Développeur à partir de la rentrée 2008.
Suite à mon billet sur le passage de la certification Zend PHP, j'ai reçu quelques demandes de précisions. La question qui sembler tarauder le plus les candidats à cette certification est celle de sa difficulté et de son corollaire : comment savoir si on est prêt.
Avant de poursuivre, je tiens à préciser que ce qui suit reflète mon expérience qui date maintenant que plus d'un an et demi. Il se peut que certains aspects aient changé depuis sans que je ne le sache. Néanmoins, j'essaie de me tenir le plus au courant possible, ces informations sont donc sensées être toujours d'actualité. Si ce n'est pas le cas, n'hésitez pas à me corriger dans les commentaires.
Voulant mettre toutes les chances de mon côté, j'ai consciencieusement étudier le guide officiel et fait quelques tests blancs à l'aide du livre The Zend PHP Certification Practice Test Book. Après vérification de mes réponses, il s'est avéré que j'avais environ 65% de bonnes réponses au premier test. J'ai donc cherché à savoir si j'aurais obtenu cette certification ou non et c'est là qu'on commencé les surprises.
Nulle part dans le livre il n'est indiqué les modalités de validation des résultats. J'ai donc laissé un message sur un forum consacré géré par l'un des auteurs du livre de test. Mon billet a été supprimé sans que je ne sois contacté.
Surpris, j'ai usé de quelques relations pour en savoir plus. Il s'est avéré que ces informations sont confidentielles et que personne n'y a accès. Cela est prétendument pour ne pas nuire à la certification. L'argument me laisse encore aujourd'hui assez dubitatif. Cela me rappelle les professeurs qui refusaient de donner le barème d'un devoir afin de pouvoir l'ajuster en cas de gros problème. Cela empêchait d'optimiser son travail en cas de manque de temps. Savoir gérer ses priorités fait partie, selon moi, des compétences nécessaires au passage d'un examen.
Il est donc possible de se préparer aux questions, à leur niveau et à leur mode de fonctionnement pour éviter erreur d'interprétation mais vous ne pourrez pas savoir concrètement si vous êtes prêt. Il faudrait vous en remettre à votre instinct.
Pour information, j'ai effectué 3 tests blancs. Mes pourcentages de bonnes réponses étaient respectivement environ 65, 80 et 85. J'ai ensuite obtenu du premier coup la certification Zend PHP. Cela étant dit, je ne sais pas si je l'ai eu de justesse ou largement. Le seul résultat que l'on obtient est "reçu" ou "recalé".
Enfin, l'arrivée récente d'une version française de cette certification va sans doute aider certains ne pas se faire piéger par de bêtes problèmes de compréhension de la langue de Mr Bean Shakespeare.
© 2003-2008 Jean-Marc Fontaine - Tous droits réservés
XHTML - CSS - DotClear - Technorati
Les billets de ce blog sont sous licence Creative Commons