#18 A grandes rasgos, podríamos decir que la programación son dos cosas:
Algorítmia por un lado y "Lenguaje" por otro.
Da lo mismo el lenguaje con el que aprendas, la algoritmia y el "pensamiento de programador" no te va a cambiar de un lenguaje a otro. Pero si que hay ciertas particularidades de cada lenguaje, dependiendo de las cosas que haga el lenguaje por ti.
A grandes rasgos:
"Hay lenguajes que te obligan a declarar las variables antes de usarlas, y otros que no"
"Hay lenguajes que te obligan a gestionar punteros"
"Hay lenguajes que te obligan a ..."
Que si no has hecho nunca nada, todo esto de golpe se te hará bola, pero no te preocupes, cualquier lenguaje es bueno para aprender... Y el resto de cosas, las irás aprendiendo sobre la marcha.
#23 Alguno me matará por esto, pero si te sientes cómodo con Java, el salto a C# es bastante suave (casi inmediato) y puedes usar Unity3D, con C++, tienes Unreal engine... A ver, que tanto java como c++ tienen varios engines y no tienes porqué quedarte con los más usados (Unity, UE, GM) pero al final, si quieres colaborar con otros o buscar manuales y tal... pues ayuda estar usando los motores populares.