En primer lugar, hay proyectos y proyectos. Si prueba alguna tecnología o biblioteca, o algo más, probablemente cree un proyecto en su IDE, descubra si esto es interesante para usted o no, y luego elimine su proyecto. Está bien, todos hacen esto.
Otro tipo de proyecto es el software / sitios / etc. reales, que es el negocio, donde esos 'proyectos', archivos, programas son solo herramientas, y desarrollar cosas tan complejas requiere motivación y los objetivos :
- lo que desarrollas (sitio web / editor de texto / aplicación móvil / ...)
- para qué lo necesita (ganar dinero, adquirir alguna tecnología nueva / contribuir al código abierto / ...)
- cuándo lo haría (cuánto tiempo dedicará su proyecto, cuánto tiempo planea hacer eso)
Lo que desarrolles debería ser nuevo . Si desea crear solo otro editor de texto porque cree que falta alguna característica que demanda, probablemente no necesite hacerlo. Hay cientos de herramientas de código abierto, contribuyen a una de ellas.
Incluso si crea una pequeña herramienta de un solo uso como un script, debe indicar las cosas enumeradas, sería más fácil resolver el problema en sí.
Si está atascado en escribir código (por ejemplo, reescribir masivamente su código) probablemente no tenga la experiencia suficiente para hacerlo. Tome un buen libro sobre ingeniería de software, su plataforma (mac / web / etc.), lea el código escrito por desarrolladores más experimentados que hace cosas similares. Hay muchos lugares para hacerlo ahora (github, código de google, blogs de programación, stackoverflow).
No intente resolver un problema muy complejo (por ejemplo, escribir un compilador o un sistema operativo) desde cero, primero descomponerlo en tareas más pequeñas, generalmente, alguien ya ha creado bibliotecas que lo ayudan a resolver su problema.