Après une première journée excellente, la seconde journée démarre encore plus fort avec de nombreuses conférences en anglais (traduites par un interprète professionnel) et de nombreux intervenants qui avaient fait le déplacement depuis l'étranger.
Vous me pardonnerez les approximations sur certains points des conférences en anglais mais parfois le débit de parole des intervenantes m'ont pris de court (et je n'étais pas seul, même l'interprète avait du mal à suivre).
"Being agile, being good"
La journée commence avec la conférence de Stephanie Troeth, une conférence en anglais qui revient 2 concepts : la qualité et la méthode agile dans la gestion de projet dans le domaine du web :
Agile n'est pas une solution unique mais un ensemble de méthodes de développement et de logiciels qui partagent les mêmes principes. C'est une approche de la gestion de projet et du travail d'équipe basé sur des itérations courtes entre chaque phase du projet accompagné d'un ou plusieurs livrables.
- La qualité : c'est quoi ?
On pense souvent que la qualité découle d'un processus, mais la qualité découle plutôt des gens qui travaillent sur un projet !
Les meilleures équipes n'ont pas suivi de méthodologie ou de dogme pour obtenir la qualité.
L'un des soucis de la qualité c'est que la perception de celle-ci est relative, elle dépends des attentes de chacun. Alors comment faire pour injecter la qualité dans un projet mené par une équipe composée de plusieurs personnes avec chacune une vision différente de la qualité ?
La vision de la qualité d'un projet se doit d'être générique : un produit doit être utilisable, simple et appréciable à l'utilisation. Vous pouvez l'instaurer soit par la culture de la qualité soit par un contrôle de la qualité à chaque étape du projet dont le moteur serait la fierté de chacun.
"Being agile, being good" sur slideshare
"Le CSS peut-il être orienté objet ?"
Echangée avec la conférence d'Eric Daspet la veille, Nicole Sullivan présente donc son framework, outil, ou quelque chose comme ça, voir un peu tout ça à la fois.
Pourquoi faire du CSS orienté objet ? Parce qu'un développeur de chez Google lui a dit que ça n'étais pas possible et accessoirement pour les sites composés de plusieurs milliers de pages.
L'idée derrière cette appellation de CSS orienté objet c'est de se représenter chaque élément de la page par des objets CSS en séparant la sémantique de la page HTML de la sémantique visuelle et en tirant parti au maximum de la cascade d'héritage des feuilles de style. Ici on ne plaisante pas : chaque octet compte !
Le principe de base derrière CSS orienté objet c'est un seul code HTML, toutes les présentations possibles basé sur des objets de présentation bien différenciés et indépendants, extensibles comme une classe en programmation orienté objet. Par exemple un objet page qui sert de conteneur principal peut se moduler de page à largeur fixe à une page de largeur fluide grâce à l'ajout ou le retrait d'une simple classe CSS sur la balise page.
Plutôt astucieux à la base, à mon sens l'idée (excellente à la base) a encore besoin d'être menée à maturation, il faut bien déterminer les objets de base qui sont nécessaires au design d'une page web, et ses possibilités d'extension. A ce jour, j'ai encore besoin d'une phase de test et d'apprentissage de l'outil pour me prononcer définitivement. Quoi qu'il en soit cette façon de penser me fait penser à ma propre façon de décliner les multiples design de blocs HTML dans mes découpes ... c'est plutôt bon signe si on arrive à concevoir tout un site de cette façon, la réutilisabilité des CSS conçus de cette manière serait fort intéressante pour nos méthodes de développement des pages web.
"Le CSS peut il être orienté objet ?" sur slideshare
"Futur style now"
Présentée par Molly Holzschlag qui travaille chez Opéra et aussi pour le W3C, on y redécouvrait un peu ce que nous apprenais Daniel Glazman l'année dernière avec quelques constats supplémentaires :
- CSS 2.1 n'est pas fini mais on l'utilise tous, ce qui amène à réfléchir sur ce qu'est une spécification.
- CSS 3 est déjà en partie utilisée : on en déduit que finalement c'est l'implémentation dans les navigateurs qui est la clé. Si quelque chose est implémenté alors nous pouvons l'utiliser. Par exemple Safari, Firefox, Opéra ou Chrome implémente une partie de ces CSS 3, mais Internet Explorer ne les gères pas alors ce que l'on peut faire c'est utiliser les CSS conditionnels pour fournir une expérience amoindrie aux utilisateurs d'Internet Explorer.
Nous vivons une nouvelle guerre des navigateurs et utiliser les nouvelles fonctionnalités des CSS peut se faire progressivement selon les navigateurs qui la supporte.
Molly Holzschlag nous fait alors un rappel sur l'organisation des CSS 3 et sa division en modules ainsi que les nouveautés de ce standard :
- Les nouveaux sélecteurs
- Multiples backgrounds
- Border-radius
- Text-shadow
- Box-shadow
- Multi-column layout
- Media queries
- @font-face
- RGBA, HSLA Couleurs avec transparence alpha
- CSS Animation (webkit)
- CSS Transforms (webkit, Firefox)
"WCAG" 2.0, Flash, PDF, javascript sont dans un bateau...
Probablement la seule conférence qui aurait gagnée à être faite dans le grand amphitéâtre, tant son succès a obligé les organisateurs à refuser du monde dans le petit auditorium.
Présentée par Aurélien Lévy et Sébastien Delorme qui travaillent chez Temesis et Atalan, 2 sociétés reconnues pour leurs activités dans le domaine de l'accessibilité, cette conférence cognait fort sur les préjugés en matière d'accessibilité de certaines technologies web propriétaires : Flash et PDF.
En effet, tout le monde ou presque pense à tort que rendre un Flash accessible est impossible et pourtant il est possible de le faire depuis la version 6 du lecteur Flash. Certes tous les points d'accessibilité listé dans les WCAG 2.0 ne sont pas gérables dans Flash mais faut-il pour autant dire que les sites en Flash ne peuvent pas être accessibles ? A cette question nos 2 orateurs répondent par la négative. Les conceptions en Flash n'ont rarement besoin de plus que ces 2 choses : des équivalents textuels aux objets et la navigation au clavier, choses largement disponibles et simple à mettre en œuvre depuis la version 6 du lecteur comme je le disais.
De même peu de gens savent qu'il est possible de rendre un PDF accessible en le balisant. Le seul problème pour rendre des PDF accessibles c'est qu'il faut utiliser un programme payant d'adobe : Acrobat pro. Il permet de baliser un document un peu comme un document HTML. Cela fonctionne pour tout les types de documents, que ce soit un document très travaillé d'un point de vue graphique, ou un simple texte. Il n'existe malheureusement pas d'alternative gratuite pour faire ce genre de chose en dehors d'un bon vieil export PDF depuis son document Word ou Open Office.
Côté javascript il n'y a pas particulièrement d'écueils et tout le monde sait qu'en faisant un peu attention à ce que l'on fait, il est tout à fait possible de faire du javascript accessible. En plus avec la spécification ARIA il est possible de décrire l'état des éléments dans l'interface (rôle, état, propriétés). Certaines librairies javascript comme Jquery (notamment JqueryUI dont je vous avais déjà parlé) prennent en compte ces spécifications ARIA.
"WCAG 2.0, Flash, PDF, Javascript sont dans un bateau..." sur Slideshare (pas très intéressant sans le discours qui va avec, regardez les avec la vidéo de la conférence quand elle sera disponible sur le site de ParisWeb).
"Les nouveaux standards du web et leurs implémentation dans les navigateurs modernes."
Une conférence un peu plus courte que les autres conférences de la journée, la conférence de Tristan Nitot et Paul Rouget (le développeur le plus rapide du monde) n'en était pas moins impressionnante et drôle.
La conférence démarre donc sur cette question : De nouveaux standards pour quoi faire ?
A cela, Tristan Nitot nous répond que les nouveaux standards doivent permettre d'assurer l'avenir de l'open web face aux plateformes propriétaires et pour que le web mobile soit un choix pertinent, cela dit c'est pour que nous autres les développeurs web puissions nous éclater !
Pour cela quatres axes sont envisagés :
- Le multimédia avec des standards comme Canvas 2D et 3D, l'audio (HTML 5), la vidéo (HTML 5) ou encore SVG.
- L'accès aux périphériques (webcams, acceléromètre, ...) depuis une page web
- Des API pour créer des applications riches : utilisation des applications hors ligne, glisser-déplacer, nouvelles api pour les fichiers, Cross-XHR, Géolocalisation
- Les performances avec le JIT (tracemonkey chez mozilla) grâce auquel les applications lentes jusqu'à aujourd'hui deviennent possibles ou encore le "Web worker threads" pour tirer parti des processeurs multicœurs en leur affectant à chacun des processus à traiter en parallèle.
Mais le point d'orgue de cette conférence ce fût les démos des capacités du navigateur firefox en version 3.7 non finalisée. Et malgré une version peu avancée les traitements d'objets en canvas 3D se faisait à une vingtaine d'images par seconde sur des objets 3D complexes, avec de telles performances on peut déjà imaginer les futurs jeux vidéos 3D directement dans un objet Canvas du navigateur, il existe bien déjà des jeux 2D de la grande époque du point'n click, alors à quand Doom en Canvas 3D ?)
Note : voilà le lien vers les démos (pas exactement toutes celles de la conférence mais vous aurez un très bon aperçu quand même, et ça marche sur Firefox 3.5), quand on pense que 4 démos ont été codées à l'arrache 1 heure avant le début de la conférences par Paul Rouget, on ce dit que ce type est monstre !
Conclusion
La conclusion de cette année innove un peu avec un quizz opposant les orateurs de paris web au public, suivi d'une table ronde plus traditionnelle qui achève ces 2 journées extraordinaires par leur transmission de savoir et la qualité des personnes présentes à l'événement. Je n'en connais pas beaucoup qui peuvent se targuer d'accueillir autant de personnalités du web, du W3C et des éditeurs de logiciel qui ont la modestie de partager et discuter en dehors des conférences avec les personnes qui y assistent.