Tag Archives: DevWeb

PHP 5.3 en approche

Les aficionados de PHP l’attendaient: PHP 5.3 vient d’être publié dans sa version alpha1. Il s’agit de la première marche d’un long processus de développement / debug qui passera pas des alphas, betas et RC séparées de 2-3 semaines. La version finale devrait apparaître entre septembre et la mi-octobre. Celle-ci marquera un cap important. Au programme des festivités:

  • Les espaces de noms (ou Namespaces)
  • Le Late static binding
  • _callStatic
  • Les fonctions lambda
  • Ajout des extenssions intl, phar (à partir de l’alpha2), fileinfo et SQLite3
  • Le garbage collector (!!!)
  • Le support du driver MySQLnd pour libmysql
  • Nouvelles fonctionnalités syntaxiques: NowDoc, GOTO et l’opérateur ternaire ?:
  • Les version de Windows antérieures à Windows 2000 ne seront plus supportées

Bref: que du bon ! Vous l’aurez remarqué, on retrouve quasiment toutes les fonctionnalités qui étaient prévues pour PHP6. La seule qui manque, c’est la gestion de l’Unicode en natif. D’un autre coté, ce n’est pas si mal: le développement de PHP6 semble assez compromis pour le moment… Comme d’habitude, n’hésitez pas à tester et à faire remonter les bugs !

Liens connexes :
L’annonce officielle (en anglais)

A la découverte de PHP6 sur Webd

Quel sera l’impact de HTML5 sur la vidéo en ligne ?

J’ai déjà eu l’occasion d’en parler ici: HTML5 approche à grand pas (d’ici 2010)… L’une des grandes nouveautés de cette spécification, c’est la gestion native des médias vidéo et audio embarqués. Concrètement, il sera aussi simple d’insérer une vidéo qu’une image dans une page. Attention, il ne s’agit pas d’une vidéo flash … Non, on parle de vidéos dans les formats que vous trouvez communément sur les disques durs.

Aujourd’hui, Eric Dupin de Presse-Citron se pose la question de l’impact de cette innovation sur des sites tels que Youtube. J’aimerais compléter un peu son avis …

Tout d’abord, je pense que l’impact de la balise video sera plus large que le périmètre Youtube & consort. Concrètement, ce sont les usages qui risquent de changer. Le premier impacté pourrait être Flash. En effet, la plupart des gens (en entreprise en tout cas) installent le lecteur flash pour pouvoir visionner des vidéos. Quand c’est pour une ”véritable” application Flash, il leur arrive de rebrousser chemin. Donc le taux d’utilisation du lecteur Flash pourrait baisser. Bien évidement, Silverlight subirait le même sort dans une moindre mesure.

Une autre conséquence pourrait être le changement de méthode de diffusion pour les vidéos illégales en ligne. Aujourd’hui pour diffuser une vidéo protégée par des droits (exemple: un épisode de Lost), il y a deux grandes solutions: soit publier sur Youtube et co ou alors mettre en place son propre lecteur Flash. La première devient de plus en plus difficile à cause des contrôles faits par les plateformes. La seconde requiert une certaine infrastructure … Notez que je ne parle pas des formats de téléchargement traditionnels (P2P, FTP, …). Avec la balise vidéo, c’est plus simple: on uploade sur un serveur et on fait la page qui va bien ! Il peut être de même pour les vidéos légales … Mais comme le problème du contrôle sur Youtube ne se pose pas …

A ce sujet d’ailleurs, Eric parle des restrictions d’espace disque ou de bande passante chez leur hébergeur. Je ne suis pas vraiment d’accord avec ce point. En effet, on trouve aujourd’hui des hébergements avec plusieurs Go d’espace (et bande passante ”illimitée”) pour pas très cher (Free, Infomaniach …). Par contre là où je suis totalement d’accord avec Eric, c’est concernant la visibilité supplémentaire qu’apporte l’utilisation de plateformes Youtube’like. C’est indéniable qu’utiliser la balise vidéo ne permet pas cela.

Pour finir, je pense que HTML5 annoncera la venue de nouveaux types de logiciels. On peut très bien imaginer un logiciel qui prend une séquence de votre camescope, permet de la traiter, de la compresser et d’envoyer directement sur votre serveur une page tout faite permettant au visiteur de lire la vidéo.

Bref, HTML5 risque de provoquer pas mal de changements dans nos façons de faire (en tant que développeur, éditeur, hébergeur ou simple internaute). L’avenir nous dira quels seront ces changements !

MultiFirefox: plusieurs Firefox sous Mac OS

Dans la série: je suis développeur Web et j’ai besoin de tout un tas de navigateurs différents, voici Multifox. Il s’agit tout simplement d’un logiciel permettant d’utiliser simplement plusieurs versions de Firefox sous Mac OS. L’idéal pour faire ses tests d’interface utilisateurs.

Rien à dire de plus à par que la version 2.0 a été totalement récrite en Objective-C (avec le framework Cocoa bien évidement) et qu’il est totalement compatible Tiger et Leopard.

