A medida que cada año pasa y se vuelve más complejo, ¿la programación necesitará muchas matemáticas?

Creo que para mí, la cantidad de matemáticas que hago ahora es mucho más de lo que solía escribir, pero también estoy escribiendo un software más complejo que antes.

Por otro lado, algunos idiomas ahora omiten incluso las matemáticas más básicas, como las matemáticas de puntero, por lo que en estos días, para el idioma en sí, apenas necesita ser capaz de sumar.

La programación se está volviendo más compleja, sin duda, pero no es un “complejo matemático”, es un “complejo de estructura”, es decir, los programas son más grandes y, a menudo, se basan en otros programas, por lo que obtienes una capa de complejidad tras otra.

Según mi experiencia, la programación solo es matemática si trabajas en un dominio matemático, como los gráficos. Si está escribiendo un servicio REST como lo he estado la semana pasada, entonces apenas necesito poder sumar dos números, ni siquiera estoy bromeando.

Realmente depende de lo que esté escribiendo, por un lado, el nivel de matemáticas que necesita a medida que avanza su carrera puede aumentar un poco, dependiendo del dominio. Por otro lado, podría disminuir, porque está creando pequeñas aplicaciones para teléfonos inteligentes o algo que solo necesita poder mostrar una fuente de noticias o algo así.

Para generalizar un poco, si te estás metiendo en la programación, solo debes preocuparte por las matemáticas si vas a juegos de alta gama, cualquier cosa en 3D o algo muy gráfico. Generalización masiva, por supuesto.

Habiendo escrito programas durante 49 años y sabiendo sobre el uso de la computadora “antes de mi tiempo”, diría que lo contrario es cierto. En aquel entonces, las computadoras se usaban principalmente para resolver problemas científicos (eran demasiado caras para el uso comercial general). Con el tiempo, las bibliotecas se escribieron para realizar la mayoría de los algoritmos y han aparecido muchas aplicaciones informáticas que requieren poco o ningún conocimiento matemático avanzado. ¡Entonces diría que el porcentaje de programas que requieren conocimientos avanzados de matemáticas en realidad ha disminuido!

Como ejemplo simple, hace 60 años la mayoría de los programadores tendrían que saber cómo escribir el algoritmo para calcular los senos. Hace 40 años, la mayoría de los programadores usaban una función seno preescrita. Hoy en día, la mayoría de los programas ni siquiera usan una función seno.

Permítanme dejar atrás mi teoría en la que supongo que un poco nervioso por todo el mundo que preguntaba si las matemáticas no eran tan necesarias en el pasado o las matemáticas eran necesarias para la programación. La matemática es la base de la mayoría de las ciencias, solo la ciencia es la forma aplicada y podemos verla todos los días en la vida. Ahora las matemáticas significan tantas cosas que no se pueden usar como un término en este caso, de manera similar a decir que las matemáticas discretas son lo mismo que el cálculo … simplemente no. Casi todo en la vida requiere matemáticas hasta cierto punto y en el pasado no me dice a qué plazo se refiere también. Imagine que trabaja con un lenguaje como el ensamblado, mientras que la mayoría de las veces solo usa máquinas o juegos integrados, no es fácil de ninguna manera. La lógica detrás de un procedimiento en ensamblaje requiere mucho más trabajo que un lenguaje de nivel superior que usamos hoy comúnmente. O incluso al comienzo de la computación para crear algo, necesita una comprensión completa de lo que está haciendo, no solo un semestre de un curso de matemáticas. Simplemente no veo cómo fue más fácil el pasado, personalmente encuentro lo contrario.

No en general Pero en casos particulares, definitivamente. Hay nuevas áreas, por ejemplo en modelos financieros, simulaciones y Big Data, que son profundamente matemáticas. Pero esto no es que la programación en su conjunto se vuelva más matemática, sino que aparecen nuevas áreas que son matemáticas. Toda la informática antigua sigue ahí, y crece, sin volverse más matemática.

Básicamente, podría ser cierto, porque la inteligencia artificial, el aprendizaje automático, los gráficos por computadora, el procesamiento digital de señales, etc., requieren muchas matemáticas. Básicamente se trata de matemáticas.

Por otra parte, depende de a qué te refieres con “en el pasado” y a qué tipo de programación te refieres. No necesita matemática si está creando un tema de WordPress para un Blog, pero si desea probar algún sistema en MatLab para ver qué está sucediendo y qué tipo de salida obtiene, diviértase con las integrales, porque necesitará ellos.

La programación puede o no necesitar matemática: depende completamente de lo que esté escribiendo.

Si está haciendo un análisis de big data, necesita conocer muchas estadísticas. Si está escribiendo un sistema de control de vuelo, entonces necesita saber todas las matemáticas asociadas con la aeronáutica. Si está escribiendo un motor de gráficos, necesitará saber sobre el trazado de rayos. Si está escribiendo un sistema de gestión de contenido, entonces probablemente no necesite matemática alguna.

Realmente depende de lo que estés haciendo.

Una gran cantidad de la programación que hago (y veo a otros miembros del equipo haciendo) tiene poco o nada de matemáticas avanzadas. De vez en cuando surge algo que sí, pero es raro.

Hay mucha programación que necesita matemáticas básicas, pero es raro que necesite algo tan avanzado como las matemáticas de nivel de grado.

(Estoy de acuerdo, por supuesto, con aquellos que dicen que áreas como el aprendizaje automático, etc. necesitarán matemáticas más avanzadas, sin embargo, con toda probabilidad, después de un tiempo, las personas juntarán herramientas que harán todo el trabajo pesado por usted, y será posible hacer lo que sea es necesario con algunas llamadas a la biblioteca; es lo mismo con cosas como los motores de gráficos, puede escribir el suyo (y nosotros lo hacemos), pero muchas personas simplemente usan una solución estándar y obtienen excelentes resultados, ahorrándose tener que hacer todo Las matemáticas.)

More Interesting

¿Cuáles son las diversas formas en que puede resolver el siguiente laberinto con un robot seguidor de enlace negro basado en IR? ¿Cómo puede resolverlo con el mínimo número de sensores posible y el tiempo más rápido para llegar al final?

¿Hay algún método para generar números factoriales grandes usando C ++?

Sistemas distribuidos: ¿Cuál es el significado exacto de A (Disponibilidad) y qué significa en el teorema CAP de Brewer?

¿Cómo es tomar COS 511 (Aprendizaje teórico automático) en Princeton?

¿Cuál es la complejidad temporal de la ecuación T (n) = T (\ sqrt {n}) + n; n> 2 T (n) = C; n = 2?

¿Cómo evitan los programas de aprendizaje automático / IA la trampa de quedar encerrados en una forma de hacer algo una vez que han encontrado un método exitoso para completar una tarea? ¿Pueden calcular otras soluciones competidoras en paralelo?

Cómo usar algoritmos y estructura de datos en la vida real

¿Por qué los estudiantes que se especializan en matemáticas, física, informática y estadística no se gustan?

¿Qué hace que el núcleo de reproducción de espacios de Hilbert sea útil en el aprendizaje automático?

¿Cómo se relacionan los cierres del lenguaje de programación con el cierre en matemáticas?

¿Debería sentirme desmoralizado porque el cálculo no parece hacer clic para mí?

¿Podrá la inteligencia artificial resolver un problema matemático abierto, como la conjetura de Goldbach o la hipótesis de Riemann?

¿Qué tipo de matemática debo esperar para ingresar a una especialización en informática?

¿Cómo nos ayuda la informática a comprender mejor el universo?

¿Por qué la máquina de Turing se llama la mejor máquina si no puede resolver el problema de detención?