¿Debo ser un científico computacional en lugar de un ingeniero de software si prefiero aprender matemáticas en lugar de lenguajes de programación?

Hm … Prefiero sugerir que debe ser un científico de la computación en lugar de un ingeniero de software si prefiere aprender matemáticas en lugar de ingeniería de software.

Si bien las ciencias computacionales se centran más en cómo resuelve las ecuaciones que en el lenguaje en el que implementó la solución, los lenguajes de programación aún sirven como su notación, y debe estar preparado para adoptar la notación que se le entrega. Cuando pretendes extender el trabajo seminal del profesor Eisenbahnwagen sobre la estimación de la permeabilidad de las barras de granola, precisamente a cero personas les importará cómo te sientes acerca de su elección de escribir en un dialecto de Modelica.

Toma una forma que es algo diferente de la forma en que la ingeniería de software se balancea constantemente alrededor de los marcos de moda y los paradigmas de programación, y dado lo que dicen los detalles de la pregunta sobre las tecnologías de aprendizaje, es posible que le guste más. Aún así, creo que es pertinente señalar que la ciencia computacional está impregnada de lenguajes de programación, y no esperará mucho mientras reescribe el algoritmo de Lanczos en su favorito.

En un sentido conceptual, no muchos lenguajes de programación han demostrado la misma fuerza, sistema y aplicación que el lenguaje de programación C. Si otros lenguajes de programación pueden servir para el mismo propósito, se han inventado en el pasado pero no están conectados en red y escalados como C. Programar en C no requiere una alta competencia matemática, pero las utilidades y aplicaciones pueden requerir la capacidad de modelado abstracto que solo puede proporcionar una disciplina estrechamente aliada con las matemáticas. Estos incluyen administración de memoria, programación de red o interfaz directa con el sistema operativo. Una persona que aplica el lenguaje de programación C para sistemas informáticos y redes más grandes se conoce como programador de sistemas o puede llamarse arquitecto de sistemas. Si le gustan las matemáticas y aplica los conceptos básicos a las aplicaciones que usan computadoras, probablemente disfrute de analizar, modelar y comprender su trabajo, en lugar de construir.

Los lenguajes de programación permiten la arquitectura, integración y diseño e implementación de computadoras a gran escala. Permiten a las personas, también conocidas como programadores, interactuar con las computadoras y su hardware. Una abstracción de las computadoras en sus pocas décadas es una máquina, capaz de interactuar con diferentes robots, dispositivos, sensores o motores complejos. Aprender muchos lenguajes de programación le permite a uno comunicarse y, lo que es más importante, traducir un énfasis en el lenguaje de programación C a los lenguajes distribuidos que sirven para diferentes propósitos y aplicaciones. Es la diferencia entre una programación centralizada en C, frente a una programación más amplia y distribuida en lenguajes de programación adicionales.

Si creemos que todos los lenguajes de programación derivan de C, podemos iniciar lenguajes de programación competitivos, como Haskell, Lisp o Fortran. Estos simplemente no han alcanzado la misma escala, y en términos de máquina, probablemente todos dependan de un lenguaje de instrucciones de ensamblaje. Es bueno aprender C, dominar C y comprender y ser capaz de hacer la biblioteca estándar de C. Pero también es superior reconocer las abstracciones, los medios de referencia y los lenguajes de programación funcionalmente directos que no representan la acción en una máquina por C. En este sentido, aún puede aplicar las matemáticas y los conceptos centrales que le interesan, mientras sigue aprendiendo múltiples lenguajes de programación. Un estudio teórico de lenguajes de programación probablemente emplea un álgebra matemática esencial, que identifica componentes discretos, características clave y el sistema de tipos. También define la aplicación regular de funciones, clases y orientación a objetos.

Le recomiendo que explore la ingeniería de software si le gusta construir computadoras y sus componentes, dispositivos y dispositivos electrónicos relacionados. Significa que le gusta la programación, los proyectos de software, la creación de sistemas y aplicaciones, y trabajar a través del ciclo de vida del software no solo como un objeto matemático, sino como una disciplina de ingeniería. Por último, enfatiza su interés en la gestión y desarrollo de productos, trabajando con desarrolladores de software y comunicándose con empresarios para comercializar el bien.

Probablemente. Los lenguajes de programación en su mayoría le brindan un conjunto de herramientas altamente restringido para resolver tipos particulares de problemas. Estos lenguajes de programación tienen una característica única para (muchas) herramientas, ya que puede doblar y reorganizar partes y partes de ellos para que puedan usarse en contextos inesperados. Hay una verdadera patada al hacerlo, pero es como inventar una máquina de coser que también puede tocar el piano (no recuerdo la fuente de esta metáfora muy útil).

Pero sentado allí hay todo un conjunto de herramientas, técnicas y recetas diseñadas para hacer ese tipo de trabajo correctamente. El hecho de que cualquier lenguaje de programación (por ejemplo, COBOL) pueda hacer cualquier cosa que cualquier otro lenguaje de programación pueda hacer (por ejemplo, Haskell o Mathematica) no significa que pueda hacerlo de manera fácil, rápida o intuitiva. ¿Quieres una carrera de frustraciones dominada astutamente? (Me parece bastante masoquista).

Por lo tanto, si yo fuera usted, instantáneamente zarparía hacia la ciencia computacional sin pensarlo dos veces ni mirar atrás.

La programación puede ser para usted, ya que parece que le gusta resolver problemas. Además, dado su interés en las matemáticas, tal vez algún tipo de grado de EECS. Podrías poner tus habilidades matemáticas a trabajar en procesadores de señal digital. El mundo digital moderno se basa en DSP y las matemáticas en las que se basan.

La programación es mucho más que aprender algunos idiomas (aunque debes aprender algunos).

De una forma u otra en matemáticas, espero que termines haciendo algo de programación. Hay toda una vida aprendiendo a hacer allí.

Sí, esa opción sería mejor por varias razones. El primero es que muchas áreas de la informática requieren un conocimiento profundo de los antecedentes matemáticos a diferencia de los lenguajes de programación. Por supuesto, usted implementa muchas de las áreas matemáticas mientras codifica, pero sin embargo, la ciencia de la computación requeriría un mayor conocimiento de las matemáticas fundamentales.

¿Por qué “ciencia computacional”, por qué no solo las matemáticas aplicadas? Eso suena como si es lo que realmente te gusta.

Básicamente. No todos los ingenieros de software se mantienen al día con las cosas o incluso son los mejores programadores, pero a nosotros nos gusta hacer cosas. Nos gusta tener proyectos para poner en marcha y el proceso de aprendizaje que acompaña a eso. Si prefiere pensar en los conjuntos y formas de manipular datos y mejores funciones, etc. y le gusta o incluso disfruta de la codificación, pero prefiere usarlo para implementar sus conceptos en lugar de un proyecto específico para personas específicas, etc., entonces la informática es probablemente su mejor apuesta.

Las viejas C + Math simples son una combinación excelente y muy demandadas. Simplemente agregue R a la ecuación y puede tener una gran demanda

More Interesting

¿Los ingenieros de aprendizaje automático y los científicos de datos comparten el mismo conocimiento?

¿Qué saben los científicos de datos experimentados que los científicos de datos principiantes no saben?

¿Qué tan bueno tienes que ser en matemáticas para ser un buen científico de datos?

Como científico de datos, ¿te importa si estás ayudando a los malos? ¿O simplemente haces tus trucos, coges tu sueldo y no piensas en ello?

¿Cuáles son los 3 errores comunes que comete Data Scientist?

¿Puede un analista de datos convertirse en científico de datos?

¿Sería una buena idea unirse a un campo de entrenamiento de ciencia de datos después de recibir una maestría en ciencia de datos?

Además de ser un científico de datos, ¿cuáles son otros aspectos profesionales prospectivos con una maestría en aprendizaje automático?

¿Aprender qué herramienta / tecnología obtendría un trabajo como analista de datos?

¿Cómo es la carrera de los científicos / analistas de datos o de Big Data en su país?

Cómo conseguir trabajo de científico de datos en Pune con conocimiento sólido de Python y R

¿Qué conlleva un ROI más alto: 9 semanas de un campo de arranque de codificación que conduce a un trabajo de desarrollo web, o un programa de dos años que conduce a una maestría en ciencia de datos (y, presumiblemente, a un trabajo de análisis)?

Me encantan las matemáticas y el aprendizaje automático, pero las empresas esperan que sepa algunas cosas que no me apasionan, como Hadoop spark, etc. ¿Qué debo hacer?

¿Cómo puede alguien sin experiencia previa construir un buen currículum como científico de datos?

¿Qué distingue a un científico de datos?