lundi 30 juin 2008

Symfony 1.1 est dans les bacs

Nous venons de releaser symfony 1.1, le framework qui blanchit les dents et rafraîchit l'haleine.

C'est une étape importante puisque l'architecture même du framework a été entièrement repensée, pour être notamment plus découplée, et favoriser ainsi l'extensibilité et la configurabilité. Voici les autres améliorations phares de cette nouvelle version :

  • Le nouveau framework de formulaires, entièrement orienté objet, permet une réutilisation maximale des éléments et en garantit la sécurité de façon transparente,
  • Le système de gestion de tâches en ligne de commande est une grosse tuerie, il vous permet de créer des scripts en ligne de commande avec gestion de l'aide, des arguments et des options, le tout avec une sortie en couleur au besoin !
  • Le parser YAML a été réécrit from scratch et propose maintenant des messages d'erreurs contextualisés, bien utile à l'heure du débogage,
  • La gestion des formats web permet à votre application de fournir une réponse et un format différents en fonction du type de requête entrante ; concrètement, vous gardez le même contrôleur mais vous proposez des vues adaptées dans le format qui va bien (html, xml, json, etc.) :)
  • La gestion des plugins a été entièrement revue et propose maintenant une totalement API compatible avec le standard PEAR, et gère notamment les dépendances,
  • La couche ORM Propel, toujours en version 1.2, est maintenant proposée sous la forme d'un plugin (activé par défaut), permettant ainsi plus facilement d'utiliser Doctrine ou Propel 1.3 si vous préferez,
  • Le routing a été grandement amélioré tant en performances qu'en extensibilité et souplesse de configuration,
  • La compatibilité avec symfony 1.0 est assurée grâce au plugin sfCompat10, fourni par défaut et activable en une ligne de configuration,
  • Enfin, plus de 8500 tests unitaires et fonctionnels garantissent la stabilité de l'API et préviennent de l'apparition de régressions.

Voila, l'accouchement fut un peu long mais le bébé est là, rose et bien portant. Et il n'attend plus que vous pour jouer avec lui :p

dimanche 29 juin 2008

Rénovation et aménagement de combles, un bon plan

Je viens de faire aménager les combles qui se situaient au-dessus de nos têtes, dans mon appartement. Voici quelques photos du résultat :

Combles finis (juin 2008) Combles finis (juin 2008) Combles finis (juin 2008) Combles finis (juin 2008)

Entretemps, j'ai posé une balustrade autour de la trémie (le trou), et la prochaine étape est de traiter l'échelle de meunier afin de la prémunir des outrage du temps et des petites bebêtes.

Je tiens à remercier et à faire un peu de pub à la société AB Étude dont le professionnalisme, l'efficacité, la ponctualité et le sérieux n'ont jamais pu être pris en défaut, pour un budget global des plus honnêtes. Dans le secteur, c'est assez rare pour être souligné et salué comme il se doit.

mercredi 25 juin 2008

Symfotaf

Aidez Superdupont à conquérir le web avec symfony! Sensio Labs, la société créatrice du framework symfony dont je vous parle souvent ici et pour laquelle je travaille, cherche à recruter un ou plusieurs développeurs PHP.

Le poste

Le profil du développeur recherché, c'est plutôt quelqu'un (ou quelqu'une, d'ailleurs) :

  • ayant idéalement déjà mis en œuvre le framework symfony sans s'être fait insulter par son client à l'issu du projet,
  • plutôt franchement à l'aise avec les fonctionnalités objets de php5 (y compris ses nombreux exotismes qui nous rendent fous d'amour pour ce merveilleux langage[1]),
  • à l'aise avec les principaux standards du Web comme (X)(HT)ML et CSS,
  • ne citant pas les travaux de Philippe Starck à l'évocation d'un design pattern,
  • curieux, ayant envie d'apprendre et de progresser techniquement,
  • respectueux des bonnes pratiques de développement (ou du moins comprenant l'intérêt de les mettre en oeuvre),
  • autonome, mais prompt à aider les autres s'ils sont en difficultés,
  • qui lit et comprend l'anglais technique (là je viens de faire fuir 24 personnes, j'assume),

Dans les nice-to-have features :

  • la connaissance d'un autre langage de programmation orienté objet est un gros plus (l'équivalent d'un bonus 1D30 + 10, pour donner une idées aux nerds),
  • même chose pour la connaissance de JavaScript et d'un ou plusieurs frameworks dans ce langage,
  • si capacités en gestion de projet, on vous offre un apéritif gratuit offert par la maison,
  • l'acceptation d'une géolocalisation professionnelle sur Clichy (Hauts-de-Seine) est impérative,
  • ah, et primordial également, posséder une importante capacité de résistance aux calembours foireux est fortement recommandé (d'ailleurs, le poste d'émetteur de ces derniers est actuellement occupé).

