J'ai forké ZdS

a marqué ce sujet comme résolu.

Oui, c'est fait, premier vrai fork fonctionnel. Je vous propose un petit retour d'expérience comme je l'avais promis à Kje.

Le projet : DansTonCube.fr

Présentation

Je suis actuellement le développeur d'un site web d'une équipe de joueurs de Minecraft spécialisée dans l'architecture (la NewHeaven). Très souvent en contact avec le responsable de la communication, il m'a parlé d'un projet qui lui trottait dans la tête depuis un moment : un site francophone dédié à l'architecture sur Minecraft. C'est là que DansTonCube (DTC) est né.

Le site est encore en bêta, par manque de temps je n'ai pas pu encore tout faire proprement.

Pourquoi ZdS ?

Les fonctionnalités nécessaires étaient les suivantes :

  • Un système de news où tout le monde peut suggérer un article (et donc de la validation et du travail "collaboratif");
  • Un système de forums ;
  • Un système de connexions avec un espace membres.

Les fonctionnalités intéressantes qu'ils seraient bien d'avoir :

  • Un système de tutoriels avec vidéos si possible ;
  • Un système de téléchargements de fichiers avec validation (des maps Minecraft) ;
  • Un espace pour chaque équipe.

Bref, ZdS c'est imposé pour les 4 premiers points, les deux autres étant à développer mais non essentiels.

Retour d'expérience

Les gros problèmes

Le plus gros problème fut au niveau du front (n'y voyez pas une attaque, je vais me justifier). Voici ce qui m'a vraiment gêné par ordre de plus au moins critique:

  • Le SCSS est très mal variablilisé. Les couleurs c'est presque tout en dur dans le code. J'y suis allé à grands coups de sed mais ce fut très douloureux et j'ai perdu quelques cheveux au passage.
  • La doc d'installation est mal documentée, voire fausse (l'installation de NPM/node sur Debian par exemple) ou absente sur certains points (Sorl, Nginx). J'ai la chance d'avoir accès aux serveurs de ZdS ce qui m'a vraiment aidé pour la config, je ne sais pas comment j'aurai fait autrement.
  • On a un problème de documentation sur la création d'un projet. J'ai du regarder sur la preprod au niveau des groupes, des catégories, etc. Il faut mieux expliquer comment les choses fonctionnent au départ (quelles fixtures charger, comment sont géré l'ordre des catégories et comment les créer, etc.
  • L'organisation des fichiers SCSS qui n'est vraiment pas naturelle (merci grep).
  • Le front n'est pas documenté. On l'a déjà dit de nombreuses fois mais c'est quand on a besoin de toucher à la page d'accueil qu'on se rend compte qu'il manque des trucs. Assez pénible quand on a l'habitude de travailler avec Zurb Foundation et Bootstrap qui sont très bien documentés.
  • Le script de déploiement n'a pas fonctionné chez moi et n'est pas commenté. J'ai fais ça très salement.

Les autres problèmes

J'ai trouvé une dizaine d'autre bugs dont la majorité est reportée sur GitHub mais on peut également noter que :

  • Le Markdown n'est pas directement documenté sur le site ;
  • Le fichier topbar.py` est d'une violence, faut vraiment le revoir. De plus l'organisation des catégories des tutoriels est merdique et ne semble pas fonctionner (c'est connu de mémoire) ;
  • https://github.com/DansTonCubeFr/danstoncube.fr/issues/7 .

Autres remarques

  • Ça tourne très bien sur PostgreSQL (cc @SpaceFox) ;
  • pandoc c'est chiant et *très long à installer (75 minutes sur un VPS OVH) ;
  • Ça tourne très bien. Le premier jour, avec ~40 personnes sur le site, j'avais que 700Mio de RAM utilisée. C'est cool.

Pour résumer : il faut revoir pas mal de trucs sur le front et la doc d'installation.

Objectifs futurs

Refaire le design

Actuellement j'ai changé les couleurs, les logos et la page d'accueil. C'est moche mais je ne suis pas dev front. On espère avoir quelqu'un qui nous referai ça (si vous êtes intéressé, MP moi, ça serait rémunéré).

Ajout de modules

Le plus gros travail ça va être l'ajout de modules (partie téléchargement et partie équipes). Je devrai faire quelques PR pour faciliter ça mais ça, c'est pas pour tout de suite !

Voilà, j'espère que ce petit retour va permettre de faciliter d'autres forks !

J'ai tapé ça au km, j'espère qu'il n'y a pas trop de fautes mais notime aujourd'hui !

EDIT (11/01/15 à 18h47):

J'ai oublié ceci :

  • L’organisation des groupes n'est pas documentée (gestion des droits de validation et de modération) ;
  • Il serait cool d'avoir un groupe relecteurs qui ne puisse pas publie un contenu non publié mais qui à le droit de faire des modification sur ce qui est publié/en validation non réservé et de faire une demande de mise à jour.
+10 -0

Merci beaucoup pour ce retour, c'est très intéressant et nous donne plein de pistes pour améliorer tout ça.

N'hésite pas à faire des PR sur ce que tu peux corriger (même si ça consiste à "dégager un fichier de doc entier parce qu'il est faux" !).

Quelques retours :

Le script de déploiement n'a pas fonctionné chez moi et n'est pas commenté. J'ai fais ça très salement.

En fait y'a 2 astuces :

  • Il ne fonctionne jamais la première fois, parce que c'est un script de mise à jour. Idem, il ne fonctionne pas correctement quand il a été mis à jour pendant la release.
  • Il a été développé plus ou moins à l'arrache et n'a jamais été finalisé. Du coup il part sur un certain nombre de présupposés pas vraiment documentés…

Le fichier topbar.py

Je confirme : j'ai voulu le commenter quand j'ai commencé ma PR de commentaires, et j'ai rien compris.

Ça tourne très bien sur PostgreSQL (cc @SpaceFox) ;

Je n'en doutais pas une seule seconde :) Si on tourne sous MySQL, c'est d'abord pour un problème de compétences internes, et ensuite pour un problème de performances (sisi).

Cela dit si tu mets un Munin (ou équivalent) en place sur ton site, je serai intéressé par les chiffres, pour comparer avec ZdS.

Gros +1 (gratuit, et un peu naïf) envers le manque de documentation du front (question organisation, j'ai pas les compétences pour juger) : la doc actuelle est pas bien foutue du tout et n'explique pas grand chose au delà de l'instalation. Puis perso, je sais même pas dire comment on peut faire pour y contribuer.

Petit erreur dans le coin, c'est sans doutes lié à une variable qui manque. Dans le bas des forums, si on est pas connecté, on voit :

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.

L'emphase est de moi, mais sur le site danstoncube.fr ça la met mal …

+1 -0

Merci des retours, je vais corriger ça rapidement mais le temps me manque !

@Eskimon : d'ici quelques semaines (2 ou 3) je vais faire un autre retour plus basé sur l'expérience utilisateur.

+1 -0

Je vais poster un message en zone staff pour avoir des retours mais il y a eu quelques imprévus dans le staff qui ont fait que le site a stagné pendant 1 mois.

+0 -0

Le projet est mort suite à un gros manque de motivation de l'équipe. Initialement composé de 4 personnes, 1 a quitté le navire quelques jours après le lancement du site, une autre pour les problèmes de santé. Devant le manque de motivation des 2 personnes restantes j'ai préféré me désengager du projet (qui de toutes façons allait mourir à petit feu vu la motivation) et m'investir sur des projets plus intéressants.

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte