Hola amigo, te doy mi opinión sobre el cansancio de la vista. Yo creo que eso depende de cada uno, de la iluminación de tu lugar de trabajo, de tu postura frente a la pantalla, del tipo y tamaño de la pantalla, de tu tolerancia frente al monitor, ...
Supongo que es costumbre, pero yo por ejemplo, me puedo pasar 9 o 10 horas frente al pc programando con mis descansitos para comer, despejarme, el cigarrito, etc
Una cosa a tener en cuenta también, es que si durante esas 9 o 10 horas, todo lo que voy programando, lo entiendo, me funciona, lo mejoro, y me va bien, puedo pasarme mas tiempo ya que al ser algo que me gusta y encima me van saliendo las cosas pues yo solo me flipo y no me doy cuenta ni del tiempo que pasa.
Por otro lado si durante esas 9 o 10 horas todo lo que hago me sale mal, o no me funciona, o me rompe otra cosa por otro lado, o no estoy entendiendo lo que estoy haciendo, esas 9 o 10 horas se me pueden hacer interminables y acabar reventado, mareado y agotado, ya que no he disfrutado durante esas horas.
Por otro lado sobre el descanso en los curros, bueno yo creo que eso depende de cada empresa, pero tampoco tienes que estar 2 horas frente a la pantalla mirándola sin parpadear, tienes compañeros... puedes conversar sobre algo en lo que estáis trabajando... sin abusar. Puedes ir al baño... no estas encadenado a una silla y con un tio con un látigo detrás... o eso creo XDD
Y después sobre lo de sacarte el ciclo a distancia, pues no puedo decirte mucho ya que yo el que he echo(ASIR) y el que haré ambos son presenciales, pero vamos te comento que yo tengo conocimientos avanzados de java y nadie me ha enseñado, eso si como comento me tiro muchas horas frente al pc y desde hace muchos años... Lo importante aquí es entender las cosas, es importante tener unos fundamentos básicos de programación, una serie de conceptos comunes a todos los lenguajes de programación y que son esenciales para después empezar con algún lenguaje concreto. Estos conceptos abarcan cosas como... que es una variable, una constante una funcion, un bucle, un literal, un operador, expresiones, condicionales, lógica, ...
Yo creo que en pocos ciclos se comienzan con estos conceptos y son realmente importantes ya que son las bases, no saber esto podría ser como construir un edificio sin saber lo que es un cimiento.
Aparte de todo esto, es muy importante que entiendas cada concepto y que cuando no lo hagas, no sigas adelante sin hacerlo, intenta encontrar alguien que te lo explique, algún profesor, algún tutorial o algo.
Y nada amigo como posible sacarte el ciclo, claro que es posible, eso si en programación hay que ser constante, ya que es algo extenso y hay que echarle sus horas al principio, ya después no tanto pero al principio si.
Bueno un saludo y espero que te sirva mi opinión.