Xrousse.org

Css
Xrousse
Lynx

Beryo, système de publication pour le web

2. Pour les mordus: Le pourquoi du comment de la création de Beryo

Publié par Yo' le samedi 2 décembre 2006

Sommaire

Beryo, un système né à la maison et dans la bière
Beryo, pour flatter mon égo
Beryo, publier simplement sur le web
Beryo, pour réinventer la roue
Beryo, l'essayer c'est l'adopter

Beryo, un système né à la maison et dans la bière

La formidable histoire commence à la fin de mes études d'ingénieur en agriculture à l'isara en 2001 ou, cherchant un moyen de garder le contact avec les 'potes de promo' appelés à exercer des professions toutes aussi passionnantes que disséminées aux 4 coins de France et d'ailleurs, le site web s'est vite révélé le média le plus adapté.

Tombé dans l'informatique petit (merci Thomson pour l'invention du TO8D !!), mais plutôt novice en programmation web, j'ai acheté un peu par hasard un jour de déambulation dans les rayons de la FNAC, le manuel Pratique de MySQL et PHP de Philippe Rigaux aux Editions O'Reilly, qui est devenu une de mes bibles de chevet.

Quelques mois plus tard, à force de persévérance, est né un embryon de système de publication, plutôt rudimentaire mais fonctionnel. Le système permettait aux membres de poster des news et des photos après s'être identifié. Le système était peu évolutif car construit 'au fur et à mesure', sans vision globale ni souci d'optimisation du code. La moindre modification nécessitait de se replonger dans la montagne de code tarabiscoté et bien entendu non documenté. A l'époque, je n'avais pas non plus conscience qu'il pouvait exister un monde après Windows et Internet Explorer !

Et puis en septembre 2003, j'ai fait la connaissance de Linux grâce notamment à l'équipe du Taket et à un CD de boot d'une distribution Knoppix trouvé dans un numéro de Linux Pratique . Ca a été le choc et la révélation : avec Linux, j'ai découvert la philosophie du Logiciel Libre , les Standards Ouverts et Tristan Nitot , la Mozilla Fundation , les Recommandations du W3C ...

Impossible de synthétiser tout ça ici mais ce que j'ai compris :

  • Un développement informatique doit pouvoir servir à d'autres personnes ayant des besoins identiques ou proches des miens.
  • Rendre le code source disponible est le meilleur moyen de rendre un système pérenne et de garantir son évolution y compris par d'autres utilisateurs.
  • Il est nécessaire de produire de l'(X)HTML conforme aux standards du Web, pour rendre le site accessible à tous, quel que soit le navigateur ou la tablette braille utilisée.
  • Il est capital de documenter le code et le projet sous peine de perte de temps phénoménale.
  • 6 bières constituent la limite au delà de laquelle je ne peux plus continuer à travailler/coder; ou alors il me faudrait un bureau plus grand...

Et c'est comme ça qu'a commencé le développement de ce qui allait devenir Beryo, un système de gestion de contenu pour le web. Le développement a duré plus d'un an (et dure encore mais j'ai levé le pied!), forfait soir et week-end étant donnée que mon activité professionnelle, même si elle est aujourd'hui fortement liée au web, n'est pas de construire des applications de gestion de contenu !

Sommaire

Beryo, un système pour flatter mon égo

A ceux qui se demandent l'origine du nom Beryo, c'est simple : après plusieurs soirées à écluser des bières avec le groupe de réflexion (composé de mes compagnons réguliers de soirées), force était de constater que nous étions dans l'incapacité la plus totale de trouver LE nom-qui-tue, avec le sens et toute la portée qui va avec. Nos têtes étaient aussi vides que nos verres...

Finalement, à force de chercher et de triturer des anagrammes dans tous les sens, Beryo est sorti, (Beryo comme BERéziat YOhann, moi donc, vive l'égocentrisme).

Finalement, ce qui m'embête le plus, c'est que je ne pourrai probablement jamais déposer Beryo.org, puisque le domaine est 'réservé' par une société d'hébergement renommée aux consonnances proches. De là à parler de cybersquat...

Sommaire

Beryo, publier simplement sur le web

Expliquons le principe de Beryo, sans rentrer dans le discours technique qui caractérise l'informaticien pure souche :

Dans ce que j'ai pu voir sur Internet, j'ai rencontré deux façons de créer et maintenir un site web :

  • La première consiste à écrire des pages web avec un logiciel capable de faire de l'HTML, depuis Word jusqu'à Dreamweaver et de les transférer périodiquement sur une machine constamment connectée à Internet (un serveur). Le principal problème avec ce genre de démarche, c'est qu'elle demande un investissement en temps important pour maintenir le site car les pages évoluent sans cesse. C'est la limite des sites web dit statiques. Cette solution me paraît plutôt adaptée à des sites institutionnelles ou artistiques, évoluant peu.
  • La deuxième consiste à utiliser un système de publication de contenu (on parle de système de gestion de contenu ou CMS = Content Management System en anglais dans le texte). Il s'agit en fait d'un programme qui stocke l'information à afficher dans une base de données et qui crée les pages HTML à la demande (dynamiquement) ou si vous préférez à chaque fois qu'un internaute demande leur affichage. Les pages n'existent donc pas physiquement sur le serveur. On parle alors de site web dynamique. Cette solution est plutôt adaptée aux sites d'informations et aux portails, qui doivent être capable d'intégrer et d'afficher de grandes quantités d'informations souvent mises à jour.

Beryo appartient à la catégorie des systèmes de publication de contenu, même s'il peut être paramétré pour produire des pages statiques (pour améliorer la performance d'affichage). L'avantage de cette solution est qu'elle permet de maintenir très facilement un site, en publiant du nouveau contenu à l'aide d'une interface d'administration conviviale et en supprimant le contenu devenu obsolète d'un simple click. Les modifications sont immédiates et il n'est pas nécessaire de (re)charger les pages sur le serveur. De plus, l'application est 'intelligente' et archive automatiquement le contenu qui n'est plus d'actualité (qui a atteind sa date de péremption).

