Il y a quelque temps, j'ai écrit un très petit script python qui vérifiait périodiquement un flux xml pour de nouvelles entrées et alertait l'utilisateur de nouvelles entrées lorsqu'elles étaient présentes. J'ai écrit cela pour moi-même, il s'agissait donc essentiellement d'un programme basé sur une console que n'importe qui à l'aise avec une interface de console aurait pu utiliser.
Après un certain temps, j'ai décidé que cela pourrait être plus utile à d'autres personnes et j'ai commencé à le ranger, à désinfecter les entrées, à supprimer les bugs. Il m'est venu à l'esprit que parce que j'avais écrit le script, je savais comment l'utiliser de manière efficace, précise, etc. D'autres pourraient ne pas, alors j'ai commencé à ajouter une interface graphique. Cela a commencé comme un menu simple, puis s'est étendu à une interface graphique plus complète avec à la fois une interface et un menu d'options. J'ai ensuite ajouté les préférences utilisateur stockées et également le stockage des flux xml précédemment recherchés pour accélérer les recherches répétées.
J'ai ajouté la journalisation pour aider à déboguer l'application en cas de problème, j'ai mis l'application à la dernière base de code python stable disponible pour la plate-forme que j'ai choisie et amélioré les fonctionnalités de dialogue.
J'ai corrigé un bug et commenté clairement mon code, et pourtant j'ai encore des choses à faire pour améliorer l'application avant de la mettre à la disposition des testeurs alpha. C'est loin de mon script original de 20-30 lignes. Ce que je prévoyais me prendrait juste une heure ou deux pour passer de la validation de principe à un programme d'utilisation acceptable a pris 10 à 20 fois cela. (Je suis toujours un noob, et les trucs me prennent beaucoup de temps, mais quand même ....)
Comment savez-vous quand arrêter d'ajouter / peaufiner / réparer des trucs et laisser votre bébé ramper à l'air libre?