¿Es posible obtener un sólido conocimiento del desarrollo de software desde una plataforma de cursos en línea (Udacity, Coursera, edX)?

Es posible obtener algún conocimiento de un idioma específico de un curso en línea, pero esto variará dependiendo de usted y del idioma. No es muy diferente de tomar una clase universitaria; no te hará un experto

Dependiendo de su parte, debería utilizar un editor o IDE y trabajar con el idioma mientras toma el curso. Eso tampoco significa cortar y pegar ejemplos en su editor. Escríbalos, ya que eso, en muchos idiomas, lo acostumbrará a la puntuación correcta y evitará errores a medida que avanza. También le dará una mejor comprensión de la sintaxis.

Dudé en incluir el dependiente en la pieza del idioma porque hoy en día no hay ningún idioma realmente “simple”. Puede aprender fácilmente lo básico en línea, pero también tendrá que tomar muchas clases especializadas que, en algunos casos, pasan de 8 a 16 horas o más en un solo concepto. Pero una vez más, consulte el párrafo anterior.

Si su pregunta no fuera específica del idioma, pero con el concepto más amplio de desarrollo de software de aprendizaje, diría que una clase en línea sería muy limitada. El desarrollo es un proceso de ingeniería, que comienza con un concepto u objetivo del programa y se desarrolla a través de varias fases de diseño para llegar al producto terminado. Francamente, eso solo requiere experiencia para que no puedas conectarte. Tampoco puedes conseguir que funcione sin interactuar con otros humanos. Simplemente vaya a su tienda de aplicaciones y mire todas las aplicaciones de una estrella. Estoy seguro de que, en la mayoría de los casos, el desarrollador pensó que esto era lo mejor del mundo, pero se equivocaron mucho.

Ciertamente no está de más tomar clases en línea, pero necesitas aprovechar esa experiencia y expandirte desde allí.

Piense en esas plataformas como Cliff’s Notes para Shakespeare. Las notas de Cliff ayudan a la gente, pero sin leer Shakespeare por ti mismo, te estás perdiendo toda la experiencia.

Las plataformas en línea le brindan una vista de alto nivel del tema y suficiente información para que pueda hacer el aprendizaje independiente. Son excelentes para darle una idea de lo que es hacer algo sin gastar mucho tiempo y dinero.

Si su objetivo final es obtener un conocimiento sólido sobre el desarrollo de software sin el costo de un título universitario, le recomiendo que haga esto:

  1. Obtener algunos libros de texto Los estudiantes de CS toman una universidad
  2. Imagina que estás en la clase haciendo las tareas de lectura. Muchos profesores publican tareas en los sitios web de sus universidades.
  3. Mire a su alrededor los proyectos de código abierto que le interesen y participe.
  4. Ponerse al día con el lenguaje de ese proyecto.
  5. Mira cómo otros hicieron su código. Vea lo que hicieron bien y vea lo que hicieron mal.
  6. Ejecuta la teoría que estás aprendiendo en el proyecto.

El desarrollo de software no es solo sentarse en una habitación oscura durante 14 horas al día, golpeando el teclado con los dedos manchados de Cheetos. Existe una buena cantidad de interacción con las personas en las que se desarrollan planes, revisiones de códigos, negociaciones, entrevistas a los usuarios para conocer los requisitos y otras cosas.