¿Cuál es la mejor manera de aprender a codificar sin entrenamiento formal?

La cosa número uno que puedo recomendar es actuar. Vas a luchar al principio. Todos lo hacemos cuando aprendemos algo nuevo.

Haz un compromiso y apégate a él, no importa lo cansado que estés. Pero tampoco te quemes. Construye lentamente para que se convierta en parte de lo que eres. Establezca un horario para trabajar en algo que haga avanzar su meta todos los días. Y asegúrese de dejar algo de motivación para comenzar de nuevo al día siguiente. Recuerdo que cuando estaba escribiendo, una técnica de motivación muy buena era terminar siempre la escritura de cada día en medio de una oración. Al no completar una oración, tenía una motivación extra para volver a ella al día siguiente.

Son las pequeñas decisiones diarias que tomamos las que tienen el mayor impacto a lo largo del tiempo. Elegir encender su computadora y escribir un código es la acción inicial que lo llevará a gastar de 5 minutos a varias horas para resolver un problema, implementar una nueva función y, en general, mejorar sus habilidades.

También querrás hablar con otros y seguir lo que hicieron. Unirse a grupos de Meetup y construir relaciones. Esa interacción social es muy poderosa.

Y si desea una forma de aprender a codificar mientras conduce o hace ejercicio, considere la posibilidad de suscribirse a uno o más podcasts. Presento un podcast llamado Take Up Code en iTunes y Stitcher que explicará temas fundamentales utilizando ejemplos cotidianos. No puedo leer el código en un podcast, por lo que los ejemplos son la única forma de explicar conceptos abstractos. Es sorprendente, sin embargo, cuántas similitudes hay entre la programación y el mundo real.

¡Usando Internet, por supuesto! codecademy es un buen sitio web para comenzar en varios idiomas diferentes y comienza con lo más básico de cada uno.

La Asamblea General tiene algunos buenos cursos interactivos en diseño web.

Udacity y otros sitios web similares basados ​​en cursos ofrecen algunos cursos excelentes en diferentes idiomas para diferentes niveles de usuario.

Finalmente, YouTube tiene muchos canales dedicados a la enseñanza de la codificación en cualquier forma. Uno que específicamente vi fue el c ++ de Bucky.

Nunca tuve entrenamiento formal. Mi codificación no es muy sofisticada, pero hace el trabajo.
Lo que haces es encontrarte un proyecto. Luego diseña el aspecto de la misma. Entonces empieza a codificarlo. Aprende sobre la marcha. Encuentra las herramientas necesarias (ver la otra respuesta).

Buena suerte.