• [^] # Re: Théorie bancale

    Posté par . En réponse au journal Conseils aux libristes, 2ème partie: résister à la tentation de la réécriture à partir de zéro. Évalué à 4.

    Oui enfin DLFP c'est simple et petit à réécrire. Ca fait pas grand chose, c'est assez bien défini, et dans tout les cas il y a très peu de fonctionnalités exposées aux utilisateurs. Encore une fois ce n'est pas un jugement de valeur, c'est juste typiquement le type de projet qui se réécrit "facilement".

    En dehors de la majorité des projets libres qui ont le temps de se pignoler (par ce que c'est plus rigolo de réécrire en se disant que ca ira mieux) et où la base de code est suffisamment petite, simple et peu mature pour que ca ait un vrai impact (le libre compte plus de libs/utilitaires que de "vraies" applis); le vrai risque de la réécriture c'est que généralement quand on en arrive là c'est que la navire prenait déjà l'eau depuis un bon moment, et que les problèmes sont souvent profond et ne vont pas disparaître par magie avec une implem V2. C'est effectivement plus simple au début, puis quand on doit supporter absolument toute la compat avec l'ancien code, arriver au même niveau de features et de stabilisation on retombe rapidement sur le même bordel, le tout avec des régressions pour les clients pendant des mois/années. Avant de décider de réécrire, il faut souvent faire des choix drastiques concernant le produit. Si on est arrivé à absolument avoir besoin d'une V2 c'est aussi souvent que ces choix n'ont jamais été fait avant et qu'ils vont être très très douloureux tant pour les devs que les utilisateurs.

    Si c'est juste changer l'archi / l'implem d'un ou quelques modules où l'on identifie très bien les problèmes, c'est pas une réécriture et ca devrait déjà être fait depuis longtemps.