Manifeste du développement web fluide

Vous travaillez seul ou en petite équipe ? Les sites web que vous créez sont très différents les uns des autres ? Vous n'avez pas en permanence des projets de développement de 3 mois de boulot.

Si vous êtes dans un de ces cas, cela peut poser problème. A peine vous connaissez un logiciel ou un framework qu'il a déjà changé de version... Ou le contraire, vous recommencez toujours tout à zéro. Vous êtes tiraillé entre réutiliser des composants pour gagner du temps et refaire pour le plaisir. Et parfois le temps gagné n'est pas si important : trop de temps à comprendre comment ça marche, trop de temps à débuguer.

1) Pas de bases de données pour des recherches de données simples

Les bases de données sont très puissantes. Vous pouvez chercher, filtrer et ordonner des miliers de résultats à une vitesse fulgurante.

Mais cette puissance a un coût : installer, créer des tables, configurer. Votre attention est partagée entre votre éditeur et votre base de donnée.

Pour palier à cela, vous pouvez stocker dans des fichiers. Vous pouvez stocker en html, en .ini, en json et en PHP par exemple. Vous pouvez dans certains cas remplir votre fichier à la main.

2) Réfléchir à deux fois avant d'ajouter une fonctionnalité

Le coût des fonctionnalités devient exponentiel avec le temps : conflits imprévisibles, difficulté à se replonger après un certain temps. Et parfois, elles ne sont jamais utiles. Vous aurez toujours le temps d'ajouter des fonctionnalités. Gardez votre code léger, il n'en sera que plus souple le moment voulu.

3) Eviter les frameworks, préférez les compétences durables

Les frameworks peuvent évoluer très vite. Si on ne bosse pas assez dessus, il faut tout réapprendre à la version suivante. Les frameworks peuvent ralentir votre site, alors que la vitesse de chargement est toujours essentielle.

On passe parfois trop de temps à configurer. Et si ce qu'on cherche n'est pas standard, on peut vite y passer un temps fou.

Un mauvais programme sur un framework est toujours un mauvais programme. Utilisez donc tout le temps à apprendre un framework à mieux programmer. Etudiez les designs patterns et les bonnes pratiques.

L'inventeur du PHP lui-même, Rasmus Ledorf recommande de ne pas utiliser de framework (en Anglais).

4) Préférez la création à la configuration à outrance

Configurer ne vous aidera pas à devenir un ninja du développement. Inversément, tout réinventer peut être couteux. Donc, réflechissez bien avant d'utiliser un outil. Il est parfois plus rapide de faire son propre programme que de personnaliser un programme qui n'est pas le sien.

5) Rendre évolutif ce qui mérite de l'être, ni plus ni moins

L'évolutivité d'un programme permet de s'adapter. D'un autre côté, l'évolutivité peut être coûteuse. Il faut alors se poser les questions : qu'est ce que ça fait si on décide que telle chose ne changera plus jamais ? Est-ce si grave ? Et si on doit changer, quelles sont les alternatives. Et finalement, si le programme doit vraiment évoluer, combien de temps je vais y passer si ce n'est pas très évolutif ?

Parfois tout refaire est plus rapide que de changer un vieux programme complexe (même commenté). Il faut trouver un juste milieux.

6) Rendre votre code évident à comprendre

Si votre programme est simple à comprendre, les commentaires sont moins nécessaires. Vous pourrez vous y replonger facilement après de longs mois.

Le CMS Fluid

En suivant ces principes, j'ai créé un CMS tout simple. Vous pouvez découvrir le CMS Fluid.