Beryo s'occupe donc de gérer et d'afficher du contenu sur Internet. Ce contenu peut-être de plusieurs types : des articles, des photos, un annuaire, des fichiers à télécharger etc. Allez, je lâche le concept à la mode : Beryo est MO-DU-LAI-RE! C'est pas forcément une innovation au regard de tous les systèmes de publication modulaires qui existent sur le web ;-) Modulaire, cela signifie qu'il existe des composants (des modules) qu'il est possible d'utiliser (ou pas) pour créer votre site. Quand vous maîtriserez Beryo sur le bout des doigts, vous pourrez même développer vos propres modules.

Sommaire

Beryo, pour réinventer la roue

C'est vrai, vous allez me dire, il y a déjà tout un tas de systèmes pour publier sur Internet et qui le font mieux que Beryo, comme phpNuke, DotClear, Spip, Xoops, Plone pour ne citer que ceux-là. Sans avoir réellement approfondi le sujet, voilà quelques éléments qui m'ont poussé à écrire Beryo (en 2003 pour replacer dans le contexte) :

  • Peu de CMS existant génèraient du code XHTML/CSS 2.0 valide (au moins en 2003).
  • La plupart génèrent du code html avec mise en forme par tableaux, ce qui entraine un code difficile à lire et des pages inutilement lourdes, au lieu d'utiliser les feuilles de style (CSS).
  • Les systèmes de type Blog me semblaient trop 'étroits' par rapport à mes besoins plus 'larges'!
  • Je n'avais pas de serveur Zope sous la main.
  • J'avais envie d'un système écrit en français.
  • J'avais envie de créer par moi-même et de construire un outil répondant EXACTEMENT à mes besoins.

"Avec Beryo, ok je réinvente la roue, mais pile-poil à la taille de ma carriole.".

Sommaire

Beryo, l'essayer c'est l'adopter

Vous n'avez pas forcément intérêt à utiliser Beryo. Beryo n'a d'ailleurs pas la prétention de révolutionner la publication sur le web. Pour commencer, Beryo s'adresse à l'internaute désireux de créer un site web. Beryo est d'autant fait pour vous que vous avez déjà quelques notions d'administration web. Si les mots suivants ne vous évoquent rien de particulier, vous devriez vous orienter vers d'autres systèmes de publication, au hasard en cliquant ici : serveur web, fournisseur d'accès, php, mysql...

Si vous avez franchi l'épreuve précédente avec succès, vous pouvez rester et répondre par oui ou non aux affirmations suivantes :

  • Votre objectif est d'avoir un site web qui vive, avec du contenu qui évolue souvent.
  • Plusieurs personnes peuvent avoir à publier de l'information sur le site.
  • Vous avez besoin de gérer différents types de données et un Blog ne vous convient pas totalement.
  • Vous avez besoin de proposer plusieurs chartes graphiques (skins) à votre site ou au minimum vous voulez avoir un design graphique unique bien à vous.
  • Certaines parties du site ne doivent éventuellement pas être accessibles au visiteur lambda, mais uniquement à des personnes autorisées nominativement (membres).
  • Vous prévoyez de créer des groupes de personnes ayant des droits différents (en terme d'accès à certaines rubriques, en terme de droit de publication etc.).
  • Vous avez besoin de statistiques de connexion des visiteurs de votre site.
  • Vous mettez un point d'honneur à ce que votre site soit accessible à tout le monde et pas seulement aux personnes utilisant Internet Explorer.
  • Vous souhaitez suivre la vie de votre site, sans pour autant ouvrir tous les jours votre navigateur (flux RSS).
  • Vous ne connaissez rien au langage html et vous n'avez pas envie de commencer aujourd'hui, mais par contre vous adhérez à l'idée que tant qu'à faire de l'html, autant qu'il soit valide!
  • Vous avez besoin de dissocier le fond et la forme, les données de la mise en page ou si vous n'en avez pas besoin, vous pensez que c'est quand même beaucoup plus judicieux!
  • Vous n'avez pas envie (ou l'argent) de payer une license pour un logiciel propriétaire de gestion de contenu.

Si vous avez une majorité de 'Oui', alors Beryo est fait pour vous. Faites-un test sur ce site de Démo!

Sommaire

Imprimé depuis http://www.xrousse.org - Le contenu de ce site est sous license Creative Commons Paternité 2.0. (http://creativecommons.org/licenses/by/2.0/fr)