racine uZine

Dans la même rubrique
Évolutions et mises à jour
26 mai 2003
14 décembre 2002
2 septembre 2002
12 janvier 2002
15 novembre 2001
18 octobre 2001
18 juillet 2001
 
jeudi 14 février 2002

L’histoire minuscule et anecdotique de SPIP

par ARNO*

Les prémices de SPIP remontent au courant de l’année 1998 : Pierre Lazuly souhaite développer un système de publication pour faciliter la gestion de son site « Les chroniques du Menteur ». ARNO* a réalisé en Server Side Includes (une technologie très rudimentaire) un petit outil pour gérer les éditos du Scarabée et, de son côté, Erwan a développé un outil pour gérer L’Ornitho.

Erwan est alors le seul à savoir gérer une base de données, Pierre est en train de s’initier à PHP, et ARNO* ne connait ni PHP ni les bases de données. Mais Pierre passe ses vacances sur un bateau baptisé « SPIP » ; et comme « SPIP » est l’acronyme de « Système de Publication pour l’Internet », cela suffit à lancer le projet : on a le titre, le reste devrait être facile...

Cependant, malgré quelques essais (un premier système gère un site à base de PHP, mais pas de base de données, les informations étant stockées dans des fichiers selon un format spécifique - une sorte de XML qui s’ignorait -, avec un premier système d’identification des rédacteurs), le projet ne progresse guère. Il faudrait en effet :
- pouvoir réaliser n’importe quel type de site avec un même outil ;
- gérer ce site avec une interface accessible à tous.

Lors d’une soirée, Erwan dessine sur un bout de la nappe en papier du restaurant la structure d’une base de données qui permettrait de réaliser n’importe quelle structure de site. L’esthétique de la chose effraie ses deux compères, et SPIP en reste à ce stade de la nappe de restaurant tâchée de café.

Pierre définit l’utilisation de touches rarement utilisées dans un texte (les accolades notamment) pour créer rapidement de l’italique et du gras, ce qu’il nomme les « raccourcis SPIP ». Le système de publication des éditoriaux en Server Side Includes est traduit en PHP, mais pas d’utilisation de la base de données mySQL.

L’interface privée du Scarabée

Juste avant l’été 2000, ARNO* réalise le site des éditions Vuibert, dont le principe est un système PHP/mySQL, une interface privée où les personnels de l’entreprise enrichissent eux-mêmes le site, et un système de droits qui permet à certaines personnes (les « administrateurs » du site) de valider certains éléments avant leur mise en ligne. À partir des éléments fournis par les éditeurs, le système permet en outre de fabriquer des documents de gestion interne à partir de fichiers HTML contenant des éléments conditionnels, auxquels on peut attribuer des filtres, ce qui deviendra un des principes des squelettes de SPIP.

L’interface de gestion du site Vuibert

Parallèlement, avec Fil, il créé un système de publication simplifié pour gérer les « Cahiers documentaires » du Monde diplomatique pour lesquels, notamment, le système de raccourcis typographiques est plus développé. La fonction qui gère la typographie française et les raccourcis est diffusée à partir de la fin mai 2000 sous la forme d’un fichier intitulé « spiplib.inc ».

Durant l’été 2000, le Minirézo décide de relancer son site uZine, sous la forme d’un site dynamique auquel n’importe qui pourrait participer. ARNO* développe un outil à base de PHP et de MySQL, dont la particularité est la simplicité de l’interface de gestion du site. L’ensemble est affreusement mal programmé, mais fonctionne...

En septembre 2000, le lancement d’uZine 2 avec ce système valide l’idée qu’on peut utiliser une interface graphique très simple pour gérer un site relativement complexe, afin que n’importe qui puisse y participer sans connaissances techniques.

L’objectif de pouvoir réaliser n’importe quel type de site est écarté (le système correspond, à la base, aux besoins d’uZine 2), mais il est décidé que le système allait servir de base au système SPIP lui-même.

L’interface d’origine de SPIP

Cette première version comprend un correcteur orthographique basé sur le dictionnaire des mots communs de l’ABU. Ce correcteur sera finalement abandonné : impossible à diffuser à cause de la taille du dictionnaire (plusieurs mégaoctets, plus de 300 000 mots) et, appliqué à un texte très long, il mettait n’importe quel serveur sur les genoux... On trouve également une exportation automatique de l’intégralité d’une rubrique vers un autre site (fonctionnalité elle aussi abandonnée, et remplacée par un système de syndication de contenus) ; ainsi, les site Insurgence et Radiophare proposaient-ils des textes tirés de rubriques d’uZine, récupérés automatiquement et reformatés selon leur propre interface graphique.

