¿Qué libros recomendáis?
Dependiendo del lenguaje por el que quieras empezar podrias leer uno u otro. En mi caso como alguien dijo, empece en la universidad con C++, (las bases de la programacion, del lenguaje y de la programacion orientada a objetos) usando como base el texto "Thinking in C++" de Bruce Eckel (muy recomendado)
¿Tenéis alguna guía de estudio?
Me refiero a por EJ : empieza estudiando tal y sigue con tal..
Como antes todo depende de tus intereses como futuro programador, si te enfocaras en programacion web (frontend o backend o fullstack), desktop, moviles, bases de datos, etc. Yo te recomendaria empezar por las bases de la programacion orientada a objetos, luego algo de estructuras de datos y bases de datos. Estos conocimientos los vas a tener que usar como programador en el mayor porciento de tus proyectos. Ya el tema del lenguaje es a gusto tuyo pero estos conceptos necesitas conocerlos como el abc
Empece programación con la idea igual que muchos de dedicarlo a programación de juegos, pero actualmente estoy algo indeciso y me gustaría ir por desarrollo web
pero me falta para continuar por un mejor camino la opinión de alguien que al menos ya haya pasado por esto y sepa darme una ayuda o empujón para yo tener una idea de por donde continuar.
Como dijeron antes el desarrollo web es uno de los mas comerciales ahora mismo y seria la opcion que escogeria. La cantidad de tecnologias, frameworks y lenguajes puede ser algo abrumador en este campo asi que decide de antemano el tipo de programador (frontend o backend o fullstack) y las tecnologias y lenguages con los que trabajaras, C#/ASP.NET, PHP, Ruby, Python, JSP, MySQL, MSSQL, HTML, CSS, javascript, jQuery, etc, etc, etc
El mercado para desarrollo de videojuegos es algo diferente, el numero de compañias buscando artistas y programadores de videojuegos es mucho menor que las que buscan programadores de sistemas de gestion o aplicaciones webs o moviles. Luego igual necesitas especializarte en alguna rama ya sea audio, física, inteligencia artificial, gráficos o cualquier otra área que se requiera para realizar una función de videojuego.
PD: No esperes aprender a programar solamente leyendo teoria o leyendo codigo escrito por alguien mas. Necesitas llevar ambas cosas a la par, teoria y practica. Hay muchos cursos o libros que combinan ambas cosas, te enseñan la teoria con ejemplos practicos y encima te ponen ejercicios de practica. Te recomendaria aprender la teoria, el porque de las cosas y luego aplicarlas en proyectos de la vida real, lo que se te ocurra