Plan de site Navigation
Blog & Blues Techniques et Standards de la Qualité Web

Accueil > weblog


- Lire le billet précédent - Lire le billet suivant -

Faut-il documenter CSS ?

Par Laurent Denis, le 10 septembre 2005.

Après quelques années passées à écrire ici et là des articles sur l'utilisation de CSS2.x, et avec la conviction qu'il me reste encore quelques belles années devant moi dans ce domaine, une question me semble de plus en plus nécessaire : comment et avec quels moyens faut-il documenter CSS pour en permettre l'usage industriel au-delà de l'artisanat des "Standards" ?

J'ai écrit il y a quelques mois un Lisez les specs ! agacé, plutôt justifié, mais évidemment très insuffisant. Si les "specs" sont en effet l'espace vital du spécialiste, elles ne répondent absolument pas aux besoins applicatifs à l'échelle du non spécialiste. Elles n'y ont jamais prétendu, d'ailleurs : ce sont des guides d'implémentation, non d'exploitation, et y chercher l'info qui vous manque quand vous êtes en plein développement d'un site n'a rien d'aisé. Ce sont aussi des documents parfois très complexes, et CSS2.x contient quelques morceaux de bravoure auquel il est aberrant de prétendre renvoyer celui qui avait simplement une mise en page à rendre pour hier. Ajoutons-y le fait que CSS2.1 est bien plus utile en pratique que CSS2.0, tout en étant encore en chantier et donc changeante (de moins en moins, il est vrai, et uniquement sur des points précis officiellement déterminés comme problématiques). Pour achever le tableau, CSS2.1 ne peut, en toute logique, être traduite en français pour l'instant.

Des références documentaires destinées à l'utilisation quotidienne de CSS sont donc indispensables. A l'évidence, ce qui existe actuellement ne répond pas aux besoins : pas de documentation complète, centralisée et cohérente. Développer en CSS exige une collection de signets bien choisis .... Ah, choisis comment, au fait ? Au terme de quel parcours du combattant ? Avoir sous la main, en permanence, l'information CSS nécessaire, savoir faire les rapprochements pertinents... se mérite hélas, au lieu de s'apprendre simplement. Sans compter l'exigence d'une excellente mémoire, pour faire face à l'immanquable et récurrente question : Mais où ai-je vu passer quelque-chose sur cette propriété, déjà ? Quelle était cette astuce ? Ah, mais qui a donné la solution de ce bug, au fait ? Je me pose quotidiennement ce genre de questions, alors que mon premier contact théorique avec CSS remonte à beaucoup plus longtemps que la moyenne des habitués du genre, et que je passe parfois pour dégainer mes signets plus vite que mon ombre quand il faut répondre à une question.

Dans ces signets, de nombreuses documentations relèvent davantage du "répertoire d'astuces" que de la référence structurée et systématique. Sans remettre en cause les qualités indéniables de cette ressource, c'est le cas, par exemple, des tutoriels Alsacréations donnant des modèles à reproduire. D'autres ressources mêlent indifféremment CSS standards et extensions propres à tel ou tel navigateur, de manière plus ou moins explicite et sans aucune considération d'implémentation actualisée (Voir l'exemple de la doc Mediabox ou de la W3School). D'autres encore devraient porter un large bandeau "périmé". OpenWeb est un exemple intéressant à cet égard. A première vue, c'est une référence créditée d'une grande qualité. Avec raison. En y regardant de plus près, c'est un échec patent, car une grande partie du contenu d'origine est aujourd'hui périmé (mais parfois en cours de mise à jour). En y regardant de plus près encore, c'est un malentendu sur la nature de cette ressource : OpenWeb avait vocation à promouvoir CSS il y a trois ans, de manière très offensive, avec les simplifications que cela exige, et sans le recul considérable que l'on a pu prendre depuis grâce à l'expérience. Openweb n'avait pas vocation à devenir cette référence permanente nécessaire à l'industrie. Fin de la parenthèse OpenWeb.

Outre ces lacunes documentaires, l'utilisation de CSS en production se heurte immédiatement aux multiples défauts d'implémentation, dont les fameux bugs d'Internet Explorer ne constituent en réalité que la partie émergée de l'iceberg. Il faut bien comprendre que l'utilisation de CSS repose actuellement sur un usage forcé de propriétés inadaptées, et de plus mal implémentées. Le cas type est celui du positionnement : des flottants problématiques à la place d'inline-block ou de display:table, faute d'implémentation suffisante. En fait, il n'est même pas nécessaire d'aller jusqu'à des cas d'utilisation avancée de CSS2.1 : une simple numérotation de titres est problématique, toujours faute d'implémentations. Tirer pleinement profit des styles CSS relève aujourd'hui d'une expertise appuyée sur une solide expérience, là où il devrait s'agir d'une simple application technique à la portée de n'importe quel professionnel.

