Porque necesitas caminar antes de poder correr.
He tenido estudiantes de primer año que quieren saber cómo construir el próximo juego de Elder Scrolls, o un MMOG antes de que incluso escribieran un programa de “hola mundo”.
Intentar enseñarles las complejidades de un proyecto que requiere cientos de miles de líneas de código es mucho más desalentador que enseñarles lo básico en un programa de calculadora que puedo escribir en JavaScript con quizás 20 líneas de código.
Los proyectos grandes también tienen una TONELADA de análisis de requisitos y trabajo de diseño de software que lleva meses, incluso antes de que se escriba un código (si se hace correctamente). No hay forma de hacerlo en un semestre típico.
- ¿Cómo es la vida estudiantil en la Indian Maritime University, Visakhapatnam?
- ¿Existe una única fuente de información que explique lo que necesita un estudiante con destino a los Estados Unidos?
- ¿Qué intentan encontrar los fabricantes de JEE en los estudiantes?
- Maestros: ¿Alguna vez ha tenido un estudiante trabajador que haya reprobado su clase?
- Quiero abrir una beca de grupo para estudiantes desfavorecidos y necesitados de todo el mundo. ¿Cómo puedo acercarme y hacerlo exitoso?
Sin embargo, puedo enseñarle sobre matrices, bucles, estructuras de datos y las mejores prácticas mostrándole pequeños programas que son muy fáciles de entender con bastante rapidez. También puedo mostrarle cómo depurar un programa simple mucho más rápido que uno que tiene toneladas de piezas móviles.
Estos fundamentos lo ayudarán a aplicarlos a proyectos más grandes que tengan un montón de complejidad cuando llegue a esa etapa. Algunas cosas, como la administración de memoria, la codificación multiproceso, los problemas de bloqueo de subprocesos, la conmutación por error, etc., tardan años incluso para que los buenos ingenieros aprendan y descubran, e incluso aún, el código con errores se libera constantemente.
Básicamente, si la ingeniería / programación de software fuera tan fácil, todos lo harían. Hay una razón por la cual los ingenieros de software son una de las profesiones mejor pagadas y tienen una gran demanda: no todos pueden hacerlo, y se necesita un tiempo para obtener la experiencia para hacerlo.