En tant qu'enseignant, je vois beaucoup de projets de passe-temps d'étudiants qui échouent. Invariablement, la raison la plus importante de l'échec est la portée excessive: le projet commence comme cette grande vision d'une chose énorme qui est trop grande pour être éventuellement achevée, de plus en plus de personnes sont amenées jusqu'à ce qu'elle s'effondre sous le poids de sa propre conception, et tout le monde laisse frustré et démoralisé.
Le meilleur remède à cela est de restreindre impitoyablement votre portée. Au lieu de dire "comment puis-je garder mon énergie suffisamment pour terminer un long projet?" vous devriez plutôt dire "comment puis-je concevoir un projet suffisamment court pour que je puisse le terminer avant de m'en lasser?"
Les événements de "Game Jam" (sortes de choses à faire un jeu le week-end) sont un excellent moyen de commencer, et ils sont parfaits pour créer de bonnes habitudes lors de la fabrication de prototypes rapides. À PIRE, vous passez un week-end à faire un jeu pourri ... vous avez probablement appris quelque chose dans le processus ... ET vous vous êtes épargné des mois de travail sur une idée qui a fini par ne pas être aussi cool que vous le pensiez à l'origine. Au mieux, vous trouvez que vous avez quelque chose de vraiment spécial et vous pouvez commencer à ajouter de petites fonctionnalités une à la fois jusqu'à ce que vous ayez un projet complet.
Sur mes propres petits projets de passe-temps, l'autre chose que j'ai trouvée qui aide est de commencer par une liste complète de toutes les tâches de développement connues qui doivent être effectuées, ordonnées et réduites afin que chaque tâche individuelle soit réalisable et testable en peut-être 30 à 60 minutes, hauts. C'est très énergisant de faire une petite tâche, de la voir fonctionner dans le jeu et de la rayer de la liste ... ce qui rend d'autant plus probable que je ferai la prochaine chose sur la liste depuis la dernière si facile, puis le suivant ... un peu comme manger des croustilles.
Autre astuce: chaque fois que vous implémentez avec succès une nouvelle fonctionnalité, effectuez une sauvegarde (ou utilisez le contrôle de code source, ce qui est fondamentalement la même chose, mais tout le monde n'utilise pas le contrôle de code source si ce n'est qu'eux qui travaillent sur leur propre projet personnel). De cette façon, si vous bousiller complètement le code à 2 heures du matin et ne pouvez pas comprendre comment le remettre dans un état de fonctionnement, le projet n'est pas mort et n'a pas besoin d'être redémarré à partir de zéro; au lieu de cela, vous revenez simplement au dernier jalon terminé et en cours de fonctionnement, puis réessayez.