Certes, il y a les forums de bonne volonté, les listes de discussion, tous ces lieux où le développeur angoissé et "charette" va venir, selon la tradition, chercher de l'aide sur sa feuille de style problématique. C'est un réservoir de compétences considérable, souvent étonnant. Mais c'est aussi un joyeux foutoir où l'on n'a aucune assurance de recevoir dans des délais compatibles avec un travail de niveau professionnel une réponse dont la qualité serait garantie. C'est au mieux un pis-aller, et au pire, du temps et de l'argent perdus.

Souvenons-nous, parvenus à ce stade, que cet article s'intitule Faut-il documenter CSS ?, et non "Faut-il tuer CSS". Ce n'est pas l'outil qui est en cause, mais les moyens nécessaires à son utilisation en production : oui, la documentation actuelle est insatisfaisante et ne permet qu'une utilisation à la fois artisanale et "expertisante" de CSS. Artisanale car les outils de production évitant le recours à cette documentation restent encore à développer. "Expertisante", car tout repose sur un "savoir faire" actuellement dispersé dans les compétences de quelques spécialistes. Sommes-nous donc si loin de pouvoir répondre aux besoins d'une utilisation industrielle de cette technologie ?

Il faut peut-être se souvenir que les moyens de formations progressent considérablement ici et là, de manière encore dispersée peut-être, mais manifeste. Des pôles de formations émergent, et j'en ai vu par exemple en France. Des gens se forment, et se forment plutôt bien, qui seront bientôt prêts à être recrutés. Ces formations attesteraient, si cela était nécessaire, que ce n'est pas l'expertise qui fait défaut, mais la motivation économique de mettre celle-ci à contribution.

Les CSS ne sont pas, au contraire de PHP, une technologie "libre". Elles ne bénéficient pas de cette dynamique communautaire. Elles ne sont qu'un outil, que chacun utilise, que chacun capitalise, mais qui cherche encore son mode d'emploi, dans tous les sens du terme. Celui-ci pourrait être à écrire. Peut-être.

Trackbacks

1. Le 01 octobre 2005 à 23:37, de Coolforest.net

Bonnes feuilles de septembre

Deux bonnes feuilles de septembre : "Faut-il documenter CSS ?" et "Des feuilles de style sans souci", avec de bons conseils de Laurent. Why Good Programmers are Lazy and Dumb ? Le GoogleBlogoscoped vous répond....

Les trackbacks pour ce billet sont temporairement fermés en raison d'une série d'attaques de spam.

Commentaires

FX, le 10 septembre 2005

Une réaction mitigée par rapport à cet article : D'abord je ne suis pas d'accord pour dire que CSS n'est pas utilisable à l'échelle industrielle actuellement. Ces dernières années, de nombreux professionnels du secteur ont su se remettre en cause et faire l'effort de recherche et de pratique nécessaire à un usage régulier de CSS dans leurs travaux. Restreindre cela à "l'artisanat des standards", c'est minimiser l'iceberg de cette vaste communauté à la seule partie émergée, la plus visible, qui produit régulièrement des articles sur le sujet (dans la veine bien-pensante de l'évangélisation sur les standards). Mais la masse des développeurs qualifiés est bien plus importante que vous ne semblez le croire, et surtout silencieuse.

Je n'ai que trop l'impression que cet article fait écho à un billet publié par un célèbre blogueur récemment, qui s'est permis de tirer à vue sur une technologie qui ne lui a pas parlé dans le temps extrêmement court qui lui était imparti pour développer sa page web. En effet, comme vous le faites très bien remarquer, l'usage courant et fluide des CSS exige de l'entrainement, de la pratique, de l'expérience, de la recherche, bref de la formation et un minimum d'expérience. Avoir des documentations adaptées aiderait sans nul doute les débutants à s'y mettre plus rapidement, mais je doute que l'on puisse réellement centraliser tout le savoir, toutes les exceptions, toute l'expérience acquise en ce domaine dispersée sur le web actuellement. Il faudrait surtout adapter les outils de développement les plus utilisés pour que ceux qui n'ont pas le temps d'apprendre soient tout de même productifs immédiatement. Mais même avec la meilleure des documentations, l'apprentissage prendra toujours du temps et de l'énergie. N'en déplaise aux plus pressés.