Fabien P., notre bon patron à tous

Bref, si vous vous reconnaissez complètement (ou fortement, voire partiellement) n'hésitez pas à me contacter, par le biais du formulaire de contact du blog ou, si vous avez peur que je trafique votre CV parce qu'il est mieux que le mien, directement sur celui de SensioLabs.

Post-scriptum

Je tiens à publiquement m'excuser auprès de Dieu, aka Marcel Gotlib, pour avoir détourné l'image de quelques-uns de ses personnages à de pures fins de recrutement éhontées. Pour m'excuser je vais relire l'intégrale de la Rubrique à Brac et m'adresser en consultation au professeur Burp, tiens.

Notes

[1] Ou pas, détester php en sachant expliquer pourquoi est une feature :p

mardi 24 juin 2008

ESC_RAWquerie

Le saviez-vous ? Dans symfony, il est possible de désactiver l'échappement des contenus en passant la constante ESC_RAW en dernier paramètre d'une fonction ou méthode de classe depuis une template :

<?php echo $article->getTitle(ESC_RAW) ?>

Plutôt donc que :

<?php echo $article->getRawValue()->getTitle() ?>

Ou l'infâme :

<?php echo $sf_data->getRaw('article')->getTitle() ?>

Voila, c'est tout, c'était surtout l'occasion de faire en titre le pire jeu de mot de ce blog, et de pousser le billet d'humeur sur la RATP un peu plus bas sur la home.

lundi 16 juin 2008

Humeur

Une fois n'est pas coutume[1], je tiens à signaler à ces messieurs de la RATP que démarrer leur grève sur la ligne B la veille de la date initialement prévue[2] et ce sans préavis ME CASSE LES COUILLES SÉVÈREMEMENT.

C'est tout, ça va mieux en le disant. Ou pas.

Notes

[1] Ah si, tiens.

[2] Vous noterez que la ligne B bénéficie d'un traitement de choix, encore une fois.

dimanche 8 juin 2008

Un plugin jQuery pour générer des plans automatiquement

Avec un temps pareil, autant coder des plugins jQuery, non ?

Quelques heures de boulot plus tard, jqplanize[1] est né et permet de générer automatiquement une table des matières extraite de la hiérarchie induite de la séquence des titres d'un document HTML[2].

La doc est sur la page d'accueil du projet (hébergée chez Google), ou plus exhaustivement sur cette page dédiée du présent site, avec quelques exemples live.

Le code semble fonctionner sous Firefox 3 RC2 et Safari 3.1, mais ça ne marche curieusement pas sous Opera 9, et j'ai pas testé sous IE donc attendez vous à des updates[3].

Vivement l'été.

Notes

[1] Non mais vous avez déjà vu un nom aussi naze ?

[2] Si tant est que le balisage des titres soit sémantique, hein.

[3] Ou pas, bien entendu.

vendredi 6 juin 2008

Nude machines

Radiohead a lancé il y a quelque temps un concours de remix de Nude, un des titres présents sur leur dernier album, très lent et au rythme ternaire, rendant ce dernier très incompatible avec les canons plebiscités par les DJ et autres boîtes de nuit branchouilles. Tom Yorke ne s'en est d'ailleurs pas caché, ils ont fait ça pour se marrer.

Mais voila, d'une gausserie potache peut parfois sortir le grand frisson :

Chapeau bas, c'est beau et j'en ai encore les poils dressés sur les bras.

Sinon et sans la moindre espèce de transition, ça avance drôlement sur la documentation de symfony.

mercredi 4 juin 2008

Demander à restreindre les caractères utilisés dans les mots de passe est idiot

Voulant créer un compte sur un nouveau service en ligne, j'ai eu la désagréable surprise d'obtenir ce message d'erreur au moment de la validation de mon mot de passe :

Password may only contain alphanumeric characters

Pour les anglophobes, on me demande de n'utiliser que des caractères alphanumériques pour mon mot de passe.

Ce n'est pas la première fois que je tombe sur la mise en place de pareil procédé. Quel est l'intérêt d'imposer cette limitation ? Je pense que plus un mot de passe utilise une plage de caractères diversifiée, plus il est sécurisé. Je peux éventuellement imaginer les problèmes que pourraient poser l'utilisation de caractères codés sur deux octets, ou encore l'angoisse d'une faille XSS potentielle chez les plus paranos, mais de là à interdire purement et simplement les tirets, underscores, espaces[1], je trouve ça tout simplement idiot à tomber par terre.

Voila, c'est dit.

Edit : Quelques astuces sur la sécurisation des mots de passe.

- page 1 de 67