Interview de Developpeur
-Bonjour,vous êtes le développeur de NPDS l'un des plus célèbres CMS
francais. Es-ce votre domaine de prédilection ou plutôt une passion et
comment êtes vous venu à l'envie de créer un CMS ?
"l'un des plus célèbres CMS Français"...Restons raisonnable :-)
Je suis un autodidacte de la programmation et plus généralement de
l'informatique. Par contre j'aime le développement informatique tout
simplement.
Je m'essaye donc depuis plus de 15 ans au développement de trucs et de machins dans un tas de langages différents.
Et je ne peux pas dire que j'ai eu envie de développer un CMS, le fait
est que le premier script PHP que j'ai regardé sérieusement a été un
CMS (Php-Nuke).
-NPDS dérive du système nuke. Pourquoi un développement sur cette base ?
Fondamentalement mon premier objectif a été d'offrir une version
française de nuke et ce sont donc de simples raisons historiques.
De plus j'aime bien finir ce que je commence et mon travail n'est pas encore terminé ...alors je continu.
-Travaillez-vous seul ?
Au début oui mais depuis plus d'un an une équipe pluri-disciplinaire
est en place. Reste que nous n'utilisons pas CVS et que je contrôle
donc complètement l'ensemble du code du noyau de NPDS.
C'est un choix lourd de conséquences mais que j'assume pour l'instant.
Cette équipe regroupe environ 25 personnes de tous âges (de 14 à 55
ans) et travaille sur l'ensemble du projet (développement, graphisme,
support, documentation, animation,) et c'est un vrai plaisir de
travailler avec eux.
Voir TNT une sorte de «qui sommes nous »
-Les systèmes nuke sont jugés lourds dans leur fonctionnement, peu
modulable, bref de véritable usine à gaz.Quant est-il de NPDS ?
Usine à gaz est un terme qui est souvent considéré comme péjoratif
...mais je pense que tout système un tant soit peu complexe est une
usine à gaz.L'important n'est pas là.
Au fur et à mesure des versions,nous réalisons un véritable travail
«d'urbanisation» et d'architecture du noyau original et c'est bien une
nécessité technique.
NPDS dispose maintenant d'un certain nombres de "services" (le Cache de
rendu et le cache SQL, un ensemble de classes ou scripts PHP pour la
gestion de l'upload, du javascript, de la sécurité ) qui lui permettent
donc d'évoluer sans problème.
Par contre il reste (et c'est un choix) un système relativement complexe CAR complet.
Nous développons maintenant des concepts comme meta-lang,
Theme-Dynamic, MiniSite qui assurent un bon niveau d'abstraction par
rapport au noyau.
L'objectif est bien de rendre plus simple la personnalisation et
l'enrichissement de NPDS tout en fournissant un certain nombre de
services de haut niveau aux développeurs.
Ceci étant la complétude se paie souvent par une complexité accrue.
Vouloir l'un sans hériter de l'autre est (à mon sens) irréalisable.
-Quelles sont ses principales qualités ? Et aussi ses faiblesses.
Forces :
Sa stabilité, son absence de rupture dans la compatibilité ascendante,
sa relative sécurité, son paramétrage (pour qui se plonge dedans),
certaines de ses fonctions (meta-lang, MiniSites, SFORM,...), sa
documentation en français et sa communauté.
Faiblesses :
Son héritage du passé (certaines choses sont tout simplement bonnes
pour la poubelle), sa trop forte intégration du HTML dans le code PHP à
certains niveaux, son SQL, sa documentation qui n'est qu'en français et
sa communauté.
-Quel est le concept de Theme-Dynamic ?
Theme-Dynamic est la possibilité de concevoir un thème pour NPDS, non pas en PHP mais directement en HTML.
On «dessine » son thème et on intègre les fonctions de NPDS via des
meta-mots (représentation symbolique de fonctions du portail : par
exemple : !date !affichera la date du jour, dans la langue et le format
souhaité).
TD permet même de «noyer » du PHP dans du HTML et donc d'ouvrir cette mécanique à une personnalisation encore plus fine.
Le validation du rendu graphique étant instantanée, la mise au point
est grandement facilité, par contre, en production, l'interprétation
d'un Theme-Dynamic est fortement accélérée par l'utilisation de
SuperCache.
TD permet enfin de ne pas avoir le classique interface 3 colonnes, de
différencier les blocs, de faire un interface complet en Flash .
-L'installation est aisée, grâce à un script spécifiquement réalisé,
son administration ne dépayse pas trop les utilisateurs des autres CMS
et la communauté a développé bon nombres de modules et d'interfaces
graphiques. Quelle est la direction principale pour son évolution
actuellement ?
Un moteur flambant neuf pour la gestion des rubriques intégrant la
gestion d'une chaîne de publication moderne voire même innovante.
Le support d'UTF8
Le stockage en base de certains composants PHP du noyau (les meta-mot par exemple)
La conformité XHTML
UTF8 est une norme assurant le codage des caractères dans les différents alphabets.
L'utilisation de ce «charset » (jeux de caractères) permet donc, non
pas le multi-langue (que NPDS supporte) mais le développement d'un site
en chinois, arabe ou russe (ou les 3).
A titre d'exemple, une version Chinoise est en préparation qui mettra à
la disposition des utilisateurs, l'ensemble du CMS (messages, aide en
ligne, date, javascript ) dans ce jeux de caractères particulier.
Le Support d'UTF8 est un gros travail qui nécessite (et nécessitera) une mise au point particulièrement soignée.
-Est-ce que NPDS va tendre vers une ergonomie d'utilisation de
l'administration qui ressemble à celle d'un logiciel : menu déroulant
dans une barre, ajout automatiser des composants (modules )?
Nous travaillons effectivement sur une évolution de l'environnement
d'administration. L'idée est de faire mieux qu'actuellement mais pas
forcement à la «Windows ». Il me semble que la navigation dans une
application HTML ne doit pas être copiée sur le fonctionnement d'un
environnement fenêtré. Cette évolution sera normalement présente dans
la prochaine version de NPDS : SABLE.
Installation automatique de composants : ce n'est pas un problème de complexité mais de volonté.
Certains modules complémentaires sont auto-installable, d'autre non.
En fin de compte aider l'utilisateur oui, l'assister totalement : j'avoue ne pas être pour.
-Quelles sont les fonctions PHP indispensable au bon fonctionnement de NPDS ?
La fonction Mail (et encore), un PHP 4.0.0. rien de plus
UTF8_encode et UTF8_decode si vous voulez passer en UTF8
De fait, nous n'utilisons que peut les «libraries » d'extensions et une
implémentation standard de PHP est donc largement suffisante.
-D'après vous, qu'est-ce qui explique le succès de NPDS ?
Rien si ce n'est que la lumière est presque toujours allumée et qu'à la taverne on est libre de parole et de pensée.
Plus sérieusement, NPDS n'est pas un jouet, nous faisons simplement
notre travail le mieux possible sans vagues et avec un certain
"esprit".... le tout en français.
-La communauté est-elle réactive ?
Si je dit oui .. personne ne me croira et si je dit non ... ils (les
membres de la communautés) vont me tuer ... donc JOKER !/plus
sérieusement : il y a presque toujours quelqu'un !
-Bon nombre de webmestres utilisent les services des hébergeurs
gratuits. Sont-ils bien adaptés pour les CMS actuels et à-priori pour
NPDS ?
Franchement, Xoops, Postnuke, NPDS... tournent dans ces contextes mais avec quel nombre de connectés simultanés ?
Les CMS d'aujourd'hui (et de demain) sont des produits vastes qui ne se
suffisent pas d'un hébergement gratuit. Ce n'est pas pour des raisons
d'ordre technique mais plutôt en fonction du contenu, des aspects
crédibilité et performance et du nombre d'utilisateurs connectés.
Par contre il existe de nombreuses et talentueuses solutions (Guppy,
Portix, les Blog,...) qui me semblent plus adaptées pour ce type
d'hébergement.
Les hébergeurs ont d'ailleurs bien compris le marché il me semble.
-Pensez-vous à l'avenir à long terme du CMS ? Comptez-vous
poursuivre l'aventure ou plutôt espérer la reprise par d'autres
développeurs ?
Je suis d'un naturel fidèle, l'aventure est passionnante, la communauté
craquante et le sujet tellement vaste qu'il faudra me mettre dehors !
-D'autres alternatives aux CMS nukes existent dont l'un des plus
actifs MAMBO qui propose pas mal de fonctions inédites dans le domaine
des CMS gratuits. Quel est votre avis par rapport à ce CMS et à la
diversité offerte dans ce domaine, peut être trop importante ?
MAMBO : je suis à chaque fois impressionné et je dois avouer... leur piquer quelques lignes de temps en temps...
La diversité est la force de l'Open-Source, c'est l'essence du progrès : "trop n'est jamais assez" pourrait on dire.
La sélection (car il y en a une) se fait dans un environnement ou les utilisateurs ont le choix !
C'est évidemment plus compliqué comme démarche intellectuelle mais c'est tellement plus satisfaisant et sécurisant.
PS : en vrac et dans le désordre une liste personnelle de projets que
je trouve remarquables : w-agora, TinyMCE, Guppy, PhpSecure, hapedit,
phpclasses, Putty, Ixprim, Mandrake Move
Merci.