• # Incremental

    Posté par . En réponse au journal L'angoisse du programmeur. Évalué à 10.

    mais j'ai du mal à me remettre au code, et je fais un blocage devant la todolist et ses dizaines de bugs.

    Laisse tomber ta todolist. Corrige les bugs qui doivent être corrigé, et fait en sorte que ta base de code soit bien testée. Au démarrage avoir une test suite solide est bien plus importante que d'avoir pleins de fonctionnalités. Tu en as besoin pour faire les fonctionnalités et avancer vite plus tard.

    Sans compter toutes ces fonctionnalités manquantes que je voulais vraiment inclure dès la première version, et qui manifestement, ne seront pas là.

    On s'en fou !

    Détermine ton ensemble de fonctionnalités minimal (on a bien dit minimal), fait en sorte qu'il soit correctement testé et release. Après c'est de l'incrément. Quand t'as du temps du t'implémente une nouvelle fonctionnalité bien définie qui est correctement testées / documenté. Et tu boucles.

    Tu n'auras jamais tout ce que tu veux, et tu risques de troquer la qualité contre les fonctionnalités ce qui n'est jamais un bon choix.

    Du coup, j'hésite. J'ai peur d'être ridicule en releasant en l'état une version imparfaite.

    Honnêtement tout le monde s'en balance que tu releases un truc imparfait ou minable. Au pire tu auras fait perdre 10 minutes à quelques personnes et tout le monde aura oublié dans un mois…

    ou que ça existe déjà en mieux ailleurs

    Alors ça en théorie si tu as passé du temps sur quelque chose c'est qu'il est utile. Si tu as raté quelque chose et qu'on te fait découvrir un projet qui répond aux même besoin fonctionnels en mieux et stable alors il suffit de jeter ton code et de te trouver un nouveau passe temps. Ça arrive à tout le monde. (Cette remarque ne s'applique pas si tu écris un CMS, un Window Manager, ou un éditeur il est de bon ton d'écrire la 500 ième variantes de ces choses).

    Peur que le logiciel n'intéresse personne, qu'on me dise que ça ne sert à rien

    Et alors ?

    Si fonctionnellement ton truc est utile alors tu auras des retours pour fixer tout les trucs pourris que tu as fait (et tout le monde en fait beaucoup) ou au moins de retour utilisateur qui te motiveront et t'aideront à te concentrer sur quelque chose.

    Vous faites quoi dans ce genre de cas ?

    Réfrène tes envies de changer le monde, défini clairement ce dont tu as besoin à minima. Release. Et continu. Tu risques quoi ? Des trucs inutiles et pas fini y'en a des milliers qui sont releasés chaque jour. Occasionnellement ca sert à quelqu'un c'est cool et c'est encore plus cool de le savoir. Rarement ça sert à plein de gens. Mais où est le problème ?