CC License

Licence Creative Commons
Footnotes* de Renaud Aioutz est mis à disposition selon les termes de la licence Creative Commons Paternité - Partage à l'Identique 2.0 France.
 

C’est libre, c’est libéré et c’est tout chaud, juste sorti du four, alors régalons-nous !

Comme toute nouvelle recette qui sort à peine des cuisines, on va la goûter, la savourer et l’analyser (toutes critiques – en bien ou en mal – qui contribueront à l’amélioration de la recette).

Avec la nouvelle version 3.3 de PMB est annoncée en même temps la disponibilité au téléchargement du plugin PMB-SPIP, né du projet RISOM et sur lequel nous avons tant travaillé (merci à tous !).

Que trouve-t-on entre autre dans la 3.3 ?

La version 3.3 de PMB devient la dernière version stable ! Cette version intègre de nombreuses nouveautés parmi lesquelles :

- L’indexation des documents numériques

- Un serveur OAI

- Un gestion des suggestions multiples y compris à partir de bases de données externes

- Un module de suivi des demandes de recherches documentaires

- Une interface de programmation par webservice

Mais l’un des points forts vient du plugin SPIP-PMB, aujourd’hui stable même s’il reste bien sûr des améliorations et des ajustements à faire.

Alors que peut-on télécharger dès aujourd’hui ?

PMB est ouvert !

Avec la version 3.3, PMB Services a intégré dans PMB une ouverture vers des échanges avec des applications externes à PMB. Cet outil puissant est une interface de programmation (API) qui permet de réaliser des appels distants, par webservice, de fonctions de PMB.

Une première application : le portail SPIP-PMB par OpenStudio

Forte de cette nouvelle fonctionnalité de PMB, la société OpenStudio a développé un plugin pour SPIP qui permet de créer très simplement un portail d’information contenant un accès au catalogue, une présentation des nouveautés du catalogue ainsi que les principaux services aux lecteurs (réservation, voir les prêts, voir les prêts en retard, poser un avis ou un tag sur des notices).

Ce plugin vous aporte un portail documentaire clé en main et simple d’utilisation.

Vous pouvez tester le portail sur le site de démonstration qui lui est consacré (les données sont les données réelles de la bibliothèque de Tence (43) ).

Une documentation vous propose un tutoriel détaillé pour installer le portail SPIP-PMB en une heure : Accéder au tutoriel

Vous l’aurez remarqué, c’est la base du RISOM qui sert de base de démonstration. Comme SPIP et PMB, ce plugin, en licence libre, est très facile à utiliser et permet à toute bibliothèque ou centre de documentation de disposer librement d’un CMS avec une intégration professionnelle complète de l’outil documentaire.

 

Bon d’accord, c’est peut-être un peu exagéré mais tout ça pour vous dire qu’on a bien avancé sur les performances en temps de réponse de notre plugin PMB/SPIP.

Merci à la Dream Team (Florent, Erwann, Arnault et autres femmes et hommes de l’ombre) pour leur travail, parfois ingrat.

Alors de quoi s’agit-il ?

Depuis qu’il nous a pris la folle idée d’interfacer SPIP et PMB plutôt que de nous contenter du module OPAC de PMB, on a connu plusieurs versions.

Pour celles et ceux qui n’ont pas suivi les épisodes précédents :

  1. première version du plugin début 2007 (avec SPIP 1.9 à l’époque !) : seul le flux RSS généré par PMB était récupéré dans SPIP pour la page des « Nouveautés ». Un début prometteur mais modeste (c’était le bon vieux temps de www.3bm.fr). En effet, l’interrogation catalogue basculait vers l’OPAC de PMB donc une autre fenêtre, pas idéal en terme d’ergonomie et d’identité visuelle, bien que fonctionnel.
  2. refonte totale du plugin avec SPIP 2 fin 2008, pour un nouveau site mis en ligne début 2009 et relooké, le nouveau graphisme étant dû à Thomas Rosset (www.risom.fr). Seul hic, les Web Services n’étaient pas encore opérationnels chez PMB donc nous avions privilégié une solution transitoire pour avancer quand même. Cela voulait dire que SPIP relançait une interrogation de l’OPAC et importait les résultats dans son interface graphique. C’était suffisant pour répondre à nos besoins basiques mais on en voyait vite les limites : temps de réponse médiocres, instabilité diverses (souvenez-vous de nos couvertures surprises…), pas d’accès aux critères de recherche détaillée etc.
  3. fin septembre 2009, quelques jours avant l’inauguration en grandes pompes des superbes nouveaux locaux de PMB Services (super soirée d’ailleurs, merci), la version de PMB avec les Services Web était libérée et on commençait à s’y attaquer. Chouette, du nouveau, ça avançait bien !
  4. depuis on n’arrête pas : y a du mieux mais aussi des bugs qui se révèlent d’où des corrections, des retours en arrière avec des fonctions qui manquent et puis des nouvelles qui arrivent. Bref on ne s’ennuie pas et c’est assez enthousiasmant de bosser en trio avec PMB Services et OpenStudio sur ce projet.

Aujourd’hui, les temps de réponse ont été bien améliorés, même si on continue à s’y pencher.

