Haces un punto interesante, pero yo diría que no empieces con un lenguaje fácil de aprender, pero hazlo en tu propio tiempo / centavo en lugar de pagar la matrícula. Sugeriría python 2.x a menos que ya tenga experiencia con algún otro idioma o una razón convincente para elegir un idioma diferente.
Ese es el resumen ejecutivo, el resto de mis respuestas expone mi razón de ser.
Necesita al menos un lenguaje de computadora que conozca lo suficientemente bien como para escribir pequeñas porciones de código para probar las ideas en el curso. Hay un aspecto de pollo / huevo en su pregunta. Si primero toma el curso de estructuras de datos y algoritmos, es probable que obtenga más beneficios de cualquier clase de idioma posterior. Por otro lado, tener al menos un idioma en el que pueda jugar con los conceptos presentados en el curso de estructuras de datos tiene un beneficio similar.
- ¿Cuál es el algoritmo para integrar una función usando un programa de computadora?
- ¿Qué significa Yoshua Bengio que la principal limitación de los algoritmos de aprendizaje automático actuales es que necesitan demasiados datos para aprender?
- Cómo resolver la recursividad cuando no tienen caminos claros
- ¿Qué programas pueden determinar las instrucciones de plegado de origami para una forma tridimensional dada?
- ¿Cuál es la forma más compleja de reducir 1 + 1?
Como camino intermedio, sugiero retomar los conceptos básicos de un lenguaje “fácilmente accesible” para que tenga herramientas suficientes para jugar con las ideas presentadas en la clase de estructuras de datos.
Esto no significa convertirse en un experto en ese idioma. Solo los conceptos básicos del flujo de control, etc. No se preocupe por las bibliotecas avanzadas porque la idea es poder implementar sus propias implementaciones para maximizar la comprensión.
Un desarrollador real no reinventaría la rueda de esa manera cuando pudiera usar una solución lista para usar, pero eso anularía el propósito del ejercicio, que es tener un banco de pruebas para jugar con las ideas del curso.
Ahora, ¿qué quiero decir con “fácilmente accesible” algunos criterios:
- Curva de aprendizaje baja o nula
- Gastos de bolsillo bajos o nulos
- Temporalmente Relevante
- Máxima productividad
Si ya conoce un idioma que satisface 1. Si no, elija algo fácil de aprender. No desea gastar dinero y no debería tener que disfrutar de sus muchos entornos de desarrollo agradables que tienen ediciones de “comunidad” o que de otro modo son gratuitas en Internet. El número 3 significa evitar los idiomas especializados o moribundos, también podría elegir un idioma que sea ampliamente utilizado y que esté creciendo en popularidad. Finalmente, 4 aborda el punto de que no quieres un lenguaje que se interponga en tu camino cuando tratas de jugar con estas ideas. C ++ es un ejemplo de una elección potencialmente mala, tiene una curva de aprendizaje empinada y una sintaxis gruesa que tiende a interferir a veces, especialmente para un principiante cuyo objetivo principal es aprender.