Prima di tutto, ci sono progetti e progetti. Se provi qualche tecnologia o libreria o altro, probabilmente crei un progetto nel tuo IDE, scopri se questa cosa è interessante per te o meno, e poi cancella il tuo progetto. Va bene, lo fanno tutti.
Un altro tipo di progetto è vero software / siti / ecc., che è business, dove quei "progetti", file, programmi sono solo strumenti, e lo sviluppo di cose così complesse richiede motivazione e gli obiettivi :
- cosa sviluppi (sito web / editor di testo / app mobile /...)
- per cosa ti serve (guadagna, raccogli alcune nuove tecnologie / contribuisci all'open source /...)
- quando faresti (quanto tempo dedichi il tuo progetto, per quanto tempo hai intenzione di farlo)
Ciò che sviluppi dovrebbe essere nuovo . Se vuoi creare solo un altro editor di testo perché pensi che alcune funzionalità richieste non siano disponibili, probabilmente non hai bisogno di farlo. Esistono centinaia di strumenti open source, che contribuiscono a uno di essi.
Anche se si crea un piccolo strumento monouso come uno script, è necessario specificare le cose elencate, sarebbe più facile risolvere il problema stesso.
Se sei bloccato a scrivere codice (ad esempio, riscrivi in modo massivo il tuo codice) probabilmente non sei abbastanza esperto per farlo. Fai un buon libro sull'ingegneria del software, sulla tua piattaforma (mac / web / etc), leggi il codice scritto da sviluppatori più esperti che fa cose simili. Ci sono molti posti in cui farlo ora (github, codice google, blog di programmazione, stackoverflow).
Non provare a risolvere un problema molto complesso (ad es. scrivere un compilatore o un sistema operativo) da zero, prima decomponilo in compiti più piccoli, spesso, qualcuno ha già creato librerie che ti aiutano a risolvere il tuo problema.