Plus d’informations sur le site officiel (en anglais)
Voir aussi Le rendu de Safari sous Linux sur WebD
Via Biologeek.

Viviti: CMS hébergé, gratuit de qualité professionnelle (+ invitations)

Il y a quelques jours, Antoine (un ami développeur Web) me parlait de Viviti en ces termes: Un CMS hébergé, gratuit de qualité professionnelle. Étant parfois à la recherche de solutions simples pour des besoins simples, ça a tout de suite attiré mon attention ! Cet intérêt s’est vite trouvé refroidi par le fait que Viviti était en bêta sur invitation …

Grâce à Jean-Marie Gall, j’ai eu mon invitation à la bêta (merci ;) ) … Et bien franchement, ça valait mon attention première ! Concrètement, ça permet de créer un espace Web complet et dynamique en deux coups de cuillère à pot. Pas besoin de compétence particulière … Tout se passe par de la gestion de blocs à déplacer à la volée. Du WYSIWYG [1. What You See Is What You Get: Ce que vous voyez est ce que vous obtenez] hyper simple. Il n’y a plus que le contenu à gérer.

Continue reading

Le rendu de Safari sous Linux

Même si il représente une petite part de marché des navigateurs Internet (entre 2,2 et 3% selon les publications), Safari reste un navigateur dont il faut se préoccuper quand on réalise un développement Web. Seulement voilà, ce navigateur n’est à l’origine disponible que sous Mac OS. Difficile pour les utilisateurs de PC de tester leurs rendus.

Récemment, Apple publiait une version Windows de son célèbre navigateur internet. Il subsiste encore un environnement sous lequel il est impossible de faire des tests sur Safari: Linux. Étant moi même linuxien, j’avoue que c’est un problème qui me turlupinais …

Il existe pourtant une alternative et elle s’appelle WebKit. Il s’agit d’un navigateur en préparation (par KDE) basé sur … WebKit ! Ce WebKit est tout simplement le framework utilisé par Apple pour Safari, Mail et le Dashboard (entre autre). Il est sous licence BSD / GNU GPL. Donc pour résumer, on a WebKit – le navigateur par KDE – et WebKit – le framework utilisé par Safari.

Attention cependant, ce n’est pas avec WebKit que vous aurez Safari sous Linux. Il ne s’agit que d’un navigateur plus que sommaire avec le rendu de Safari. Juste de quoi tester le rendu de ses pages.

Pour pouvoir utiliser l’application (en QT), il faut la télécharger à partir des dépôts SVN et la compiler. Dans son billet, Jean-Michel Philippe explique comment faire. Voici les commandes pour préparer le terrain, télécharger et compiler WebKit (sous Ubuntu):

Entre le téléchargement SVN et la compilation, comptez quand même 1h30 de travail pour votre machine … Pour lancer WebKit: WebKit/WebKitBuild/Release/bin/QtLauncher. Vous voilà maintenant avec un moyen simple et efficace pour tester le rendu de vos pages sous Safari à partir de Linux. Bon, le navigateur est vraiment très sommaire … A ne pas utiliser au quotidien !

WebD avec WebKit

Plus d’informations sur WebKit.org (en anglais)

Comparez le rendu de vos pages sur toutes les version d’Internet Explorer avec IETester

Si il est bien une chose que n’importe quel développeur Web (un minimum consciencieux) sait, c’est que le rendu d’un document Web n’est pas le même en fonction du navigateur utilisé. Bien que les normes soient là pour faire en sorte que ces différences soient minimisées, le travail de test et de déboguage en fonction du navigateur est une partie non-négligeable d’un projet Web.

Pour que cette phase soit efficace, il faut avoir, sur sa machine de tests, une panoplie de navigateurs. Pour Opéra et Firefox: rien de plus simple ! On peut en installer plusieurs versions sans aucun souci. Concernant Safari, j’avoue que je n’ai jamais essayé d’avoir plusieurs versions sur le même Windows (encore moins sous MacOS)

Pour Internet Explorer, c’est un tout petit peu plus compliquer. En effet, le navigateur étant très lié au système d’exploitation lui même, il n’est pas simple d’avoir plusieurs versions installées sur le même Windows. Jusque là, je fonctionnais avec des machines virtuelles … Ca c’était avant de découvrir IETester …

Il s’agit tout simplement d’un logiciel pour Windows XP et Vista permettant de naviguer sur un document Web avec les moteurs de rendu de IE8 bêta 1, IE7, IE 6 et IE5.5. Le soft est très bien fait. Malgré le fait qu’il soit encore en alpha (l’auteur attend avec impatience les retours d’utilisateurs), je n’ai rien décelé d’anormal …

Bref, voilà un outil qui fait maintenant partie intégrante de mon kit de Développeur Web.

IETester en action sur WebD (avec IE 5.5, IE8 et IE6)

La page officielle d’IETester (en anglais)

Première édition du défi PHP Developpez

