Depuis ses débuts en 2004, Rebellyon fonctionne grâce à un logiciel libre, Spip, baptisé ainsi en référence à l’écureuil de Spirou et Fantasio, mais surtout pour « Système de Publication pour un Internet Partagé ».
Rebellyon s’est largement inspiré dans son fonctionnement des nombreuses possibilités collaboratives prévues dès le lancement de Spip. Celui-ci avait en effet été conçu à son lancement, il y a 11 ans, pour permettre la publication en ligne d’un journal ou webzine. Spip a beaucoup évolué depuis : il nous permet toujours d’afficher les articles, de les rédiger, de les corriger, de les commenter, de faire évoluer à notre convenance l’apparence du site. Mais c’est aussi ce qui nous a permis de lancer en 2010 une plateforme de vidéos totalement libre [1], un site d’agrégation, « Médias Libres », et demain un site de cartographie collaborative de la vidéo-surveillance. Avec Spip, notre principale limitation pour améliorer ou développer des outils, c’est notre temps disponible et notre créativité !
Il y a quelques années, beaucoup de militant-e-s s’intéressaient aux outils permettant de créer un site adapté à ses besoins. C’est moins le cas ces derniers temps. Résultat : les sites d’infos alternatifs évoluent peu, paraissent souvent vieillots, à la lisibilité médiocre ; ou alors ils reproduisent le format blog, totalement inadapté au foisonnement d’un site d’information, et dénué de tout aspect collaboratif ou d’entraide. Spip est libre : dans son code, ce qui est déjà bien ; mais il est aussi porteur d’une autre liberté, plus politique : celle d’écrire et de publier ensemble.
Voici quelques questions auxquelles on a répondu collectivement à partir des points de vue multiples du collectif d’animation de Rebellyon, de la modération à l’administration web en passant par le développement [2]. Pour donner un peu envie de s’intéresser à nouveau à la maîtrise de nos outils, parce que nos fins sont incluses dans nos moyens, et pour remercier la communauté Spip qui nous permet d’exister et d’être autonome dans la réalisation de nos idées.
Salut, d’abord c’est quoi Spip ?
Les modères : Spip c’est un truc pour gérer un flux d’articles et de commentaires, et des raccourcis qu’il faut maitriser pour mettre en page facilement. C’est surtout une « interface privée » qu’on a renommé pour Rebellyon « espace collaboratif ». C’est ce qui permet à pas mal de gens de lire les articles proposés, d’en discuter avec l’auteur-e et d’autres, de les améliorer si besoin en gardant la trace des modifications.
Le développeur : l’écureuil de Spirou ! Mais c’est aussi ce qu’on appelle un système de gestion de contenu (au même titre que Wordpress ou Joomla par ex). C’est un outil pour créer et gérer simplement un site web sans avoir besoin de connaître un langage spécifique. Spip existe depuis 2001, est particulièrement répandu dans l’espace francophone, et aussi chez les associations et les militants "de gauche". C’est ce qui permet de faire tourner Rebellyon, mais aussi Indymedia Grenoble, Lille ou Paris. Mais il équipe également de nombreux ministères ou des grosses boîtes, c’est le principe du logiciel libre.
L’administrateur du serveur : c’est d’abord un outil extrêmement facile d’installation (d’un point de vu admin). C’est une très classique plateforme LAMP (Linux, Apache (le serveur web), MySQL (la base de données) et PHP (un très bon langage web si on sait programmer, mais avec lequel il est très facile de faire des trous de sécu, qui peuvent mettre en danger le site mais aussi les infos des utilisateurs-trices, comme le mot de passe qu’illes utilisent, ce qui est arrivé à Agenda Lyon).
La dernière version de Spip était attendue depuis longtemps. Comment se déroule le développement d’un outil comme Spip ? Qui y participe, et qui peut y participer, comment ?
Les modères : Je ne sais pas vraiment pour l’ensemble du développement de Spip. Pour ce qui est de nos sites, on fait des retours en réunion sur ce qu’on aimerait améliorer, les soucis qu’on peut rencontrer. S’intéresser un peu à la technique quand on l’utilise tous les jours c’est normal, c’est comme savoir démonter une roue quand on fait du vélo quotidiennement. Si tu sais pas faire, t’es obligé de prendre un Vélo’v ou le bus. Et puis Internet change, les sites de presse industriels évoluent, alors nous aussi on doit pouvoir améliorer le site, sinon on n’arrivera jamais à les remplacer et on continuera à grogner dans notre coin. Y’a encore du boulot :p
Le développeur : Tout le monde peut participer au développement ! Mais il existe une distinction entre le développement du "core de spip" (les fichiers du moteur, du noyau) et le développement des plugins qui rajoutent des fonctionnalités. Les plugins sont extrêmement importants et contribuent largement au dynamisme de la communauté Spip (on peut en voir un certain nombre sur http://plugins.spip.net). D’ailleurs de nombreuses améliorations au noyau de Spip sont issues des plugins.
En gros, tu utilises un plugin pour ton site, tu as une idée d’amélioration ou tu vois un bug, tu le signales ou le corriges, ça permet à tout le monde d’avancer. Ou alors tu as une idée pour ton site (par exemple en réu), tu crées un plugin et tu le publies avec un peu de documentation sur un des sites de la communauté ce qui permet à d’autres de l’utiliser (ça d’ailleurs on ne le fait pas trop pour Rebellyon, c’est mal). La « communauté Spip », ce sont aussi des gens qui s’auto-organisent pour aider les autres, en répondant sur des forums, des listes de diffusion, en rédigeant de la documentation ou en animant des rencontres locales pour s’entraider. Tout le monde peut être utile au développement, du blogueur autodidacte à la retraite jusqu’à la développeuse très pointue d’un énorme site web d’entreprise.
La liste des nouveautés de Spip 3 est très longue. Quelles sont celles qui vous paraissent particulièrement intéressantes pour un site comme Rebellyon ?
Les modères : pour quelqu’un-e qui n’y connait pas grand chose, c’est pas facile de le savoir. Du point de vue de la modération, on espère pouvoir mettre en place plus de transparence dans la validation ou non des compléments d’information (les forums sous les articles). Pour l’instant on ne sait jamais qui d’entre nous a modéré tel ou tel complément d’info, pourquoi tel choix a été pris, ou alors il faut demander au reste du collectif. Pour les articles on arrive à faire des choix collectivement, ce n’est pas le cas des forums, dont la modération peut être assez aléatoire. Et Y’a plein de trucs à améliorer encore pour faciliter notre fonctionnement, la participation et la lisibilité du site.
Le développeur : Spip est pensé depuis sa création pour faciliter la gestion collective d’un site (à la différence d’un blog). Il est également très orienté multilinguisme. Rebellyon s’appuie à fond sur la différence entre "espace collaboratif" et "espace de publication". Spip 3 va permettre de proposer un espace collaboratif plus adapté aux besoins des utilisateurs-trices, de le customiser. L’apparition des « objets » va permettre de mieux gérer le contenu très riche et varié de Rebellyon (les « brèves », les articles « à lire ailleurs », etc.). Par exemple, c’est ce qui nous a permis de créer facilement un objet « caméra » pour le site sur la vidéo-surveillance, qu’on peut voir sur http://carto.rebellyon.info, avec des infos très différentes d’un article à remplir. Et ça ne tient qu’à nous de le faire d’une manière facilement compréhensible, donc participative. Cette nouvelle version devrait aussi nous permettre de lancer plus facilement une version de Spip pour les sites d’infos alternatifs, avec tous les plugins nécessaires, facile à installer. Mais pour ça, il faut un minimum de travail commun entre les différents collectifs. Pour le reste, la liste des nouveautés est longue comme le bras, faut voir dans le détail les projets que ça peut permettre.
L’administrateur du serveur : On pouvait installer depuis quelques temps Postgresql (une très bonne alternative à la base de données MySQL) mais depuis Spip 3, la base de données par défaut est SqLite. C’est une base de donnée sur fichier, largement arrivée à maturation, qui permet de se passer de serveur de base de donnée, ce qui facilite encore l’installation. On perd beaucoup quand même (notamment en écriture et un peu en lecture et des fonctionnalités propre à la bd) mais pour la plupart des sites c’est très bien. D’autant que la majorité des hébergeurs limitent dans leurs offres le nombre de base de données (ou elles sont payante).
Est-ce que ça vaut le coup encore aujourd’hui d’utiliser Spip pour un site d’infos alors qu’il existe des outils apparemment très bien faits comme Wordpress ?
Les modères : Wordpress, c’est ce qui fait tourner des sites comme le Jura Libertaire ou Alsace Libertaire. Comme on échange peu entre sites d’infos alternatifs, on ne sait pas bien comment ils fonctionnent en interne. A priori ça ne permet pas beaucoup d’échanges entre modères ni avec les auteur-e-s. L’intérêt de Spip c’est aussi que c’est un logiciel francophone, et donc n’importe qui peut facilement lire de la documentation, pas besoin d’être super bon en anglais. Y’a des sites très bien faits comme http://spip-contrib.net qui permettent de comprendre ce qu’il est possible de mettre en place sur le site sans être un-e technicien-ne. On peut aller dessus et ensuite dire en réunion « tiens, j’ai vu telle ou telle fonction » : on est moins dépendant-e-s des geeks comme ça. On teste aussi les trucs qu’ils mettent en place jusqu’à ce que ça fonctionne, comme un tchat d’entraide disponible depuis peu dans l’espace collaboratif. Au final, on a un peu l’impression qu’on peut faire ce qu’on veut, on se dit qu’il nous faudrait juste quelques technicien-ne-s de plus pour faire un truc de dingue.
Le développeur : Spip c’est un outil qui permet de s’adapter au niveau de connaissance des personnes qui veulent installer un site, c’est un outil véritablement progressif, avec différents niveaux. Comme pour les autres outils similaires, il existe des thèmes (ou squelettes) déjà conçus, pour les personnes qui ne veulent pas y passer trop de temps. Mais pour les personnes qui veulent faire un site véritablement adapté à leurs envies, à leurs idées, Spip propose un cadre très sécurisé.
Comme il passe par un métalangage, il est possible de faire des "plugins" (des nouvelles fonctions en gros) aussi sécurisés que le noyau même de Spip, à la différence par exemple de Wordpress, où on va coder directement en PHP : de multiples failles peuvent ainsi être créées. Personnellement je ne connaissais au départ ni PHP (la base du web interactif), ni MySQL (la base de donnée la plus répandue pour les sites web). J’ai commencé avec "les boucles SPIP", qui sont une reformulation simplifiée et compréhensible d’interrogations de la base de données (ce qu’on appelle des requêtes SQL en PHP), qui sont vraiment uniques. Au départ d’ailleurs Spip était développé par et pour des gens qui ne connaissaient pas ou très peu le développement de sites internet mais qui souhaitaient en faire. C’est peut-être ce qui a donné une image "amateure" à Spip pendant longtemps. Mais aujourd’hui, ce métalangage, ou surcouche, permet d’assurer une sécurité de base aux sites que je développe, même quand on essaie de créer des trucs un peu fou : comme Rebellyon TV, ou comme le site en cours de réalisation de cartographie de la vidéosurveillance.
Et Spip, c’est aussi le seul outil que je connaisse pour lequel on peut commencer par se rendre à un apéro, le seul dont les rencontres internationales se déroulent dans des grottes troglodytiques (les autres c’est plutôt ambiance hôtel des congrès).
L’administrateur du serveur : Spip c’est à la fois facile à installer et à garder sécurisé. Sa mise à jour se fait facilement par plusieurs méthodes, dont certaines sont très simples (en 5 clics pour un plugin, ou grâce à un bête fichier dans un répertoire pour une installation).
En cas de gros de bug de sécurité, on a juste à mettre à jour un fichier PHP appelé « écran de sécurité », qui assurera la sécurité du site jusqu’à la nouvelle version de Spip.
Un point moins connu mais précieux si on héberge plusieurs sites, c’est la mutualisation ou « ferme à blogs » qu’offre Spip. C’est-à-dire la possiblité d’installer un seule fois Spip pour autant de sites que l’on veut. Génial, non ? Du coup, lors d’une nouvelle version de Spip, on en met un seul à jour, et les milliers de blogs qu’on héberge sur Rebellyon le sont aussi [3] Ca permet aussi de proposer aux sites hébergés une base commune de plugins, libre à eux de les utiliser ou non, ou d’en rajouter. Du point de vue de la personne ou du collectif hébergé sur Rebellyon, c’est plus facile à comprendre, ils n’ont qu’un répertoire à s’occuper, celui de leurs « squelettes », c’est-à-dire comment s’affichent les pages de leur site et ce qu’elles contiennent. C’est super clair. Du point de vue de la personne qui s’occupe du serveur, on s’arrache moins les cheveux.
Les performances sur plusieurs points par rapport au début se sont vraiment beaucoup améliorés. SPIP c’est cool, merci à tous ceux qui y participent !
Quelques nouveautés importantes :
Cette nouvelle version est marquée par :
la réécriture complète de l’espace privé en squelettes qui a permis la mise en place de conventions et mécanismes qui facilitent grandement la création de nouveaux objets éditoriaux et la personnalisation des objets existants ;
une forte modularité : le noyau a été découpé en 23 plugins (tous distribués avec SPIP) qui pourront avoir leurs cycles de vie et de développement propres, facilitant ainsi l’évolution et la maintenance de cette version ;
une boucle DATA révolutionnaire qui permet de boucler sur tout type de données (CSV, XML, YAML...), et aussi directement sur une URL distante : le Web devient votre base de données !Elle intègre également de nombreuses autres nouveautés :
un jeu de squelettes par défaut remanié en profondeur ;
l’écran de sécurité installé en standard ;
SVP, un outil pour l’installation et la mise à jour des plugins ;
jQuery-UI intégré aux plugins fournis par défaut ;
le traitement des raccourcis pris en charge par le nouveau moteur TextWheel ;
la mediabox et la médiathèque de documents intégrées par défaut ;
SQLite complètement supporté comme gestionnaire de base ;
une API généralisée de création de nouveaux objets ;
les fonctionnalités Ajax des squelettes plus accessibles (ARIA) et qui préservent l’historique de navigation ;
de nouveaux critères, filtres et balises ;
Extrait de Spip-Contrib. Voir également la liste complète.
Compléments d'info à l'article
Proposer un complément d'info