¿Debo aprender Ciencias de la Computación más fundamentales o centrarme en aprender los nuevos marcos de moda?

Solía ​​pensar que era una locura que pudieras obtener un título en programación sin tener que escribir un programa de trabajo. Pero ahora, creo que las escuelas deberían prohibir que los estudiantes programadores escriban algo. Los programas de escritura obstaculizan el aprendizaje de lo que realmente necesita saber.

Aprende sobre la estructura. Aprenda sobre cómo usar la lógica de manera eficiente. Aprenda sobre lo que necesita decirle a la computadora que haga en lugar de cómo decirle a la computadora que lo haga.

Los lenguajes y los marcos van y vienen. Los algoritmos se reemplazan por mejores algoritmos. Aprenderás y volverás a aprender esas cosas por el resto de tu carrera. En este momento, debería estar aprendiendo las cosas que siempre serán aplicables, hasta el punto en que las entienda tan profundamente que se vuelvan completamente intuitivas. Entonces podrá aplicar ese conocimiento sin importar qué herramientas esté utilizando ese año o en ese entorno.

Estoy totalmente de acuerdo con el sentimiento de Miguel de hacer ambas cosas. No se trata de OR sino de AND . También me parece interesante la opinión de Matt sobre esto. Él tiene un punto en que el enfoque extremo en hacer “código de trabajo” tiende a interferir en la estructura del aprendizaje. Los estudiantes y los maestros tienden a tomar atajos o “estropearse” con marcos que abstraen las cosas.

He trabajado con algunas instituciones educativas que se centran en hacer que los estudiantes produzcan código de trabajo. Esto es muy útil para obtener graduados que llenen fácilmente los trabajos de nivel de entrada. Sin embargo, lo que suele faltar es la profundidad. Un problema fuera de las capacidades obvias del marco de trabajo para luego confundirlos.

Por supuesto, la realidad no es en blanco y negro. Las instituciones académicas deben tener un buen enfoque en la lógica y la estructura, pero no olvidar darles a los graduados algunas habilidades prácticas también.

Creo que implementar cada algoritmo en el libro de texto de algoritmos es una pérdida de tiempo. Recomiendo simplemente leer el libro e intentar entender cómo / por qué funciona cada algoritmo, y luego implementar cualquier algoritmo que parezca interesante pero complicado.

Dado que su objetivo principal es conseguir un trabajo, puede ser una buena idea aprender algo sobre los marcos web del lado del cliente. Tal vez debería agregar algo junto con angular / columna vertebral / ascua / lo que sea sobre las aplicaciones web que ya ha creado. No recomendaría pasar demasiado tiempo con ningún marco / herramienta específico. Pasar no más de unas pocas horas leyendo documentos y luego unos días construyendo algo pequeño es suficiente para obtener un poco de experiencia con el marco. En mi opinión, el principal beneficio de los marcos de aprendizaje es aprender cuáles son los problemas en el dominio (es decir, cómo puedo empujar cosas desde un servidor, cómo sincronizar el estado del cliente y el servidor, etc.) y saber cuáles son algunos de los enfoques comunes para estos problemas son Aprender la API de algún marco en extremo detalle no vale su tiempo.

Sugiero aprender Ciencias de la Computación fundamentales, pero también enfocarme en uno o un conjunto de marcos e idiomas relacionados. Afirma que no tiene experiencia, pero probó tecnologías diferentes y no relacionadas que probablemente tomaron mucho tiempo.

Saber cómo usar un marco puede conseguirte un trabajo. Pero aprender mucho y luego recibir un pago generoso (ser promovido) requerirá una sólida comprensión de CS.