¿Qué lenguaje de programación debo aprender si tengo la intención de obtener un título de posgrado (M.Sc) en robótica o mecatrónica?

Si aún no conoce uno, casi cualquiera lo hará. De Verdad. La curva de aprendizaje entre cero idiomas y un idioma es bastante pronunciada. La curva de aprendizaje entre un idioma y dos es muy superficial en comparación; Si conoces un idioma decente, puedes aprender casi cualquier otra cosa con bastante facilidad a menos que sea realmente extraño (Prolog, te estoy mirando).

Dicho esto, si tuviera que comenzar con uno, elegiría Python. Tiene todas las funciones, tiene un conjunto de características bien pensado y una sintaxis sensata, y hay muchos buenos investigadores que publican código.

Mis dos segundos serían C (porque prácticamente todo el código de bajo nivel está escrito en él, eventualmente lo encontrarás) y Matlab (porque es lo que usa el 75% de la industria y muchos académicos). Pero bajo ninguna circunstancia * comenzaría * con ninguno de estos.

La curva de aprendizaje para C es realmente dolorosa, es un nivel demasiado bajo. Te obliga a administrar tu propia memoria, no tiene muchas bibliotecas agradables, por lo que terminas escribiendo mucho más de lo que lo harías para otros lenguajes, y los punteros, un concepto básico en C, están más allá de la comprensión de la mayoría de las personas. que no saben codificar

Y Matlab es básicamente un lenguaje pirateado que casi te obligará a aprender muchos malos hábitos que tendrás que desaprender más tarde. * Casi * implementa muchas cosas interesantes, como construcciones de programación funcional, pero no lo suficientemente bien como para que sean realmente útiles. Entonces terminas usándolos a medias.

Como dijo Carl Henshaw, cualquiera. El lenguaje de programación casi nunca es una restricción. Estoy completamente de acuerdo con las palabras:

La curva de aprendizaje entre cero idiomas y un idioma es bastante pronunciada. La curva de aprendizaje entre un idioma y dos es muy superficial en comparación; si conoces un idioma decente, puedes aprender casi cualquier otra cosa con bastante facilidad a menos que sea realmente extraño

La mayoría de los obstáculos que enfrentará en el área de programación estarán relacionados con la lógica y los algoritmos y estos problemas rara vez dependen del idioma. Lo que quiero decir es que el concepto para ordenar una tabla será el mismo en C, Java o Matlab. Algunos pueden tener una función incorporada, otros pueden pedirle que lo defina usted mismo. Sin embargo, la lógica que usará, es decir, comparar números entre sí será la misma.

Sin embargo, sugeriré comenzar con un lenguaje que sea muy básico. No estaré de acuerdo con Carl aquí en que no deberías comenzar con C. En mi opinión, C es un lenguaje bastante versátil y sí, te hace trabajar un poco más en comparación con Python. Sin embargo, este esfuerzo adicional lo ayudará a comprender los intrincados procesos de cómo se consume la memoria o cómo hacer que su código sea menos pesado en el tiempo y el espacio, etc. Aprender de lo básico siempre ayuda, ya que generará y solidificará su concepto básico en la lógica. Puede usar esas lógicas en cualquiera de los idiomas que desee.

Parafraseando a Carl, aprender el primer idioma es como definir una biblioteca completa. Aprender un segundo idioma es como hacer un diccionario o un traductor. Una vez que comprenda lo suficiente su primer idioma, puede aprender nuevas formas de escribir los códigos o la sintaxis en varios idiomas, simplemente refiriéndose a sus libros introductorios.

Si ya tiene una admisión en alguna universidad, entonces comience a aprender el mismo idioma que está utilizando su laboratorio de investigación. Si está planeando hacer M. Sc en un futuro próximo y desea comenzar el idioma ahora, es posible que desee mirar aquí Robot Operating System. Lo mejor sería mirar las páginas web de sus probables laboratorios futuros para ver qué idioma están usando, los laboratorios de investigación donde podría estar solicitando su maestría.

cualquier respuesta estará desactualizada para cuando ingrese a la escuela. Siempre habrá evolución. Obviamente, la IA es el dominio bruto.
Lista de lenguajes de programación para inteligencia artificial.

C. En la mecatrónica, a menudo trabajas con procesadores o MCU orientados al hardware, que se programan en C para que interactúen con el hardware.