J'ai aussi peur qu'à trop vouloir vulgariser on ne brade la valeur des compétences parfois durement acquises ces dernières années, comme ce fut le cas jadis pour HTML et maintenant pour PHP. En plus de réduire l'aspect qualitatif que représente l'usage de CSS aujourd'hui par une industrialisation, on ferait passer au second plan la valeur du l'expérience de ceux qui les utilisent aujourd'hui quotidiennement, avec bonheur, dans leur travail. Est-ce judicieux ? Sans doute pour ceux qui n'en vivent pas, c'est beaucoup plus délicat pour les autres...

La question posée en titre de l'article prend tout son sens. Car il convient de savoir quel est l'objectif final, la qualité ou la quantité...

Sébastien Guillon, le 10 septembre 2005

Il me semble qu'on peut écrire une mise en page avec CSS, simplement en suivant la recommandation. On peut ensuite imaginer le réultat logique, si on applique la spec. Si on teste la page sous Netscape 4 on voit qu'on est loin du résultat attendu, et sous IE le résultat n'est pas satisfaisant du tout.

Mais ce n'est pas dû à des incohérences de la spec (s'il y en a, ce ne sont pas les problèmes les plus courants) mais à une mauvaise imlplémentation. Ce qui manque est plus un recueil des hacks pour chaque navigateur. C'est ce qui existe acrtuellement, bien que morcellé et disséminé sur tout le web.

CSS n'est pas parfait, certes (il faudrait encore savoir à quoi on le compare), mais on lui impute généralement des problème externes, d'implémentation.

Il serait certainement utile d'avoir un dépot centralisé des mises en pages les plus courantes, avec différents niveaux de supports navigateurs (IE/NS, IE Win/Mac, tous navigateurs...) et un forum permettant de détailler et d'expliquer les techniques utilisées.

Pour moi, la doc CSS (les différentes recommandations) est parfaitement claire. Il suffit d'une lecture attentive pour en comprendre l'esprit, et d'un signet pour pouvoir s'y référer quand on a besoin de détails sur une propriété, etc. Le reste est hors CSS.

Le développement avec les standards du web est dans une position unique où l'on passe de l'anarchie totale héritée de la guerre des navigateurs à une tentative de créer un référentiel commun. Ce sont les développeurs web qui en ont eu marre de coder tout en double, de gérer des sites tentaculaires aux tableaux imbriqués, mêlant structure et présentation, impossibles à maintenir, les designers fatigués d'avoir des mises en pages limitées en terme de typographie, et ainsi de suite... qui ont compris la nécessité de ce référentiel commun et soutenu le développement des standards dans cette industrie.

Plus de doc pour CSS ? Une doc pour débutants, une doc résumée... Pourquoi pas ? Ca ne résoudra pas le problème des implémentations. Ce que « certaines personnes » demandent, c'est plutôt le catalogue ultime des hacks CSS. Pas sûr que ce soit une solution d'avenir, à moins qu'effectivement IE n'avance plus jamais.

Nico, le 11 septembre 2005

Il est vrai sur ce coup-là que l'utilisateur expérimenté en CSS a un atout indéniable : il permet de gagner beaucoup de temps, de part sa capacité à "esquiver" ou contourner les bugs d'implémentation (du tristement célèbre IE 6.0).

Avec le recul de l'expérience, je m'aperçois que j'ai pris qq automatismes pas forcément totalement logiques, mais qui me permettent de limiter la casse avec IE d'entrée de jeu, en utilisant très très peu de hacks (le seul que j'utilise vraiment est celui qui permet de cacher la position fixed à IE, donc on peut dire que c'est un petit plus pour ceux qui ne naviguent pas avec IE).

Quant à se poser la question : "faut-il documenter CSS ?" je pense qu'elle est mal formulée, amha c'est plutôt "faut-il mieux documenter CSS ?", et là je réponds ispo facto oui => plus une tech est détaillée/expliquée/bien documentée, plus elle est facile à employer... et plus elle sera employée !

Néanmoins, je pense que même avec tous les efforts de documentation/tutoriels possibles et imaginables, ça ne remplacera pas l'expérience d'un habitué, comme dans tout domaine, ce dernier n'ayant pas à faire l'effort de compréhension, vu que c'est déjà intégré !

Reste que l'on est dans un domaine très évolutif... et malheureusement, tous les browsers n'évoluent pas à la même vitesse. Même si le futur IE 7 tient toutes ses promesses, on devra quand même se limiter pendant encore un certain temps à IE 6.0, donc l'utilisation des dernières propriétés de la dernière spec CSS en production, c'est pas pour demain.

Philippe Worontzoff, le 11 septembre 2005

"Les CSS ne sont pas, au contraire de PHP, une technologie "libre"."

