Bonjour à toutes et tous,

[note : houlala, ça bouge ici, ça fait plaisir ; j'ai commencé à écrire ce
mail à l'aube et ce que j'y aborde a déjà été abordé par d'autres, mais
tant pis j'en remet donc une couche]

Je sort de ma torpeur pour me permettre d'apporter mon petit avis,
puisse-t-il être utile. Cela va peut être ressembler à un "yaka fokon" ou a
une critique ; mais j'veux juste donner un point de vue sur quelques points
pour que vous puissiez mieux rebondir. Picorez là-dedans sans vous
offusquer de quoi que ce soit.

Je suis adepte de Dotclear depuis la version 1. J'ai beaucoup appris en
regardant son code. Même si cela fait bien des années que je n'y touche
plus, pour des raisons affectives j'ai toujours suivi son évolution. Et je
vois que je ne suis pas le seul. Je ne m'engagerais sur rien, simplement
insister sur quelques points déjà évoqués.

Je voudrais aussi préciser que je ne jette la pierre à personne, vraiment,
encore une fois, juste transmettre mon point de vue. Pour avoir trainé mes
guêtres ci et là dans le le monde du libre ; et même pour avoir fondé une
paire de communautés autour de logiciels, je sais que trop bien comme il
est difficile de gérer un projet open-source et la communauté qui va avec.
D'ailleurs chapeau pour la longévité, car 10 ans c'est déjà énorme. Normal
que certains se sentent essoufflés, fatigués. Il vous faut du sang neuf, de
l'aide, un renouveau.

Autant vous dire tout de go ce que je pense en ce qui concerne les trois
hypothèses : oubliez la seconde, elle reviens à passer directement à la
troisième, ce ne serait que reculer pour mieux sauter. Dire "on le maintien
en vie" c'est le mettre au mouroir. Soit ça continu d'évoluer avec la
volonté qui va bien, soit ça s’arrête. Car le faire vivoter reviendra, dans
la tête de tous le monde, à s’arrêter un jour ou l'autre. Et il n'y aura
alors rien de motivant pour qui que ce soit là-dedans.

J'vais enfoncer une porte ouverte, mais en me relisant, il me semble que le
problème fondamental aujourd'hui c'est le manque de moyens humains. Tout
semble revenir à cela. Finalement comme n'importe quel projet libre, c'est
récurent mais jamais définitif.

En ce qui concerne la communication, quoi que vous puissiez en penser,
c'est un fait : il y a un déficit. Je n'entend parler de Dotclear que
lorsque je vais à lui, jamais il ne viens à moi. Et pourtant dans mes 300
flux cela devrait non ? Comme il a était dit dans d'autres mails, pour
vivre et attirer du sang neuf le projet doit être visible et ce en
permanence. Effectivement d'un point de vue extérieur on pourrait presque
avoir l'impression qu'il y a la volonté de rester un projet intimiste, pour
une bande de potes et qu'il se repli peu à peu sur lui même. Ce n'est peut
être pas le cas mais c'est l'impression que cela peut parfois donner. Alors
le but de cette comm' ne serait pas d'aller "titiller la concurrence", car
la genèse du projet ne s'inscrit pas là-dedans, mais simplement d'attirer
de nouvelles bonnes volontés pour vous aidé à faire vivre dynamiquement le
projet.

Pour ce qui est des finances, vous avez sans doute le nécessaire pour payer
les frais courants. Mais on peut envisager les finances d'un autre point de
vue. Vous le dites bien : ça manque de développeur. La plupart des projets
libres que je vois vivre et grandir dynamiquement sont épaulés par des
entreprises qui donnent, non pas de l'argent directement, mais du temps de
développeur. D'ailleurs est-ce que DC2 serait sorti dans les mêmes délais
sans Gandi à l'époque ? Serait-il même sorti ? Le "sponsor" ou support
d'entreprises qui utilisent le logiciel est une piste à envisager. Telle
boite donne 1/2 journée par semaine de temps de développement d'un de ses
dev, telle autre société donne tant, etc. Bon je sais, facile a dire...
mais beaucoup d'autres l'ont fait, le font et le feront, pourquoi pas
Dotclear ?

Pour ce qui est des sources du projet. Personnellement, j'ai abandonné de
suivre l'évolution du code source lors du passage à HG, je venais tout
juste de me mettre à Git, ça y ressemble, mais c'est quand même différent.
Aujourd’hui tous les projets PHP sont sur Github ; de PHP lui même au POC
lambda, en passant par Atoum et Symfony. Tous le monde y est. Sur Mercurial
y'a les projets Python, dans l'univers Python, tous le monde y est. Alors
là je ne dis pas que passer sur Github ferait que des hordes de dev
débarqueraient, mais simplement ce serait un verrou en moins, un frein en
moins. Pas besoin de s'approprier un autre outil. Pas besoin de switcher
sur autre chose pour proposer du code.

En parlant de code. Souvenez-vous DC1 dès ses toutes premières versions
était respectueux des standards, valide XHTML 1.0 Strict, l'accessibilité
n'était pas en reste. A l'époque où la norme c'était la tag'soup, le projet
Dotclear était un précurseur, il montrait la voie. Entre autres, Tristant
sur son standblog ne s'y était pas trompé, comme Firefox fut novateur lors
de sa première version.

Souvenez-vous aussi le début du développement de la version 2. Olivier, en
gentil dictateur (c), à pris la décision unilatérale de passer en PHP 5
alors que tous les projets de l'époque s’accrochaient à la sacro-sainte
retro-compatibilité PHP 4. C'était un formidable coup de pied dans la
fourmilière, une prise de risque magnifique. Dotclear fut une fois de plus
précurseur, encore une fois il montrait la voie. C'est pour cela que
j'étais venu à Dotclear, et je ne dois pas être le seul. C'était stimulant,
super stimulant !

Aujourd'hui (hier ?) c'est moins glorieux, un peu plus triste, moins
enthousiasmant.? La faute à personne en particulier, la vie qui veux ça.
Dotclear est kéblo en PHP 5.2 ; kéblo en XHTML 1.0 strict. Et tous ce que
nous voyons depuis quelques mois.

J'aimerais retrouver ce souffle novateur, ces prises de risque, qu'à
nouveau Dotclear montre la voie. Laissez DC 2 sur hg, maintenez le en cas
de failles de sécurité et mettez en branle sur Github Dotclear 3 pour PHP
5.5. Intégrer les test unitaires avec un Atoum francophone. Un Dotclear 3
qui utiliserait des librairies externes approuvées et éprouvés pour ne pas
ré-inventer la roue et se concentrer sur le cœur de métier. Ne pas jeter à
la poubelle l'énorme travail qui a été commencé sur la branche sexy et
transformer l'essai en allant encore plus loin.

Oui, je sais, c'est facile à dire, je sais...

Peut être qu'il faut commencer par liste les tâche et diviser le travail en
plus petites unités. Lister les personnes qui veulent s'impliquer et que
les rôles des uns et des autres soient clairement identifiables. Sans doute
organiser des "pôles" (ou "postes", ou "commissions", appelés ça comme vous
voulez) et identifiez qui veut faire quoi dans ces "teams". Idées de pôles
: core devellopement / unit test, communication/community, gestion des
sites (dc/da), documentation, support, themes devellopement , plugins
devellopement )