Antoine participe à partir de ce moment au développement de SPIP, Fil soutient le projet, et le développement continue dans l’optique d’offrir un système complet sous licence libre.

Une procédure d’installation automatisée est intégrée, le principe des squelettes permettant de réaliser des interfaces graphiques sans utiliser PHP est élaboré, un système de cache est installé, et surtout des modifications importantes du système d’authentification des rédacteurs permettent de faire fonctionner SPIP chez un grand nombre d’hébergeurs.

Quelques semaines avant le lancement officiel de SPIP, les sites uZine, du Monde diplomatique et de Vacarme testent le système en conditions réelles d’utilisation, et permettent de valider le système de cache, la gestion d’une grande quantité d’information et le principe de l’interface de gestion d’un site.

Le 1er juillet 2001 : SPIP 1.0 est lancé officiellement. L’intervalle de temps important entre l’ouverture d’uZine 2 (avec une préversion de SPIP) et le lancement de SPIP est dû à plusieurs éléments :
- développer de nouvelles fonctionnalités, stabiliser le produit (éliminer des bugs), nettoyer une partie du code (qui était particulièrement sale), assurer une plus grande compatibilité avec de nombreux hébergeurs ;
- redessiner une interface graphique pour l’espace privé, qui permette d’inclure et hiérarchiser les 200 000 nouvelles fonctionnalités ajoutées au produit initial ;
- tester les choix du système sur plusieurs sites aux contenus et aux fréquentations très différents ;
- rédiger une documentation complète du système (une véritable plaie !).

Octobre 2001 : SPIP 1.2 (il n’y a pas eu de version officielle 1.1). Le processus de développement a évolué : en effet, depuis le lancement officiel, il y a d’autres utilisateurs de SPIP que ses développeurs ! Ainsi, les nouvelles fonctionnalités répondent beaucoup plus aux besoins réels exprimés par les webmestres (et non plus aux besoins d’uZine), plusieurs informaticiens compétents apportent ponctuellement des solutions pour le développement, et le débuggage se fait quasiment en temps réel.

Janvier 2002 : SPIP 1.3. Le développement continue, avec son lot de nouveautés. Un changement dans le développement : de nombreux utilisateurs sont désormais très compétents avec SPIP. De ce fait :
- les réponses aux questions des utilisateurs débutants sont largement prises en charge par d’autres utilisateurs, ce qui libère énormément de temps pour le développement du système (le lancement officiel de SPIP avait provoqué une charge de travail énorme pour les développeurs, dans l’explication de l’utilisation du système) ;
- ces utilisateurs devenant plus compétents, les nouvelles fonctionnalités de SPIP sont moins spectaculaires, et concernent largement une utilisation poussée du système.

L’interface de SPIP 1.3

Septembre 2002 : SPIP 1.4. Refonte radicale de l’interface de l’espace privé ; le nombre de fonctionnalités devenait trop important pour l’ancienne interface, la nouvelle permet de mieux structurer et hiérarchiser les fonctions de SPIP. Fontion très attendue : SPIP permet désormais d’incorporer des documents joints (notamment multimédia) à son site.

L’interface de SPIP 1.4

Décembre 2002 : SPIP 1.5. Cette version propose de nouveaux squelettes par défaut, nettement plus compatibles avec la norme xhtml. Les autres modifications sont beaucoup plus discrètes pour l’utilisation quotidienne de SPIP, mais renforcent nettement la stabilité et la cohérence du système.

Mais 2003 : SPIP 1.6. L’énorme nouveauté de cette version est la possibilité de changer la langue de l’espace privé : on peut désormais utiliser SPIP anglais, italien, espagnol, danois, allemand, arabe, créole réunionais, vietnamien... Un outil spécifique facilitant la traduction de l’interface est créé. Les volontaires pour proposer des traductions se regroupent sur la liste spip-trad.

L’interface de SPIP 1.6 en arabe
N.B. L’interface graphique est affichée de droite à gauche.
 
 
ARNO*
Imprimer
format impression

Vainqueur 1982 du concours « Chateau de sable » du Club Mickey des Pingouins à Sainte-Cécile.

28 septembre 2003
 
SPIP
Web indépendant