Les CSS (tout comme le (X)HTML) font partie du domaine publique, ça n'a rien de propriétaire (et heureusement). A voir la (certes petite) communauté qui c'est développé via OpQuaSt, on peut espérer que les partisant du libre voit l'intérêt immense qu'il peut y avoir à participer à un référentiel CSS (et (X)HTML aussi d'ailleurs), c'est aussi important que de participer à la communauté du libre selon moi.

A mon humble avis, la meilleur optique est un référentiel du type AllHTML sans tout les défauts qu'a ce site. Ce site date de la guerre des browser ou presque et est aujourd'hui complètement en ruine, il est bourré de publicité qui le rende illisible et bien sûr, il se fout complètement des standards. Mais, du temps de la guerre des browser, il faut avouer qu'il avait l'avantage de rendre l'HTML (enfin, la soupe de tag HTML) très facile à apprendre et qu'il permetait de s'y retrouver facilement quand on cherchait un renseignement bien précis et ce, grâce au formulaires permettant de chercher tel ou tel élément HTML ou propriété CSS à l'aide d'une simple listes de sélection*. Il faut donc un site qui soit à la fois complet dans les domaines abordé, bien organisé, pratique, pédagogique, bien documenté, à jour (et donc qui suive l'évolution des spec.).

Il me semble que se limiter au CSS, c'est un peu peu, il faudrait au moins intégrer les langages standards les plus utilisée ((X)HTML, CSS et ECMAScript) et avoir des informations qui peuvent se permettre d'être un peu moins à jour sur des langages moins utilisé car pas encore suffisement bien implémenté dans les navigateurs acutel (SVG, XFORM, ...).

L'exemple d'OpQuaSt montre, qu'avec de la bonne volonté, de bons chefs de filles et une bonne promotion (dont quelques bons "teasing" ;-)), on peut réunir suffisement de bénévole derrière un tel projet. Ce qu'il faut, c'est savoir dès le départ dans quel direction on veut aller, si j'ai une idée assez précise (une sorte d'AllHTML respectant les standard, à jour et sans pub), tout le monde doit avoir ça petite idée et le tout est de choisir à plusieurs la meilleurs direction possible.

Pour revenir à OpenWeb, je crois que globalement, son principe problème est qu'il est trop orienté "article" et pas assez "référence", ce qui le rend difficilement pérenne quoi qu'il soit aujourd'hui une référence incontournable de la promotion des standards (qui, si elle est mieux accepté aujourd'hui, est loin d'être un combat gagné d'avance).

* : OpenWeb, ça aide toujours, en trente secondes, j'y ai retrouvé le terme "listes de sélection" que j'avais oublié. smiley clin d'oeil

Vero, le 11 septembre 2005

