Sí, claro que es posible. Lo hice antes incluso de tener acceso a internet. Como mínimo, necesitará lo siguiente:
- Hora
- Motivación
- Paciencia
- Alguna fuente de información (libros o internet).
Creo que si te falta alguno de estos, fallarás.
Lo más importante de cualquiera de estas cosas es la motivación . Si no tiene motivación, no tendrá tiempo para trabajar en una aplicación o para encontrar información. Si no tiene motivación, no tendrá la paciencia para depurar el código. Si no tiene motivación, no querrá repasar toda la información técnica que existe tratando de descubrir todas las herramientas, la sintaxis del lenguaje, los algoritmos, las estructuras de datos, etc.
Entonces, ¿estás motivado? ¡Genial! Tómese un tiempo y comience a pensar qué tipo de aplicaciones desea crear. Probablemente quieras comenzar con algo específico, como los juegos de Android o quizás quieras crear tu propia aplicación web de algún tipo. Eso puede ayudarlo a decidir qué idioma y qué marcos aprender. ¡Todo lo que puedo decir sobre esto es, elige algo y apégate a él! No tengas la tentación de saltar aprendiendo diferentes lenguajes y marcos al principio porque el otro se ve más brillante que lo que estás haciendo. Estarás estancado haciendo esto infinitamente y nunca crearás nada.
- ¿Por qué es difícil entender la computación cuántica?
- ¿Dónde puedo aprender el origami?
- ¿Qué cosas malas nos enseñan en las escuelas?
- ¿Cuál es la diferencia entre estudiar para aprobar y estudiar para obtener conocimiento?
- ¿Es malo que esté tratando de aprender demasiadas cosas a la vez?
Una vez que realmente domines un idioma, domina las herramientas y los marcos con los que comenzaste y creas una aplicación completamente funcional, ENTONCES diría que siéntete libre de comenzar a experimentar con otras cosas. Tendrás una base sólida sobre la cual trabajar para ayudarte a elegir la próxima cosa y también la recogerás mucho más rápido y más fácil de lo que lo harías si comenzaras a saltar desde el principio. La verdad del asunto es que, sea cual sea el idioma o los marcos que elija para trabajar en una aplicación, generalmente puede hacer que funcionen para cualquier cosa. Algunos podrían ser más adecuados para lo que estás haciendo y no elegiste el ideal, ¡pero está bien! Pasar por el dolor de hacerlo funcionar te ayudará enormemente. Es un problema común que los desarrolladores tienen que enfrentar y aprender a trabajar con lo que tienes es una habilidad muy útil.