Soy un programador que no tiene mucha inclinación matemática. Encantada de conocerte. No soy completamente horrible con las matemáticas, pero tuve un bajo rendimiento constante en mi carrera académica. Por lo general, apunté a B en lugar de A y recogí un par de C en el camino.
Excelentes habilidades de razonamiento lógico y resolución de problemas son imprescindibles para todos los que escriben código. En un nivel fundamental, esto es lo que hacemos. Si piensas que la lógica es una forma de matemática, entonces sí, debes ser bueno en eso.
Pero eso no es lo que la mayoría de la gente entiende por “matemáticas”. Significan cosas como trigonometría y cálculo. Estos realmente solo tienen un valor práctico para las personas que escriben software en dominios específicos.
Básicamente, no todas las partes de las matemáticas son generalmente aplicables a todos los ingenieros de software. Sin embargo, algunos dominios de ingeniería de software dependerán en gran medida de tipos específicos de matemáticas:
Si va a hacer programación de gráficos, debe ser sólido en trigonometría y prácticamente todo lo que tenga que ver con los vectores.
Si trabajará con ingenieros o físicos, entonces realmente necesita todo ese cálculo y ecuaciones diferenciales.
Si va a trabajar en la industria financiera, probablemente necesite una buena comprensión de las estadísticas.
Si va a desarrollar bases de datos, debe repasar la teoría de conjuntos.
Las matemáticas que he encontrado generalmente aplicables a mi carrera han sido un curso de matemáticas discretas y un curso de álgebra lineal. Ambos eran tipos de matemáticas bastante no tradicionales que se centraron en gran medida en la lógica. Me fue bien en ambas clases también.
En los últimos años, los estudios en el campo de la neurología han demostrado que el cerebro es altamente especializado. Entrenarlo extensamente para hacer una tarea, por ejemplo, resolver ecuaciones de álgebra mejorará principalmente la resolución de ecuaciones de álgebra y tendrá poco efecto en otras habilidades.
Cuando los estudiantes se quejan “¿Por qué necesito saber esto?!?” los maestros a menudo les dicen que aprender a resolver problemas en un área les ayudará a resolver problemas en otras, pero hay poca evidencia de que esto sea cierto. Si bien aprecio el hecho de que ser obligado a tomar numerosos cursos de matemáticas en la escuela secundaria y la universidad me expuso a muchas ideas diferentes, dudo que muchas de las habilidades que aprendí más allá del álgebra fueran transferibles a mi carrera diaria.
La única forma real de responder si será bueno como ingeniero de software es trabajar en su propio dominio. En otras palabras, necesitas ESCRIBIR CÓDIGO. Esa es la única manera de saber realmente si esto es algo en lo que serás bueno o no.
Hay muchas personas exitosas en esta industria con poca o ninguna educación formal. La experiencia es el rey. Si realmente quieres hacerlo, ¡adelante! Y no permita que una C en trigonometría lo detenga.