• [^] # Re: Implémentation

    Posté par . En réponse au journal Pijul, version 1.0 en approche. Évalué à 5.

    Est-ce le principe en lui-même où ça n'a rien à voir ?

    Il y a plein de raisons:

    • d'abord, aucun des auteurs n'a jamais été à plein temps dessus. C'est moi qui en ai écrit le plus gros morceau, et j'avoue que j'ai été peu soutenu par mes employeurs successifs, et carrément méprisé par le dernier en date. Pour faire court, un collègue m'a promis un poste permanent à l'Inria, donc j'ai lâché mes autres opportunités pour y aller, et au moment où l'Inria devait pérenniser l'équipe, il l'a déménagée dans une université de merde en Irlande, pour des raisons totalement absurdes.

    • le proto a demandé d'écrire une masse de trucs horribles à débugger, simplement pour parvenir en pratique à la complexité théorique. Un des pires a été un moteur de bases de données avec compteur de références transactionnel, c'est-à-dire que tu peux cloner des bases de données en temps O(log n), et si tu débranches la machine avant de commiter la transaction, tout peut reprendre sans avoir rien à faire quand tu reviens.

    • un système asynchrone est exponentiellement plus compliqué à concevoir qu'un système synchrone comme Git, parce qu'il y a une quantité de scénarios incroyable.

    • il a végété un bon moment parce qu'il ne passait pas du tout à l'échelle, et que j'ai pensé à l'abandonner pour cette raison. J'ai dû le réécrire de zéro quand j'ai trouvé la solution, parce que tous les algos ont changé.

    • l'envie de laisser tomber a été renforcée par le peu de contributeurs, peut-être parce que peu de gens ont envie de s'investir dans des maths, et ceux qui ont envie n'ont pas envie de les implémenter et de débugger.