Débutant dans l'utilisation des standards depuis 6 mois (c'est donc très fais) je me suis résignée, dans un premier temps, à "poser mes valises". J'ai stoppé mon projet pour me consacrer à l'apprentissage pur et simple : lecture, lecture, lecture. Le territoire était trop vaste en regard de mes maigres compétences pour que je puisse envisager une quelconque production. Il fut d'abord nécessaire de construire une carte des ressources disponibles, indexée pour chaque thème nouveau pour moi. Il est vrai que ces ressources sont nombreuses mais très hétérogènes. Rares sont celles qui fournissent une explication suffisante sur le pourquoi, beaucoup se limite à donner une astuce pour un résultat précis. Or, il semble nécessaire de connaître les possibilités mais aussi les limites d'un outil avant d'imaginer comment l'utiliser à ses fins ...Et même si la limite est liée à un bug d'implémentation, c'est une limite quand même ! En ce sens, des sites comme Open Web ont été pour moi, une référence de base indispensable même si elle est incomplète : il faut prendre la bonne direction et surtout connaître, au moins, les grands axes ! Des sites comme blog and blues, répondent parfaitement à certaine question "existentielle" nécessaire à ma compréhension globale, celle qui va conduire à faire un choix et si possible, le bon.
Une documentation détaillée et exhaustive (si c'est possible) du css serait sûrement un plus pour des gens déjà éclairés. Mais pour débuter et/ou concevoir des projets à l'échelle industrielle, c'est l'approche du média, de toutes ses technologies relatives et de sa terminologie qu'il faut d'abord envisager, ainsi que quelques bases indispendables en matière d'ergonomie, visuelle et cognitive, sans parler des usages. Entre les blogs, leurs fameux trackbacks, le wiki (kesako ?), les cms, les langages serveurs, les problèmes d'encodage, en passant par les trolls et les lol, la route est longue avant d'arriver au problème d'une css !
En fait, je n'imagine pas l'approche industrielle autrement qu'au travers une approche métier, chacun devant posséder effectivement, sa bible ... et son potentiel en matière de veille technologique.

JPV, le 12 septembre 2005

Bonjour,

La diatribe maladroite de l'expert en html bordélique de la vraie vie à laquelle fait référence FX dans son commentaire aura eut au moins l'avantage de poser quelques bonnes questions.

Petite réflexion à l'emporte pièce, milles excuses pour les éventuelles approximations :

Parfaitement d'accord avec Laurent, l'approche essentiellement heuristique de l'apprentissage de CSS et sa collection d'astuces-modèles de référence est très insatisfaisante, pour le professionnel qui s'y colle et surtout lors de parcours de formation où son apprentissage se révèle extrèmement difficile à planifier.
Cela tiens à sa nature, CSS mélange un mode déclaratif assez simple à appréhender (déclaration de classe, propriété et sélecteur) à des concepts (cascade, héritage, descendance...) qui en fait, au final, un véritable langage d'abstraction.
Je pense que la démarche actuelle des documentations CSS souffrent de cloner l'apprentissage des langages à balises comme Xhtml qui utilisent des références, issues des specs, illustrées par des modèles commentés.
C'est très suffisant puisqu'il n'y à qu'une seule manière d'écrire.
C'est très insuffisant pour CSS ou chaque auteur définis, de fait, sa propre syntaxe en jouant sur le polymorphisme absolu de ce langage.
De ce point de vue, cela rapproche énormément l'écriture d'une feuille CSS du travail que l'on réalise en POO.
Le problème que l'on rencontre en production "industrielle" ne tient pas tant au manque de référence qu'à l'acquisition et la mise au point d'une méthodologie pérenne qui est absolument nécessaire à la maintenance des styles.
Si la modification d'une feuille de style d'un "petit site" contenant une centaine de déclaration peut supporter d'être brouillonne et purement déclarative, cela deviens rhédibitoire et suicidaire dans le cas de site plus important, à forte composante dynamique, faute d'un véritable plan de travail préalable sur la méthodologie d'écriture des styles.
Il manque effectivement d'une base documentaire exhaustive (et compatible du point de vue des implémentations abracabrantesques de CSS ), ce n'est pas si difficile à réaliser, il y à déjà pas mal de matière exploitable (on s'inscrit ou ? smiley sourire )
En revanche, il y à un vide absolu sur les méthodologies à employer dés lors que le volume de déclarations CSS ou sa mise en relation avec des contenus fortement dynamiques impose d'utiliser à plein les mécanismes d'abstractions du langage que sont la cascade, l'héritage ou la descendance par exemple.

Petite illustration par un exemple très simple qui demanderais lors de l'apprentissage des propositions de méthodologie :
à l'usage on constate que le positionnement en production nécessite peut de maintenance et se satisfait très bien d'une écriture "classique" (déclaration, propriété, héritage et descendance).
En revanche les styles (police, couleur, comportement) sont sujet à maintenance et modification régulière.
Dans ce cas là le mélange positionnement/styles dans une même déclaration peut devenir problématique et les effets d'héritage et de descendance peuvent générer des effets de collision.
Qu'elle pourrait être une bonne méthode, dés lors que l'on sait que le volume de déclaration est important : deux feuilles, plusieurs blocs déclaratifs ou utiliser les mécanismes de surcharge qu'offre la cascade ?

Il y à de ce point de vue un énorme travail à faire à la fois sur des contenus pédagogiques clairs et facile d'accès sur la théorie du langage lui-même, qui est un pré-requis obligatoire dans une perspective de production "industrielle", mais également sur des propositions de méthodologies nécessaires pour limiter ou faciliter la maintenance de fort volume de déclaration.

Enfin pour les outils, pour en avoir essayer quelques uns, je pense que c'est très difficilement réalisable eut égard au langage lui-même.

Jean-pierre

frank, le 12 septembre 2005

Serait on en train de parler ici d'une certaine accesibilité et d'une présentation un peu plus pédagogique et centralisée des standards aux non initiés?

Malgré mon manque de compétence relevé par certains dans un autre domaine, c'est une chose dont je parle depuis belle lurette et ce n'est pas la seule, sans vraiment être pris au sérieux mais cela me rassure qu'une personne ayant apparement plus de relation dans ce cercle fermé des standards et un peu plus de poids que moi ai mis les pieds dans le plat et je ne peux que le féliciter.

Il serait enfin temps de voir autrement et se dire que les standards ne sont pas réservés à une intelligencia ayant une certaine plume et un certain esprit d'analyse.

Je remarque une fois de plus que les gros mots professionnels, formations, apparaissent dans le billet de Laurent-Denis il manque juste "décideur" pour que ce soit complet.

Il n'y as que des professionnels qui font des sites web?

Monsieur tout le monde vous en faites quoi, j'ai toujours l'impression dans les discours, que cette partie de la population n'existe pas pour les standards si si je vous assure, donc ne vous étonnez pas qu'une personne désireuse de créer sa page perso se tourne vers le premier wysiswyg venu.

Arrêtez de promouvoir les standards presque uniquement par le biais des professionnels vous savez très bien que ce sont les plus réticents. Essayez de vous adresser à votre voisin qui n'as aucune idée de comment on créer un site web et qui lui n'auras aucune contrainte ou très peu.

Par curiosité j'ai tapé "créer un site web" sur google comme toute personne désireuse de faire son premier site, Alsacréations n'arrive qu'en troisième page et à part peut être le site de salemioche pas grand chose à se mettre sous la dent niveau standards n' y a t-il pas déjà un premier travail à faire dans ce sens.

Pour moi un autre problème existe, la francophobie des standards et que l'on ne me dise pas que la langue du web c'est l'anglais ou alors arrêtez de suite de vouloir les promouvoir et restés dans votre cercle de professionnels car tout le monde ne maîtrise pas parfaitement la langue de Shakespeare et comprendre toute les nuances et subtilités d'un tutoriel avec un traducteur c'est pas gagné. Il existe bien certains sites comme pompage mais est-ce suffisant pour prétendre à une démocratisation des standards en France je n'en suis pas sur.

Fx parle de choix entre qualité et quantité doit on comprendre qu'un non professionnel sous prétexte de perdre en qualité (et d'ailleurs pourqui perdre en qualité) n'as pas le droit d'avoir à disposition des ressources même pré mâchées lui permettant de créer un site web respectant les standards et valide sans trop de difficulté et assez rapidement.

Si vous pensez qu'il faut absolument tabler sur le qualitatif et non le quantitatif, car apperement un non professionel ne pourras pas faire de qualitatif dans le cas d'une vulgarisation, (c'est vrai que ça manque de neuronne un amateur) ne venez pas chouiner que les standards en France ont du mal à percer.


Frank








Vero, le 12 septembre 2005

Je souhaiterais rajouter un commentaire "naïf " : pourquoi les choses sont-elles si compliquées ?
Puisque telle propriété n'est pas correctement implémentée ou interagit mal dans la plupart des cas, pourquoi embrouiller le public avec des outils qui fonctionnent mal ? Il n'y a pas moyen de freiner un peu ces pseudo innovations et laisser aux spécialistes le soin de les mettre au point ?
Je n'installe jamais une version en bêta test : je n'éprouve aucun plaisir à essuyer les plâtres, chacun son truc !
Il n'est pas si compliqué de mettre en ligne un peu de contenu de façon harmonieuse si on ne cherche pas midi à 14h. Il suffit de suivre un peu les problématiques exposées par les débutants pour observer la perte de temps et d'énergie gaspillée à résoudre un problème mineur qui aurait pu être contourné avec un minimum de réflexion en amont. On observe une utilisation intensive, voire abusive, de propriétés "avancées ", mal digérées, récupérées de-ci, de-là à l'emporte-pièce : le problème des "mauvais modèles ". Il faut aussi se contenter de ce qu'on est capable de faire à peu près bien : aller vers l'essentiel et la simplicité permet d'aboutir à un résultat tout à fait honorable en l'état actuel de la situation.
En ce qui concerne l'utilisation des outils de génération de code, ils peuvent s'avérer très pratiques pour des mains moins expertes qui auraient fait l'effort de comprendre l'essentiel de la structure d'un code, sans pour autant maîtriser parfaitement la syntaxe. On associe trop souvent l'absence de qualité à l'outil utilisé : tout dépend de la façon de s'en servir.
Un projet se réfléchit en terme d'objectif, délai et moyens à disposition pour y parvenir. N'est-ce pas cette approche-là qui fait défaut, associée à une ambition légèrement surdimensionnée ?

Philippe Worontzoff, le 12 septembre 2005

Frank, je suis d'accord avec toi sur le fait que l'on ne s'adresse jamais directement à nous, les amateurs (ce qui n'empèche nulement d'avoir des notions poussée sur les standards et l'accessibilité), mais, il ne faut pas pour autant faire du sectarisme et reffuser que l'on s'adresse au "profetionnels".

J'ai lu très souvant cette argumentaire (à mon sens assez libéral) comme quoi, c'est dans le monde professionnel que les standard doivent perser pour pouvoir en suite perser partout, c'est lassant ce discoure, je n'y crois pas vraiment et je m'en fout, j'aimerais qu'on s'adresse autant au professionnel qu'a l'amateur, sauf là où il faut faire la différance (ce qui est somme toute assez rare), mais, si l'on ignore se discoure, on remarque que dans l'ensemble, ces articles adressé au professionnel sont souvant tout aussi intéressant pour l'amateur (à l'exeption de certains articles comme par exemple : "Les standard Web pour l'entreprise" openweb.eu.org/articles/s... mais, bien souvant, comme c'est le cas ici, le titre suffi à ce que l'amateur sache qu'il peut allègrement passer à l'article suivant).

