[BaB] Jour 8 – 9 – semaine creuse

L’intervention visant à implémenter un système de fichiers différent d’origine a été planifiée ce vendredi, ce qui fait que depuis j7 je suis bloqué sur tout ce qui touche les fichiers, dans le cas de ce projet, presque tout.

Malgré tout j8 n’est pas resté vide. Ce qui touche la partie dev utilise le nœud complet, une page d’attente a été installée sur le nœud en prod et quelques fichiers de style ont étés défini un minimum.

Le catch-all a été corrigé, le système d’erreur a été continué gérant 204 et 404 et le login il ne lui manque presque que son design qui arrive, car oui un infographiste se joint à l’équipe et prépare les premiers designs 🙂 !

La gestion de l’authentification a été sortie de la base web et devient module individuel tout en gardant une division concernant la couche db.

712_g

Divers petites fonctions ont étés améliorées, complétées et terminées. On pourra bientôt tester.

Donc aujourd’hui un système DRDB+NFS se met en place sur les serveurs et je dois donc revoir une petite partie de l’architecture de départ/visée.

711_g


t+=5h=56h;

[BaB] Jour 7 – le noeud du problème

La base est désormais capable d’incorporer le contenu dans un corps, belle avancée !

Le reste a surtout été une correction et amélioration de la config système et des serveurs du noeud web. Ainsi le domaine beabuzz.be est fonctionnel et affiche une phrase que j’espère remplacer rapidement par le contenu d’attente.

Ainsi un espace de développement a été mis en place sur un serveur pour continuer de construire ce projet.

De l’aide infographique rejoint les rangs et constituera la première vague de tests designs et mise en place des règles de contenu.

Programme de la suite

– Peut-être la mise en place du nouveau système de fichier (NFS) et modification du système en rapport
– système de connexion unique
– utilisation du noeud web pour le dev pour tester en condition totale
– on verra ce qui se libère si ça ne se passe pas comme prévu…


t+=3h30=51h; //+ 2h30 de réunion

[BaB] Jour 6 – le bout du tunnel

Le premier jour, Dieu créa la page blanche.

Le deuxième jour, il le voulait pas que tout le monde y accède et créa la sécurité.

Plein d’humour le troisième jour il créa les insectes mangeur de pages, mais ils furent confronter à la sécurité.

Un peu sadique sur les bords, le quatrième jour il inventa les urls propres, ainsi le labyrinthe gêna les autres insectes borgnes et ne trouvent pas la page de Dieu. Et s’ils la trouvent ils sont confrontés à la sécurité.

Le cinquième jour, dans sa grande bonté, il ne voulait pas que ses amis se perdent et définit une page par défaut. Elle est blanche immaculée et tout le monde peut la voir derrière sa vitrine illuminée.

Le sixième jour Dieu trouvait sa page monotone et dit « Que le contenu soit ! » Et au delà du long tunnel qu’est le flux sacré, de la lumière naquît une page contenant la parole divine : « Test avec que du texte simple « . Évidemment seul les amis de Dieu peuvent passer la sécurité et éviter les insectes borgnes et mangeur de pages !

Vous l’aurez peut-être compris, j’ai fini le parcours du flux et affiché un contenu de niveau 1, ainsi partiellement toute la classe spécialisée est écrite.

Le niveau 1 définit un texte sans contenu ni mise en forme, mais contenant la base des informations basiques.

Programme de la suite

– Donner un corps au contenu, ainsi que définir toute la théorie concernée.


t+=2h=42h; //Samedi, corrections cf j5
t+=5h30=47h30; //Panne du net dju !

[BaB] Jour 5 – fichier ou db ?

Journée intense de réflexion dû à la découverte d’un problème de réplication. Je n’en dis pas plus pour l’instant, j’attends d’avoir de plus amples renseignements techniques.

Sinon, le routage et la classe mère des modules ont été corrigées légèrement.

