¿Debo tomar un curso de informática en mi universidad o estoy aprendiendo en línea lo suficiente?

Creo que depende de dos cosas:

  • El profesor, que está dando el curso.
  • Tu determinación y autodisciplina.

Si el profesor es sobresaliente, siempre es un placer asistir al curso. Puede aprender de una persona muy conocedora e interesante y esto siempre es una ventaja.

Por otro lado, el autoaprendizaje es una necesidad para cualquier informático / programador que quiera ser un profesional. Requiere bastante autodisciplina y determinación, porque muchas personas tienden a renunciar / encontrar excusas a medida que pierden la motivación en el camino. Pero esta es una habilidad más que se requiere junto con un buen dominio de las matemáticas, la programación, etc. Y definitivamente vale la pena.

En resumen: debe hacer el autoaprendizaje de todos modos, pero si el profesor es bueno, asista también al curso y luego concéntrese en temas más avanzados / profundos para el autoaprendizaje.

En cuanto al lenguaje de programación: nunca es malo saber más. Además, hay buenas bibliotecas de aprendizaje automático (por ejemplo, Weka) y herramientas (como KNIME) escritas en Java.

Como alguien que codifica tanto en Java como en Python, no permitiría que las reservas sobre un lenguaje de programación me impidieran tomar el curso. Java es diferente de Python, pero tiene la suerte de que ambos son lenguajes imperativos orientados a objetos que forman parte de la familia C. Si bien Java es más estricto (escritura estática, manejo obligatorio de excepciones), el lenguaje es bastante fácil de aprender. Use un buen ide como eclipse y debería estar bien.

Para agregar:

Aprender otro lenguaje de programación es excelente para obtener diferentes perspectivas sobre un problema. Refuerza la idea de que todos los lenguajes de programación son herramientas y si tienes la oportunidad de aprender Java, ¡lo tomaría!

Creo que, en general, los cursos presenciales tienden a ser mejores, no necesariamente en contenido, sino en la forma en que se controla. Es fácil omitir algunas cosas en los MOOC, mientras que es más difícil hacerlo en las clases habituales.
Luego, las clases universitarias tienden a ser más completas en la cobertura que los MOOC.

Finalmente, Java es un buen lenguaje y si estás pensando que tu futura carrera es Data Science, entonces Java es inevitable. No es un reemplazo para Python, ambos juegan bien juntos y nunca está de más saber ambos. Además, si ya conoce C #, entonces Java es básicamente lo mismo (pero más agradable 🙂). Entonces aprenderás Java en poco tiempo.

PD: no me malinterpretes: me encantan los MOOC y no digo que no debas usarlos en absoluto. También son una buena fuente de conocimiento.