Tout d'abord, il y a des projets et des projets. Si vous essayez une technologie ou une bibliothèque, ou autre chose, vous créez probablement un projet dans votre IDE, découvrez si cette chose vous intéresse ou non, puis supprimez votre projet. C'est bon, tout le monde fait ça.
Un autre type de projet est de vrais logiciels / sites / etc., qui sont des affaires, où ces «projets», fichiers, programmes ne sont que des outils, et développer des choses aussi complexes nécessite de la motivation et des objectifs :
- ce que vous développez (site web / éditeur de texte / application mobile / ...)
- pour quoi en avez-vous besoin (gagner de l'argent, acheter de nouvelles technologies / contribuer à l'open source / ...)
- quand feriez-vous (combien de temps vous consacrez votre projet, combien de temps prévoyez-vous de le faire)
Ce que vous développez doit être nouveau . Si vous souhaitez créer simplement un autre éditeur de texte parce que vous pensez qu'une fonctionnalité que vous demandez est manquante, vous n'avez probablement pas besoin de le faire. Il existe des centaines d'outils open source, contribuez à l'un d'eux.
Même si vous créez un petit outil à usage unique comme un script, vous devez indiquer les éléments répertoriés, il serait plus facile de résoudre le problème lui-même.
Si vous êtes coincé à écrire du code (par exemple, réécrivez massivement votre code), vous n'avez probablement pas assez d'expérience pour le faire. Prenez un bon livre sur l'ingénierie logicielle, votre plate-forme (mac / web / etc), lisez le code écrit par des développeurs plus expérimentés qui font des choses similaires. Il y a beaucoup d'endroits pour le faire maintenant (github, code google, blogs de programmation, stackoverflow).
N'essayez pas de résoudre un problème très complexe (par exemple, écrire un compilateur ou un système d'exploitation) à partir de zéro, décomposez-le d'abord en tâches plus petites, le plus souvent, quelqu'un a déjà créé des bibliothèques qui vous aident à résoudre votre problème.