Bref, comme toi, je ressents une léger agassement à voir cette focalisation sur les proffessionnel, mais, à force, je l'ignore, de toute façon, ces gens aux idées "libéral" (ce que je respecte) ne changerons pas d'avis de si tôt et ce n'est pas leur apparant sectarisme, qui n'est nullement dérangeant, qui doit nous poussé aussi vers le sectarisme.

Vero, le 12 septembre 2005

C'est en qualité de webmestre amateur (pseudo débutant) que je livre ces commentaires. Adopter une démarche "professionnelle " même lorsqu’'on développe à des fins personnelles ou dans le cadre associatif (encore plus dans le cadre associatif, d'ailleurs) est tout à fait réalisable, au contraire. S'imprégner des méthodologies et ne pas plonger billes en tête dans un projet quel qu'il soit c'est faire preuve de sagesse et d'humilité peut-être... dans tous les domaines ! En fonction de la taille du projet, la difficulté et donc la méthodologie, sont simplifiées, mais pas inexistantes.
Quelle focalisation sur le professionnel percevez-vous, exactement ?
Les communautés actuelles d'entraide sont davantage peuplées de débutants qui adoptent une démarche irréfléchie ... Et le problème se pose peut-être réellement à l'échelle professionnelle. Et ce problème traîne certainement derrière lui des années de fausses illusions, ce paradigme économique tant promis sur la base d'une technologie qui n'était pas prête à affronter un tel succès aussi rapidement, pas plus que ne l'étaient les communautés en général ... Mais l'argent a ses raisons que la raison ne connaît pas ...il faut remonter 5 ans en arrière pour analyser le résultat aujourd'hui !
C'est peut-être l'amateurisme prétendu professionnel qui a freiné les choses... certainement pas ceux dont c'est le métier depuis très très longtemps. Pour me situer un peu mieux dans cet historique, j'étais dans l'EDI (Echanges de données informatisés) de 1987 à 1998. Là aussi, il était question de standards (ils portaient et portent toujours le nom d'EDIFACT) et la problématique était de rendre accessible le phénomène aux PME/PMI ...Tout un programme !

