Sí, es posible, pero es más difícil que ir a la escuela, porque dependes de ti mismo para la calidad de tu educación.
Hay una lista ilimitada de recursos gratuitos. Quizás seguir los cursos de Coursera o Open Courseware puede ser un comienzo. La programación es solo un aspecto del desarrollo. También necesita saber sobre sistemas operativos, redes, algoritmos, bases de datos, … para ser competente. Hay recursos gratuitos para todos los temas importantes.
Con “gratis”, podría significar libre como en libre discurso. Encontrará suficiente software libre para convertirse en un programador competente. Pero si quiere decir gratis como en cerveza gratis, el software corporativo también se ofrece sin cargo. Visual Studio de Microsoft, por ejemplo, tiene una edición Express gratuita.
- ¿Por qué la gente de negocios siempre trata de fastidiar a los desarrolladores de software?
- ¿La creación de mi propio lenguaje / compilador me hace mejor en el desarrollo de software? Si es así, ¿cómo?
- Si su lista de contactos contiene nombres de contacto en inglés y tailandés, ¿qué algoritmo utiliza normalmente para ordenar la lista de contactos?
- ¿Qué es la artesanía de software?
- ¿Han encontrado algún psicólogo o neurocientífico la conexión en el cerebro entre la afinidad de desarrollo de software y la afinidad musical?
Comience con lo básico. Use una interfaz de línea de comando y un editor de texto en lugar de un IDE. Haz todo tú mismo al menos una vez, para que entiendas cómo funciona.
Y, por supuesto, una buena parte de la autodisciplina es indispensable. Además, construye algo. Hazlo funcionar. Haz que alguien más trabaje con eso. La retroalimentación es invaluable.
¡Que te diviertas!