Developpez.com vient d’annoncer la première édition de son défi PHP. Le principe est assez simple: le concurrents ont jusqu’au 7 juillet prochain pour réaliser un bugtracker / une liste des taches en PHP. Mais attention,il y a une contrainte: le projet doit obligatoirement utiliser un framework ou une bibliothèque de composant. Le tout, évidement, en open source. A brûle pour poing, on peut utiliser du CakePHP, Prado, symfony, Zend, eZ, …

L’évaluation du rendu se passe comme suit:

* Bon fonctionnement de l’application : 30% du critère de réussite ;
* Des efforts notables pour que le code soit écrit selon les standards définis par le framework choisi (organisation des répertoires, tabulations, motifs de conception…) : 30% du critère de réussite ;
* Réutilisation d’éléments existants si nécessaire (sauf pour le cœur de l’application bien sûr) : 15% du critère de réussite ;
* Sécurité minimale contre les failles courantes (XSS, CSRF, injection…) : 15% du critère de réussite ;
* Un minimum de commentaires : 10% du critère de réussite.

Des lots sont prévus pour les gagnants, mais pour le moment aucun détail n’a été donné sur ce que ce sera…

C’est bête que je n’ai pas du tout le temps en ce moment, voilà un défi qui me branche bien …

Plus d’informations par ici.

Déménagez proprement vos documents Web

Si il y a bien une chose que je déteste, c’est les liens cassés ! On fait une recherche sur un sujet précis, la seule réponse qui semble résoudre le problème renvoie vers un lien cassé. De quoi s’arracher les cheveux… C’est pour ce genre de désagrément qu’existe le principe de la pérennité des liens. Il s’agit tout simplement de faire en sorte qu’un lien soit valide tout le temps !

Oui, mais dans le cas de mon récent déménagement de ces pages de julien.wpc-fr.net vers webd.fr, c’est un tout petit peu plus compliqué que de faire en sorte qu’un document soit toujours présent sur le serveur. Je veux que les liens pointant vers julien.wpc-fr.net marchent encore. Cependant, je veux qu’ils transfèrent vers webd.fr. Je veux que la transition soit la plus propre pour les moteurs de recherches (qu’ils comprennent que tout julien.wpc-fr.net a bougé vers webd.fr). Et pour finir, je veux une solution simple à mettre en place. Voilà ce qui s’offre à moi:

Continue reading

PHP >= 5.1 et la gestion avancée des dates

La gestion des dates est toujours problématique sur Internet. En effet, nous ne sommes pas tous dans les mêmes fuseaux horaires. Nous n’utilisons pas tous les mêmes normes d’affichage (un exemple simple: les anglophones mettent le mois avant le jour … nous: non). Il y a aussi la gestion des heures d’été, la façon d’exprimer le nom d’un fuseau horaire, …

Bref, c’est une joyeuse pagaille ! Sans compter que cette gestion (au niveau système) n’est pas la même en fonction du système d’exploitation qui héberge l’application PHP en question. Voilà pourquoi PHP intègre (depuis 5.1 en expérimental et 5.2 en natif) deux nouveaux objets: DateTimezone et DateTime permettant de gérer les dates proprement et indépendamment de l’OS.

A ce sujet, Julien Pauli vient de publier un tutorial sur Developpez présentant l’utilisation de ces nouveaux objets. Il n’y a rien à redire: ça simplifie grandement la gestion fiable et précise du temps ! Voici un exemple de code:

Bref, un article à lire absolument !

Lire “PHP5 : La gestion avancée des dates” sur Developpez

MSNBC lance Spectra: l’actualité à la Minority Report

MSNBC, le site d’actualité (pas la chaine [1.MSNBC est, à l’origine, une chaîne de TV américaine. Son créneau, c’est l’actualité. Comme son nom l’indique, il s’agit d’une collaboration entre Microsoft (via MSN) et NBC. A titre d’information, c’est la 3ème chaîne d’actualité aux USA en terme d’audience. ]), vient de lancer Spectra Visual Newsreader. Le principe est ”simple”. Vous avez vu Minority Report ? Et bien l’interface de Spectra y fait fortement penser sauf qu’au lieu d’agir directement avec vos mains, vous agissez avec votre souris ou bien votre Webcam …

Chaque article est représenté par un petit carton de couleur. Chaque couleur représente un thème d’actualité (économie, politique, …). La visualisation est séparée en trois modes distincts:

  • orbital: vous sélectionnez certaines fiches en éliminant celles qui se trouvent devant
  • automatique: les fiches défilent toute seules
  • color sensor: il s’agit d’utiliser la webcam comme un outil de sélection. En fait, les éléments sont sélectionnés en fonction de la couleur dominante qui passe devant la webcam. Prenez une image orange, et seuls les fiches oranges s’afficheront. Avouons que l’utilité n’est pas flagrante …

Bref, l’interface est assez innovante et belle à l’utilisation. Bien évidement, tout cela est en Flash (quoique, vu l’affiliation évidente à Microsoft, on aurait pu trouver du Silverlight). Je pense que ça vaut le coup, au moins une fois, d’essayer.

Pour le moment, Spectra est en bêta.

Voir Spectra Visual Newsreader (en anglais)