Je vais tâcher de répondre dans l’ordre
Une petite remarque toutefois : lorsque tu parles de reflexion en "amont" (je pense notamment à ton idée d’éditeur de template), ne pourrait-t-on pas envisager une solution en "aval" , par l’intermédiaire d’un pluggin par exemple ?
Il faut que je réfléchisse davantage pour répondre à ça de manière sûre. Mais, spontanément, il me semble que l’imbrication serait telle que pour les développeurs en tire un maximum d’avantages, il s’agirait de concevoir l’ensemble (en fait une partie du cms) sachant qu’un plugin de ce genre là est appelé à venir se greffer. Ca demande confirmation(s).
j’éprouve une certaine crainte à voir se fondre le modèle logique avec le modèle de représentation des données le cas échéant.
Je partage cette crainte. Mais j’ai dernièrement fait évoluer mes convictions. En effet, il peut arriver que le modèle logique soit si touffu qu’il en devienne illisible. Et dans ce cas là, un bon modèle de représentation des données permet de s’affranchir de ce bourbier.
La plupart des développeurs et designers travaillent maintenant quasi exclusivement à l’aide d’éditeurs de texte puissants comme TextMate sur Mac, PS Pad sur windows, leur permettant de travailler directement le code de la manière la plus efficace possible.
C’est vrai. Mais, il s’agit de code dans ce cas là. Et il est bien difficile à ma connaissance avec ces outils ou des équivalents de valider le rendu graphique obtenu. Ne serait pour voir "ce que ça donne". Si les images sont bien jointives, les polices de tailles appropriées... Pour être franc, ils ne sont pas fait pour ça, donc difficile de le leur reprocher, mais il me semble qu’ils montrent leurs limites face à ce que je vais essayer de re expliquer plus loin.
En ce qui concerne MODx le choix est fait et bien fait : il cible des développeurs, les webdesigners et les passionnés qui n’ont pas peur de mettre les mains dans le cambouis... C’est donc un positionnement diamétralement opposé à celui dont tu parles dans ta vision du CMS idéal.
C’est là qu’on ne se comprend plus. Soit vous m’avez lu un peu vite, soit ce qui est plus probable, je me suis mal exprimé. Je ne parle absolument pas de web 3.0 ou d’un cms idéal. Il s’agit simplement de voir comment mieux parvenir à utiliser les capacités de personnalisation de ModX.
En fait ce que j’ai exprimé n’est absolument pas opposé au choix fait par ModX. Si j’ai posté dans ce forum, ce n’est d’ailleurs pas par hasard.
Pour moi, la force N°1 de ModX est de ne fermer aucune possibilité. Tout est permi, y compris de descendre dans le code pour bricoler soit même. Adapter un template par page est ici une banalité que bon nombre de cms n’envisagent même pas. D’avoir voulu simplifier la gestion de contenus, ils en ont restreints les libertés d’actions. Ce qu’ils ont gagné dans un sens ils l’ont perdu dans l’autre. Vous le dites à votre manière à propos de Typo3 (encore que ça pourrait changer parait il ?) ou de joomla, incroyablement bridé face à ModX.
Non, si pour résumer, je devais reprendre les phrases clés de mon message ce seraient celles ci:
Il s’agit donc bien de dissocier l’effet voulu de la technique utilisé pour l’obtenir. Il s’agit de scinder le travail en confiant au niveau du développement du cms la gestion transparente de l’utilisation des différents outils de programmation.
Il ne s’agit absolument pas de restreindre les capacités d’adaptation ou de bricolage du cms. En fait il n’y a rien à perdre et tout à gagner.
Je prends un exemple: Utiliser un cms classique est plus simple que de tout programmer à la main en php, html,.... En revanche, on perd en précision, c’est à dire, que l’on peut moins personnaliser. On est obligé de se contenter de manipuler des "gros bouts". Si les développeurs ont prévu des tas d’options ci et là, ça peut palier, un peu cet effet. Mais il est toujours présent. En définitive, plus on descend vers le code, plus on gagne en flexibilités, mais plus on perd en confort. C’est l’un ou l’autre et une affaire de compromis dans lequel ModX a choisi de maximiser les possibilités au détriment, assumé, du confort. On est d’accord là dessus. On cible bien les mêmes personnes.
Or, mon post de parle pas (tout à fait) de ça. J’essais simplement de réfléchir à comment gagner en flexibilité sans (trop) perdre de confort. Bref, j’essaie de trouver une solution pour sortir du carcan "confort x possibilités = constante". Il s’agit donc d’explorer des solutions, des concepts pour pouvoir (comme aujourd’hui) tout permettre à ModX, mais sans avoir à triffouiller systématiquement dans le code. Bien sûr si on désire y aller, pourquoi pas, mais des cas pourraient être résolus sans que ce soit nécessaire.
c’est le contenu que l’utilisateur final doit contrôler
On est bien d’accord là dessus. J’aurais même dit "c’est
uniquement le contenu....." pour l’utilisateur de base. On peut aussi imaginer un niveau d’utilisateur supérieur autorisé à en faire davantage (vous le dites vous même ensuite), mais l’utilisateur de base est celui que vous mentionnez.
Quand tu dis quoi de plus fatiguant que de re-coder plusieurs fois la même chose : c’est justement l’avantage d’avoir une API, et aussi d’avoir un contenu aussi ré-utilisable et une architecture aussi modulaire que possible.
On ne parle pas de la même chose, mais c’est secondaire ici. Quand je parlais d’avoir à re-coder, je pensais au développeur qui se retape, pour la xième fois le développement d’un plugin pour installer automatiquement des extensions par exemple. Il le fait pour la version 1, puis ça doit changer pour la 2 because c’est plus compatible... etc... c’est du ressort de la mauvaise gestion de l’équipe de développeur et ça démotive. J’en parlais parce que ça intervenait dans mes arguments mais c’est un sujet un peu en marge de l’essentiel de mon propos.
La ré-utilisation de bouts de code grâce aux chunks est un grand plus. Les CSS dynamiques permettent de ré-utiliser des bouts de CSS pour recomposer des feuilles de styles utilisant des éléments communs qu’il suffit d’éditer à un endroit pour actualiser toutes les pages (idem, pour les chemins d’accès aux images).
On est encore d’accord là dessus. C’est bien ça dont il s’agit d’etendre les possibilités et le principe, tout en ne restreignant aucune flexibilité.
John.