Voici ce qu’on avait avant l’optimisation, du point de vue d’Arnault chez OpenStudio :

Deux tests (résultats variables, je donne des durées à titre
indicatif):

- rechercher « victor hugo » sur les titres avec
*pmbesOPACAnonymous_simpleSearch()* -> 23 secondes
puis
pmbesOPACAnonymous_fetchSearchRecords($searchId,0,10, »pmb_xml_unimarc », »iso-8859-1″)
-> 21 secondes supplémentaires

- rechercher « victor hugo » sur les titres avec
*pmbesOPACAnonymous_advancedSearch()* -> 19 secondes
puis
pmbesOPACAnonymous_fetchSearchRecords($searchId,0,10, »pmb_xml_unimarc », »iso-8859-1″)
-> 16 secondes supplémentaires

la même recherche sur l’OPAC de PMB : environ 8 secondes.

Et voici ce qu’on a maintenant, testé par Florent chez PMB Services :

A mon tour !! J’ai fait quelques tests et je viens d’optimiser une partie de la gestion du cache PMB. Les temps de réponse on chuté :
Durée de la recherche: 3 secondes
Durée du rapatriement: 2 secondes
Durée totale: 5 secondes

Deuxième appel :
Durée de la recherche:  1 secondes
Durée du rapatriement: 2 secondes
Durée totale: 3 secondes
Durée de la recherche: 4 secondes
Durée du rapatriement: 3 secondes
Durée totale: 7 secondes

Deuxième appel :
Durée de la recherche: 1 secondes
Durée du rapatriement: 1 secondes
Durée totale: 2 secondes

Il y a encore des optimisations possibles je pense !

Comme je vous le disais, on a jamais fini, mais c’est ce qui fait l’intérêt de tout ça, non ?

Bon attention, ça ne règle pas le problème du tri des résultats peu pertinent et qui sera très prochainement corrigé, pour l’instant c’est juste plus rapide. C’est peut-être un détail pour vous mais pour nous …

 

Vous connaissiez SPIP mais connaissez-vous ZPIP ?…

Non ce n’est pas une variante locale d’un dialecte oublié, il s’agit en fait d’un squelette réutilisable, modulaire et disposant d’une galerie de thèmes. Il est issu d’une fusion des projets Zesty et SPIP-Zen.

Voici un exemple appliqué au plugin du RISOM :

envision

Zpip est un squelette qui met en application les idées exposées dans Modèle de squelette réutilisable. Il propose une organisation des squelettes visant à le rendre :

  • habillable par des thèmes indépendants du squelette
  • maintenable dans le temps, par une duplication minimale du code
  • rapidement déployable, au prix d’un petit apprentissage initial sur son organisation

Zpip s’adresse aussi bien aux débutants qui veulent profiter d’une galerie de thèmes prêts à l’emploi, qu’aux webmestres avancés pour qui il propose un fonctionnement et des mécanismes productifs.

Grâce à sa structure, Zpip est utilisable directement avec une galerie de thèmes interchangeables. Voici donc 3 autres exemples :

keepitsimple

jungleland

coolwater

Pour rendre notre plugin PMB/SPIP encore plus générique (et modulaire) et dans le cadre de la mise en place d’autres projets similaires sur d’autres collectivités, Arnault (OpenStudio) a donc repris le squelette RISOM pour en faire un squelette ZPIP. Ce qui veut dire que bientôt, en plus du plugin PMB/SPIP, vous pourrez aussi réutiliser le « thème » RISOM (même si à proprement parler, le terme de « thème » ne doit pas se confondre avec « squelette » qui est ici plus approprié et spécifique à SPIP). Vous me suivez ? Alors n’oubliez pas de faire votre liste au Père Noël !

Attention, cela veut dire aussi que notre site connaît quelques bugs ou problèmes d’affichage ces temps-ci, liés à ces modifications. Tout sera devrait rentrer dans l’ordre prochainement, d’autant plus que les Web Services continuent à évoluer et le plugin avec. mais ça je vous en parlerai la semaine prochaine.

Il reste encore bien des thèmes à intégrer, il faudra donc juste un peu de temps pour rattraper ce qui existe pour l’instant sous d’autres CMS.  L’avantage est que tout cela repose sur une architecture de squelette propre et solide donc avis aux graphistes talentueux, faites-vous plaisir ! Pour finir, deux derniers thèmes :

marketplace

harvestfield

Bien sûr, pour faciliter l’écriture de nouveaux thèmes pour Zpip, un certain nombre de conventions ont été documentées qui permettent de définir un socle commun. Les thèmes qui respectent ces conventions pourront être utilisés indifféremment avec Zpip ou tout autre squelette reposant sur la même structure et les mêmes conventions. Vous trouverez tout cela sur SPIP-Contrib bien sûr, je vous y renvoie (d’ailleurs, une partie des notes techniques de ce billet en sont tirées, merci).

CC License

Licence Creative Commons
Footnotes* de Renaud Aioutz est mis à disposition selon les termes de la licence Creative Commons Paternité - Partage à l'Identique 2.0 France.
© 2011 Footnotes* Suffusion theme by Sayontan Sinha