Philippe Worontzoff, le 12 septembre 2005

"Quelle focalisation sur le professionnel percevez-vous, exactement ?"

Ce n'est pas le débat (mais bon, puisqu'on y est...). C'est un sentiment général (rien d'exacte) qui se dégage de mes lectures ici, sur Openweb, et par le passé sur le standblog, cybercodeur et peut-être Alsacréations. Ce n'est pas très dérangeant en soi, mais, à la longue, lire partout qu'il faut d'abbord éduquer les professionnels alors qu'on est amateur, on peut se sentir faussement exclut. Comme tu le dis toi-même, que l'on soit amateur ou pas, adopter une attitude professionnel est forcément bénéfique (encore que ça dépend de ce qu'on entends par professionnel).

Je suis tout à fait d'accord que les faux professionnels nuise à la qualité du web en général, là ou je ne suis pas d'accord, c'est qu'il faut forcément se focalisé sur eux, il y a aussi tout un tas d'amateur qui font n'importe quoi, il faut éduquer autant les uns que les autres, les uns influancerons les autres et ce dans les deux sens.

Christophe, le 12 septembre 2005

Pour faire simple à la réponse posée simplment... : Oui ! Il faut documenter CSS en maintenant à jour la documentation !

Pierre Goiffon, le 13 septembre 2005

Laurent, la conception et la maintenance d'un site s'est toujours heurtée à un manque de documentation, à la nécessité de disposer de compétences, savoir faire et retour d'expérience présents en interne.

L'industrie s'est grandement professionnalisée, apportant productivité, rigueur, rôles clairement définis. C'est un bon point, et cela fait d'autant plus ressortir ce que vous constatez : bidouiller une feuille CSS en multipliant les petits hacks ne va plus très bien dans ce tableau. Un monde où des développeurs se sont spécialisés dans les applications sur support Web, où les administrateurs savent gérer un httpd et connaissent les contraintes qui vont avec, où les services marketing ont fini par assimiler les règles de base de ce nouveau medium et comment utiliser les outils correspondants. Bref des métiers qui existaient bien avant et qui ont simplement élargit leur domaines d'action.

