Una vez que tenga una comprensión básica de la programación, ¿facilita el aprendizaje de otros idiomas?

Lo hace. Mi mantra “Enfócate en un lenguaje de programación, el descanso será conquistado en un instante”.

Aprendí python en una semana (menos de una semana). Desarrolló un algoritmo utilizando la estructura de datos de la lista y contribuyó al proyecto de código abierto . Todo esto sucedió en un mes. ¿Cómo?

Practico la programación desde febrero de 2015 en Java. Lo que realmente ayuda a entender la programación:

Sólida comprensión de conceptos como:

1. Condiciones
2. Loops
3. depuración
4. Funciones existentes

Para evolucionar como un buen programador:

1. Debe saber cómo iterar a través de una matriz o lista de diferentes maneras para obtener diferentes valores o índices.
2. Clasificando
3. Buscando
4. Recursion

Obviamente, hay mucho que aprender, pero desde mi experiencia, creo que estos conceptos son críticos para comenzar su viaje de programación (para obtener el impulso). ¡¡Todo lo mejor!!

Mayormente sí.

La verdadera habilidad detrás de la programación no es la memorización de la sintaxis y los detalles de un lenguaje, sino la capacidad de analizar problemas e inventar soluciones que las computadoras saben cómo entender. Esto significa que aprenderá cómo funcionan las computadoras (la CPU, la pila, el montón, los hilos, los datos binarios, etc.), aprenderá sobre las formas comunes de manejar datos (matrices, enteros, elementos flotantes, quizás objetos y diccionarios, Unicode y ASCII, etc.), aprendes cosas como funciones y bucles, aprendes las soluciones de sabiduría común para los problemas cotidianos y practicas pensando en cómo los grandes problemas complejos se pueden dividir en muchos de esos pequeños problemas cotidianos.

Una vez que tienes esa habilidad, los detalles del lenguaje en sí son relativamente triviales. La mayoría de los conceptos, técnicas, prácticas, etc. se transfieren entre diferentes idiomas; te encuentras diciendo “Oh, sé exactamente cómo resolver este problema, solo necesito descubrir cómo expresar la solución en este lenguaje en particular”. Tal vez el nuevo lenguaje funcione de manera un poco diferente, tal vez no le permita mutar variables o no tenga clases, pero la computadora subyacente sigue siendo la misma, muchas o la mayoría de las soluciones populares aún se transfieren de alguna forma, y toda su práctica pensando en resolver grandes problemas y explicarlos a las computadoras sigue siendo relevante.

Por supuesto, depende de los idiomas. Algunos idiomas pueden ser muy diferentes: pasar de Visual Basic a Erlang será un gran esfuerzo y tendrá que aprender muchas características nuevas. Pero todavía no será tan difícil como aprender Erlang sin conocer a VB de antemano. Otros idiomas son muy fáciles: ir de Python a Ruby o Erlang a Elixir es muy fácil.

En general sí. La mayoría de los lenguajes de programación comparten conceptos similares, y aprender la nueva sintaxis de esos conceptos es fácil si ya los conoce. Se tarda un poco más si el nuevo lenguaje introduce conceptos con los que no está familiarizado (como pasar de un lenguaje de procedimiento como Pascal o C a uno orientado a objetos como Java o Smalltalk), pero lleva mucho menos tiempo aprender Java de Pascal que hace aprender a Pascal de la nada.

Pero hay algunos idiomas que son tan diferentes que la familiaridad con otros idiomas no ayuda mucho, como el Prolog.

Sí, es mucho más fácil aprender un lenguaje de programación si conoce los principios de programación y un lenguaje.

Los principios son casi los mismos para la mayoría de los idiomas, de modo que cuando comienza a aprender uno nuevo, debe comprender su sintaxis y su especificidad, que es mucho más fácil que entender qué son los bucles, funciones, clases, incapsulación y por qué necesita ellos.

Por lo tanto, aprender un nuevo idioma es como estudiar para conducir un camión cuando tiene experiencia en conducir un automóvil. Es casi lo mismo, pero tiene algunos detalles. No es necesario volver a aprender sobre los semáforos o las señales de tráfico, porque ya lo sabe, pero necesita entender cómo lidiar con la visibilidad constante y las nuevas dimensiones externas.