La récupération des informations d’une page également via le travail d’hier.

Le chargement du contenu a également fait l’objet de longs moments de solitude cérébrale… mais du bon en est ressorti quant à un début de procédure.

Le contenu bénéficiera d’une version dev|prod, de multilinguisme et peut-être de versions.

La configuration a été restructurée, saleté de serpents (Persil va coucher). 2 stockages généraux ont été fusionnés et sauvés à des endroits plus stratégiques.

La gestion d’erreur se met en place plus proprement.

Programme de la suite

– une liste de corrections a effectuer, ce qui va changer la donne sur différents points, principalement la classe mère des modules et les attributions de valeurs de départ + fallback.
– générer une configuration de page en db et contrôler la suite du flux de sortie.


t+=6h=40h; //Retard dû au blocage, dju !

[BaB] Jour 4 – faire et défaire…

La suite du développement du flux d’affichage d’une page suit son cours, car en fait il s’agit de ça.

Je suis donc toujours en train de coder la classe spécifique et patatra le serpent c’est co mordu la queue.

C’est en codant l’analyseur d’url que je me suis rendu compte que j’avais besoin d’une infos non disponible et que pour l’avoir on avait besoin de ce que je faisais… ça tourne légèrement en rond…

Ni une, ni deux, je met dans dans la classe de stockage, elle est faite pour ça après tout, du coup la classe d’environnement ne sert plus à rien, je tape tout dans l’index et la vire. Bam, je corrige, adapte, améliore encore un peu l’index et on revient enfin à une situation stable 🙂 Ça fait toujours plaisir.

De là, j’ai pu avancer dans le routage et le finir (non testé) et les théories et décisions d’architecture se mettent en place soigneusement.

Le fichier de conf apache a lui aussi été revu prévoyant les 2 cas d’utilisation possible de la base web.

Programme de la suite

– Finir la classe spécifique, oui encore et toujours elle. Il s’agira ici de tester une conf par défaut qui deviendra celle du site mère.
– Ensuite il y aura la gestion du contenu a afficher.


t+=7h=34h;

[BaB] Jour 3 – on prend les mêmes et on recommence

Ce troisième jour a été plus souriant que le précédent, bien que la solution des sessions n’a pas été évidente.

Dans l’ordre donc, j’ai fini le système des sessions PHP sous couchdb ! Un bon pas de fait 🙂

PHPillow est passé en 0.6-beta et sous ‘pear’ donc j’ai changé cette partie ainsi que le chargement des classes. Merci spl_*.

Globalement il y a eu quelques adaptations dans l’index, env et spec ainsi que des avancements.

L’architecture a été modifiée pour profiter de la base correcte originale au lieu de rajouter un sous dossier qui servait à la même chose au final. Bref ne pas refaire ce qui est fait et devenu ‘standard’ pour cette base web. 🙂

Le fichier de conf d’un site est fait (premier jet). Ce qui nous donne la config de ce site, la liste des langues et l’initialisation des traductions.

Ça prend forme tout doucement. C’est surtout l’architecture qui s’affine selon les particularité de BaB et qui demande à revoir de manière encore plus générique la base web.

Programme de la suite

– finir la classe spécifique, qui comprend : gestion des contenus, authentification et infos du site à afficher. Ça va surtout être de l’architecture dans un premier temps.


t+=9h=27h;
lc=1366;

[BaB] Jour 2 – terre inconnue

Fin de cette seconde journée… D’abord qu’est-ce qui a été fait selon la planification de hier :

La class env est faite, avec l’index et la spécifique elles ont été corrigées.

Le debug est fini pour la première partie, jusque là ça va bien.

Couchedb est installé… ça c’est du sujet, j’ai installé la dernière version sur le serveur mais une dépendance posait problème : Erlang, à 1 version près. C’est du chipotage, long, mais j’y suis arrivé 🙂 !