Cependant... Il reste celui/celle que l'on appellera l'intégrateur HTML. Ce dernier a toujours été dépositaire de tout ce savoir faire, toujours utile aujourd'hui, mais toujours oublié. Ce poste est très loin d'être défini au sein des entreprises, ces tâches sont attribuées au fil de l'eau lorsque l'on s'aperçoit que l'on est coincé.

Bref, pour qu'il y ait documentation, il faudrait surtout qu'il y ait une volonté de produire du (x)HTML/CSS conforme, élégant. Or, alors que des solutions d'architectures complexes sont maintenant employées pour des projets Web, bref que l'on soigne l'application, alors que des services entiers sont dédiés à la stratégie Internet (Web et mailings), on se contente toujours de bidouillage, au dernier moment, sur le HTML. Parce que "ça ne doit pas être bien compliqué", et que donc n'importe qui peut arriver et faire une page Web. La preuve, le DG voit très bien son rapport annuel dans MSIE après l'avoir enregistré en HTML depuis Excel.

C'est caricatural, mais c'est ainsi que je ressent la situation. Les standards ont progressé dans l'industrie, certes, mais pas l'idée que générer le (x)HTML/CSS est bien une tâche à part entière, nécessitant des compétences et un savoir faire particulier.

Nico, le 14 septembre 2005

Je suis assez d'accord sur le point de vue de Pierre : l'intégrateur XHTML/CSS souffre d'une image de "c'est simple n'importe qui peut le faire", alors qu'il faut un savoir-faire pour le faire bien. Typiquement pendant les projets : oh, ça doit pas être compliqué de faire ça (intégration) !

Et là, je leur propose de le faire à ma place... et beaucoup (pour ne pas dire tous) se cassent les dents dessus ! Alors je vous explique pas quand c'est généré en PHP ou en ASP, là tout le monde fuit en courant... curieuse ironie pour une tâche que tout le monde estime être facile !

Heureusement pour moi, j'ai la liberté des outils et de choix, ce qui me permet d'utiliser les standards à ma guise (les gens s'en rendent compte après : oh, c'est léger, ça se charge très vite, etc...).

Nico, le 14 septembre 2005

Petite réaction sur ce sujet au passage :

dominique.hoffmann.free.f...

Nilpohc, le 18 septembre 2005

Si je résume : la question intiale est de savoir s'il faut documenter l'utilisation de CSS pour pallier à l'inexpérience du développeur et aux dysfonctionnements des navigateurs, et par ailleurs pour approfondir les méthodologies qui amélioreront la maintenabilité et la réactivité du code.
Au premier point je dis oui, parce que la prise en main est tellement facile qu'on en vient vite au bricolage pour corriger ses propres erreurs ou arriver à ses fins trop rapidement, en propageant sur internet ses maladroites découvertes.
Quant au côté propre et élégant du code (sans aller jusqu'à l'artistique), ne rêvons pas : c'est toujours la forme qui prime et rarement le fond, et tant qu'on pourra faire l'un sans l'autre, rien ne changera si on n'éduque pas toute la chaîne de production, du patron à l'utilisateur. Petit exemple pas si éloigné : combien de documents Word visuellement corrects n'utilisent en réalité aucun style de titre, aucune mise en forme intelligente mais plutôt des tonnes d'espaces et de retours à la ligne ?
Pour le second point c'est moins évident. Il est possible par anticipation d'éviter de tomber dans les cas problématiques sans aller jusqu'aux hacks ou aux CSS conditionnelles, mais selon le contexte ce n'est pas toujours applicable. Et il ne faudrait pas aller au-delà. Le contournement d'un bug est toujours un parcours du combattant, c'est comme ça, et aucune documentation ne saurait être exhaustive sur ce point (tous languages confondus). Le mot d'ordre serait peut-être "faites autrement ou ne faites pas", en attendant de meilleures implémentations.
Pour le troisième point, l'objectif est différent, et tous les langages sont au même niveau sur ce point : il y a toujours matière à documenter pour améliorer la qualité de la programmation.
Enfin, tu évoques la formation, mais sans documentation reconnue, comment peut-elle être crédible car sans support "officiel" ?

Donc je dis oui, il faut documenter CSS, et cette documentation doit être collaborative compte-tenu de la dispersion des connaissances et de l'expérience. Un wiki serait peut-être une solution, qui plus est moderne, avant de déboucher sur de véritables ouvrages...


B.

David Latapie, le 24 septembre 2005

Pour de la CSS à rendre pour hier, on peut commencer par ça :

fr.selfhtml.org/navigatio...

Les commentaires pour ce billet sont temporairement fermés en raison d'une série d'attaques de spam.