Pour les prises de décisions, en plus des discussion, mettre en place un
système de votes afin de trancher.

Pour chaque équipe définissez des objectifs, fixez des échéances, (parce
que le "ça sortira quand ça sera prêt", c'est bien quand il y a de
l'activité, quand il y a du monde, mais quand c'est moribond c'est
l'assurance de ne jamais rien sortir). Si les objectifs ne sont pas tous
remplis alors ils sont reportés à la prochaine échéance. Comme ça il y a de
la vie. Des objectifs remplis. De la satisfaction. Et ça avance.

"Bon t'es gentil toi, à nous dire ce qu'il faut faire ; mais tu fait quoi
concrètement toi ?" Euh... moi je suis pris par d'autres projets et je ne
préfère pas prendre d'engagement que je ne pourrais peut-être pas tenir.
Mais, voilà, je pense que ça ne m'interdit quand même pas de vous soumettre
mon point de vue qui ne vaut que ce qu'il est : un avis parmi tant
d'autres. Et je ne souhaite pas, mais alors vraiment pas, voir mourir ce
magnifique outil.

En tout cas, quoi qu'il se passe, dores et déjà MERCI pour tout et MERCI à
tous pour tous ce qui a déjà été fait ! En espérant sincèrement que vous
puissiez en accomplir autant et même plus.

-- 
Vincent Garnier
_______________________________________________
Dev mailing list - [email protected] - http://ml.dotclear.org/listinfo/dev

Répondre à