Puede depender de en qué escuela estás estudiando.
Estudié mucho CS y Matemáticas como estudiante universitario, y casi me especialicé en ambas. Desde mi experiencia personal, las clases de matemáticas hardcore siempre fueron más difíciles que las clases de CS, en todas partes donde he estado.
YMMV con esta evaluación, y algo que debo saber es que comencé a programar a una edad muy temprana, antes de que supiera cómo andar en bicicleta o incluso atarme los zapatos.
- ¿Cuál es la diferencia entre matemáticas, filosofía y lógica?
- ¿La geometría algebraica y la topología tienen aplicaciones en las finanzas cuantitativas?
- ¿Qué es una explicación intuitiva de localización y finalización de espacios topológicos? ¿Están relacionados con los procesos correspondientes en álgebra conmutativa?
- En la teoría de la medida, ¿por qué presentamos la noción de una medida completa?
- ¿Cuáles son algunos estudios sobre la economía de videojuegos masivos en línea?
Por cierto, cuando digo Matemáticas hardcore , muchas escuelas tienen una especialización en matemáticas más fácil diseñada para personas que solo quieren enseñar matemáticas K-12, por lo que es importante hacer esa distinción. La especialización en “enseñanza” de matemáticas es sin duda más fácil que CS. Las escuelas que no ofrecen específicamente una especialización en matemáticas de “enseñanza” a menudo harán que su especialización en matemáticas sea mucho más fácil o que los requisitos sean lo suficientemente flexibles como para renunciar a las clases más difíciles. De lo contrario, tendrían que dejar a la mitad de sus estudiantes en el tercer año, porque la mayoría de las personas que solo quieren enseñar matemáticas K-12 no necesitan un “título de matemáticas” completo y no están preparados para el rigor que conlleva. Por eso digo que depende de la escuela y de quién más está en la especialidad. Además, algunas escuelas diferencian entre las especialidades de “matemática aplicada” y “matemática pura”, y las de “matemática pura” son casi siempre más intensas.
Para dar un ejemplo, en Berkeley, la mayoría de los cursos de matemáticas de nivel superior son más difíciles que los cursos de CS, y eso es especialmente cierto en los cursos de honor.
El nivel de comodidad de programación / tecnología todavía parece ser un factor clave para determinar si tendrá dificultades en CS o no.
Tengo un amigo particular de la universidad que era un experto en matemáticas , y él tomó una tonelada de cursos de matemática de posgrado como estudiante universitario, pero aún tuvo problemas en el curso básico introductorio de programación de Java de CS (que tomó como estudiante de último año). Las razones por las que tuvo problemas fueron porque no estaba tan cómodo con las computadoras para empezar, no tenía experiencia previa en programación y porque la clase no se enseñaba bien.
Desafortunadamente, la última razón sigue siendo cierta en la mayoría de las escuelas. Las clases de introducción de CS suelen ser difíciles porque no se enseñan bien. Algunas escuelas realmente han hecho todo lo posible para tratar de enseñar mejor, pero creo que todavía estamos muy lejos del punto en que las clases de introducción a CS se enseñan universalmente bien. La razón principal por la que hay tantas clases de introducción de CS malas es porque siempre puedes estar seguro de que habrá estudiantes como yo que ya tienen un montón de experiencia previa en programación en la clase. Esto le da al instructor una falsa sensación de seguridad de que están haciendo un buen trabajo de enseñanza cuando no lo están.
La otra cosa que dificulta la programación para un principiante (incluso alguien que es muy inteligente y ha estudiado un montón de matemáticas como mi amigo) es que muchas personas tienen poca paciencia con lo tontas que son las computadoras. “¿Por qué esta estúpida máquina no hace lo que le dije que hiciera?” Las computadoras no son inteligentes. La IA ha recorrido un largo camino, pero las computadoras aún son muy malas para descubrir las intenciones de los usuarios.
Cuando se trata de calificar, hay culturas muy diferentes en CS y Matemáticas, que la respuesta de Jessica Su alude a:
- CS Grading tiende a ser muy binario , como una computadora. De hecho, muchas veces, las computadoras están haciendo la clasificación. Para cualquier parte de una tarea, obtienes el 100% o el 0%. Lo muy molesto de la calificación CS es que puedes pensar que entiendes perfectamente una tarea y estás esperando una A +, pero terminas con una B debido a un pequeño tecnicismo en las instrucciones de la tarea que no entendiste. Nunca discutí sobre mi calificación en una clase de matemáticas, pero pasé un montón de tiempo discutiendo sobre calificaciones que pensé que eran injustas en las clases de CS. Sentí que mi experiencia estudiando CS me estaba entrenando para ser un abogado más que nada. Lo primero que debe hacer cuando obtiene una tarea en CS es leer y volver a leer las instrucciones con mucho cuidado, ya que incluso una mala interpretación menor podría dañar seriamente su calificación. Debe asegurarse de puntear cada i y cruzar cada t. Las personas que tienden a calificar los cursos de CS quieren que todas las soluciones sean uniformes, y si le das una solución que demuestre que entiendes perfectamente el concepto pero no está en el formato exacto que esperan, pueden fallar.
Recuerdo un momento específico cuando estaba hablando con un profesor sobre mi solución a su tarea, porque pensé que tenía una solución realmente brillante, pero durante la conversación me di cuenta de que si bien mi solución era conceptualmente correcta, todavía fallaría la calificación del autograbador. pruebas debido a un tecnicismo oculto en las instrucciones, que me perdí. En esencia, el instructor no había previsto que alguien pudiera intentar producir una solución como la mía, pero no quería volver a escribir el script de clasificación automática para acomodar mi mejor solución. Así que corrí a casa, y con solo 5 horas de sobra antes de la fecha límite, rápidamente reescribí todo mi código y apenas cumplí la fecha límite. Terminé con un A + a pesar de la frenética codificación de último minuto. Pero estaba bastante molesto porque incluso tuve que volver a escribir el código porque pasé mucho más tiempo en mi solución original, que era mucho más genial. Desafortunadamente, el autograder habría dado ese hermoso código que originalmente escribí un D. Suspiro …
Otras veces, logré cambiar mi calificación porque pude demostrar que la calificación del instructor no era consistente con las instrucciones que realmente habían escrito. De nuevo, lo principal que aprendí en CS fue cómo ser un abogado y discutir sobre los pequeños detalles técnicos escritos en las especificaciones. Supongo que es una habilidad que necesitas en este campo, pero habría disfrutado mucho más de mis clases de CS si no fuera así.
- La calificación matemática tiene que ver con el crédito parcial . La calificación casi siempre es tarea de seres humanos en lugar de máquinas. Si el calificador puede determinar que usted parece entender completamente cómo resolver el problema, le otorgarán crédito total o casi completo incluso si tiene un error técnico menor. Si no tiene idea de cómo resolver el problema, pero hace un esfuerzo, probablemente también obtendrá un crédito parcial. La otra cosa que es diferente de las matemáticas y otras especialidades es que no es raro ver puntajes de 50 y menos en los exámenes. Un profesor de matemáticas me explicó una vez que intentan disparar por tener una mediana del 50% en los exámenes porque eso termina con la mejor distribución, con el rango de puntaje para la mitad inferior de la clase igual a la mitad superior de la prueba. clase. También he visto exámenes de matemáticas realmente difíciles, donde casi todos obtienen el 50% o menos. Entonces las clases de matemáticas pueden ser muy estresantes, porque no sabrás si estás aprobando o reprobando la clase hasta el final cuando el profesor la curve. Creo que algunos profesores intentan deliberadamente mantenerte en suspenso sobre tu calificación, para que sigas esforzándote realmente. Quieren poner el listón para la clase tan alto que casi nadie puede alcanzarlo, y luego quieren presionarlo realmente para que vea cuán cerca estará. Una vez más, esto depende de a qué escuela asistas y cuán duro sea tu especialidad en matemáticas.
Las matemáticas también tienden a tener una política de colaboración mucho más relajada que la CS. En CS, son muy paranoicos acerca de que los estudiantes copien el código y el engaño de los demás (a veces por una buena razón). En matemáticas, generalmente no les importa mucho si trabajas con otros estudiantes cuando intentas resolver los conjuntos de problemas. Si no sabe lo que está haciendo, aún no aprobará los exámenes. En general, encuentro que los estudiantes de matemáticas son más colaborativos y sociales que los estudiantes de CS, así que disfruté más de mis clases de matemáticas por ese motivo. CS se sintió más competitivo, pero en matemáticas es más como si todos fueran un equipo trabajando en contra de los conjuntos de problemas. Las matemáticas tampoco suelen tener una proporción de género tan desigual como la CS en la mayoría de las escuelas.
Sin embargo, si obtener un GPA casi perfecto es muy importante para usted, CS puede ser una apuesta más segura que Math. Obtener un GPA perfecto en CS no es difícil. Solo tienes que ser como un robot y hacer todo lo que el instructor te programe. En matemáticas, necesitas tener mucha más creatividad y brillantez para obtener calificaciones perfectas.
Para darle una idea, para mis amigos que eran estudiantes de matemáticas, muchos de ellos ingresaron a las mejores escuelas de posgrado con un promedio de calificaciones (GPA) en el rango bajo de 3.0. Tienen clases en su transcripción que apenas aprobaron. Para CS, por otro lado, es difícil ingresar a una escuela superior de posgrado con menos de 3.5 GPA y la mayoría de los que sean aceptados tendrán GPA de cerca de 4.0. Ahora hay dos formas de leer esto. El n. ° 1 es que CS es probablemente más competitivo que las matemáticas, pero el n. ° 2 es que en matemáticas, probablemente sea más difícil obtener un GPA súper alto si estás en un programa de matemática hardcore.
TLDR : CS es difícil por razones estúpidas. Las matemáticas son realmente difíciles. Además, si ya sabe cómo escribir código, aprenderá mucho más estudiando matemáticas que CS.