Les sessions sont presque ok, mais un problème du côté des vues couchdb bloque la situation et m’empêche de tester.

Donc demain, en priant qu’on m’ait répondu, je termine les sessions et la suite de la classe spécifique.

Également, divers corrections ont étés réalisées ici et là pour finir les adaptations de certaines parties, notamment au niveau des fichiers d’en-tête et pied de document.

Programme de la suite

– finir les sessions
– finir la classe spécifique, cela comprend : lister les langues, initier la traduction, gestion des contenus, authentification et infos du site à afficher.


t+=9h=18h;

[BaB] Jour 1 – rien ne va plus !

Que dire de cette première journée de travail sur BaB ?

L’index de la base a été complètement désossé, il n’en reste pas grand chose. Principalement dû au fait qu’une classe d’environnement a pris le relai, elle fait office d’initialisateur de contexte et de conteneur des infos récupérées.

Une classe spécifique a été créée également, permettant de n’éditer qu’un seul fichier pour rendre compatible la base avec ses besoins. Ceci en complément du fichier de config principal écris en YAML.

Le reste de l’existant a été adapté aux nouvelles classes, méthode de fonctionnement et stockage des infos.

D’un autre côté, les domaines ont étés dépannés, une erreur dans l’ip au milieu du fichier zone ça n’aide pas.

La class d’environnement doit encore être remaniée pour les différentes utilisations possibles. Ceci au niveau de la config au niveau du sous domaine.

En fait il y a plusieurs niveau de configuration :

– la nouvelle configurant la base web
– celle du contexte (dev, prod) principalement au niveau de la connexion db.
– celle du sous-domaine choisi pour le module et contenu par défaut à afficher en plus des styles et javascripts souhaités.

C’est cette dernière config qui doit être revue et rendue spécifique.

Programme de la suite

– finir la class env
– finir le debug de la prog aveugle du jour
– installer couchdb sur le premier serveur db + outils
– sessions sous couchdb
– si j’ai le temps commencer à préparer la classe spécifique outre les sessions.


t+=9h=9h;

[BaB] Top départ

Be a Buzz, pour ceux qui ne le savent pas encore est un projet en préparation depuis presque une année visant à développer un système de construction de site web, via un site, sans besoin de connaissance préalable.

Dès demain le développement commence après cette année de recherches et tests.

Plusieurs sites finis ont permis la finalisation de la pré-base, notamment comitards.be, celle-ci sera remaniée de manière plus flexible et configurable, tel une distribution, au vu du projet différent Be a Buzz. Ainsi la même base pourra servir pour un site dit ‘simple’ ou ‘complexe’ comme pour Be a Buzz.

Qu’est-ce que la base web ?

Il s’agit de la couche programmée de mes sites. Un gestionnaire, un aiguillage, un assembleur, constructeur de page, autant de noms pour illustrer son but : fournir une page selon la demande. Il ne s’agit ici que de la mécanique générale, pas du fonctionnement de chaque page.

Le principe est simple : selon une demande, contacter les ‘parties’ concernées, assembler le résultat et fournir la page construite.

Je vais écrire un article historique tiens.

La différence entre la version actuelle de la base et celle à venir ?

Principalement le côté configurable ainsi que le côté ‘contexte’ d’utilisation. Évidemment une kyrielle d’améliorations prévues seront intégrées.

Comment tout va se dérouler ?

Dans un premier temps je vais remanier la base web : la désassembler, nettoyer, la rendre configurable puis la rassembler.

Ensuite, la configurer spécifiquement pour Be a Buzz et coder les modules requis pour finir la mise en place de la base web (module d’environnement principalement).

Enfin, le développement proprement dit de Be a Buzz commencera. Je commencerais par les sous-domaines de gestion (mini buzz), nécessaires à l’activation du premier Buzz.

Ce blog retracera les avancements du projet jour après jour, tel une historisation de mes aventures durant le développement.