7 trucos útiles para dominar un nuevo lenguaje de programación
La programación es difícil. Las únicas personas que dicen lo contrario son las que tienen años de experiencia en codificación bajo sus cinturones. ¡Está bien estar abrumado! Hay una mucho aprender y probablemente olvidará las cosas tan rápido como las aprende. Confía en mí: eso es normal.
Pero solo porque sea normal no significa que no sea frustrante. La verdad sea dicha, aprendiendo cómo codificar Cómo aprender a programar sin todo el estrés Cómo aprender a programar sin todo el estrés Tal vez haya decidido dedicarse a la programación, ya sea para una carrera o simplemente como pasatiempo. ¡Genial! Pero tal vez estás empezando a sentirte abrumado. No muy bien. Aquí hay ayuda para facilitar su viaje. Leer más puede ser extremadamente estresante si no lo abordas con la mentalidad y la actitud correctas.
Quieres aprender ese nuevo idioma o biblioteca o framework lo antes posible, ¿verdad? Eso es comprensible. Afortunadamente, hay un puñado de consejos que pueden ayudarlo a conservar mejor toda esa información de programación pesada que sigue volando en un oído y saliendo por el otro.
No más sesiones de Cram
Nadie quiere escucharlo, pero el trabajo abarrotado es la peor manera de aprender a programar. Si eres como yo, cramming era tu modus operandi Todo a lo largo de la escuela y la universidad. Es la única forma en que sabes estudiar..
Pero aprende de mis errores: Cuanto más intente abarrotar, menos recordará. Eso es bastante cierto para cualquier tema basado en el conocimiento, pero es especialmente cierto cuando se trata de la programación..
La base de esta afirmación proviene de un estudio realizado en 2008 por la Universidad de California, San Diego:
“Los estudiantes se desempeñan mejor cuando espacian sus sesiones de estudio en lugar de cuando intentan meter todo en sus noggins durante una sesión.”
¿Por qué? Lo más probable debido al efecto de posición en serie:
“El efecto de posición en serie es la tendencia de una persona a recordar los primeros y últimos elementos de una serie, y los elementos medios peores..”
En otras palabras: en cualquier sesión de estudio dada, es más probable que retenga la información que aprendió cerca del principio y al final de la sesión y más probable que olvide la información que se encuentra en la mitad de la sesión..
Quieres maximizar el número de inicios y finales. Es por eso que es mejor tener varias sesiones cortas en lugar de unas pocas sesiones largas cuando se trata de aprender y absorber material nuevo..
La próxima vez que se siente a aprender el código, tome un tema a la vez y tome un breve descanso entre cada tema. (¡Solo asegúrese de evitar que sus descansos se conviertan en dilación!)
Revisión, Revisión, Revisión
Otra razón por la que la acumulación de información es antitética a la retención de conocimientos a largo plazo es porque la memoria se desvanece con el tiempo. Esto no siempre es cierto; estoy seguro de que todos tenemos algunos recuerdos de la infancia que nunca desaparecerán, pero parece ser el caso general de los recuerdos que no están relacionados con la emoción..
Existe cierto debate sobre si la memoria en sí se descompone debido al tiempo (teoría de la descomposición) o si simplemente es expulsada y reemplazada por nuevas memorias con el tiempo (teoría de la interferencia). Cualquiera que sea la teoría a la que se suscriba, el resultado es que es más probable que los recuerdos más antiguos se desvanezcan.
Aquí es donde entra en juego la revisión..
Piensa en ello como caminar por un bosque de recuerdos.. Cada vez que desee acceder a una memoria, debe rastrear la ruta neuronal para encontrarla. Cada vez que recorres esa memoria, el camino se graba un poco más, al igual que la forma en que un camino de tierra se forma naturalmente cuando las personas recorren el mismo camino una y otra vez. Si dejas de caminar por el sendero, puede desaparecer y la memoria termina perdida en algún lugar del bosque..
Dejando a un lado toda la psicología pop, aquí está la conclusión: cuando se trata de programación, no es suficiente aprender un tema solo una o dos veces. Tienes que revisarlo docenas o incluso cientos de veces. Cada revisión graba ese tema en tu cerebro un poco más profundo.
Sé lo difícil que puede ser esto si eres un crammer natural, pero te sorprenderá lo rápido que comienzas a retener el material una vez que te esfuerzas por revisarlo regularmente..
Usa varios recursos diferentes
El aspecto más difícil de la programación, al menos para los codificadores nuevos, es la gran cantidad de detalles y matices que deben ser internalizados. Hasta que ocurra esa internalización, estarás en un estado perpetuo de rascarte la cabeza..
Dependiendo del idioma, deberás memorizar cientos de reglas de sintaxis (por ejemplo, palabras clave, punto y coma, espacios en blanco). Algunos lenguajes son más estrictos, otros lo son menos y otros tienen sus propios enfoques únicos de sintaxis que no se usan en ningún otro lugar. Todo esto puede ser confuso si no tiene experiencia previa en codificación.
Sin mencionar toda la información conceptual que trasciende los lenguajes individuales. Los temas como la programación orientada a objetos, los sistemas de componentes de entidad y los patrones de observadores realmente pueden hacer que su cabeza gire la primera vez que intenta aprenderlos..
He compartido esta ilustración antes, pero es tan importante que vale la pena repetir:
“Supongamos que alguien te mostró una fotografía de una estatua. Puede proporcionar suficiente imagen para que tengas una idea adecuada de la estatua, pero no obtendrás la imagen completa. Una foto alejada perdería detalles intrincados, mientras que una foto alejada perdería un sentido de perspectiva. Sin embargo, con fotografías adicionales tomadas desde otros ángulos, realmente puede comenzar a ver la plenitud de la estatua en textura, en tamaño, en detalle, de adelante hacia atrás, de lado a lado y de arriba a abajo..”
Aprender a programar puede ser sorprendentemente arbitrario. Todos pueden elogiar el Recurso A como la mejor manera de aprender el Idioma X, pero tal vez no tenga sentido para usted. Tal vez todos odien el Recurso B, pero echa un vistazo y ¡tiene mucho sentido! En cuanto a otra persona, tal vez se aparten cuando estudian los recursos A y B, pero se benefician enormemente del recurso C.
Por eso es tan importante que esté dispuesto a consumir todo tipo de recursos. Todos aprenden de una manera diferente. Si tiene problemas con un tema en particular, busque otro recurso. Tal vez ese sea el más adecuado para ti. Tal vez no.
Incluso si crees que entiendes ciertos temas, es posible que haya más para aprender al respecto. También es posible que la explicación de otra persona solidifique el concepto en tu mente para siempre. Nunca se sabe, ¿por qué no consumir tantos recursos como puedas??
¡Tenga en cuenta que los juegos pueden ser un recurso muy útil! Echa un vistazo a estos divertidos y educativos juegos de codificación Los 10 mejores juegos de programación para probar y desarrollar tus habilidades de codificación Los 10 mejores juegos de programación para probar y construir tus habilidades de codificación Los juegos de programación te ayudan a aprender más rápido con la práctica práctica y la experiencia --- más ellos eres muy divertido! Lee mas .
Enseña conceptos a medida que los aprendes
Hay un concepto hermoso en la programación llamada depuración de pato de goma Los principios de programación más extraños que nunca has escuchado Principios de programación más extraños que nunca has escuchado Los siguientes principios te enseñarán a ser sabio con tu código. Algunos son extraños y muchos son cómicos, pero todos son igualmente prácticos e importantes. ¡Cuidado! Leer más, que describe la técnica de explicación de un código, línea por línea, a un pato de goma inanimado. Se usa cuando se rompe un segmento particular de código, pero no hay una razón obvia para ello.
Curiosamente, la mayoría de los programadores tienen una “Eureka!” momento en el que se explica el código, ya que de repente ven dónde se produce el error en la codificación de la lógica. La verbalización desencadena un área diferente del cerebro, lo que te obliga a ver el problema desde un nuevo ángulo..
Este concepto también se puede utilizar para ayudarlo a aprender nuevo material. Es posible que haya encontrado esta cita popular que a menudo se atribuye a Albert Einstein:
“Si no puedes explicarlo simplemente, no lo entiendes lo suficientemente bien..”
Con la excepción de algunos campos que tratan con conocimientos teóricos avanzados, este dicho se mantiene. Cuanto más entienda un tema, mejor equipado estará para explicarlo de tal manera que alguien que no tenga conocimiento de dicho tema pueda llegar a entenderlo..
Lo opuesto a esto es verdad también. Cuando intenta enseñar un tema, se encontrará con ciertos conceptos que parece que no puede explicar de manera clara. Esta no solo es una forma asombrosa de diagnosticar debilidades en su conocimiento, sino que el proceso real de encontrar la explicación adecuada puede ayudar a consolidar el concepto en su mente..
Se llama aprender por la enseñanza y es básicamente un giro en la depuración del pato de goma..
Ahora, no estoy diciendo que debas actualmente enseñar a otros más bien, cada nuevo tema de programación que aprendas, trata de enseñárselo a un pato de goma (o un amigo invisible). Puede parecer tonto al principio, pero puede que te resulte increíblemente fructífero cuando se trata de la retención de memoria..
La práctica deliberada hace perfecto
La noción de talento es una completa basura. Nadie sale del útero como un violinista, luchador o programador de clase mundial. Claro, algunas personas podrían estar más inclinadas a ciertas disciplinas, pero el talento sin experiencia es inútil. No dejes que mueran tus talentos ocultos: 7 maneras de ir y encontrarlos de nuevo No dejes que mueran tus talentos ocultos: 7 maneras de ir y encontrar Nuevamente, la mala noticia es que tienes que trabajar duro con la intención de pulir tus talentos ocultos. La buena noticia es que hay más oportunidades que nunca para hacer brillar sus talentos. Lee mas . Del mismo modo, el trabajo duro es siempre más valioso que el talento..
Habiendo dicho eso, No todas las formas de trabajo son iguales.. Malcolm Gladwell acuñó la infame Regla de las 10.000 horas, que dice que debes invertir al menos 10.000 horas en un tema para convertirte en un maestro. Si bien el sentimiento puede ser cierto, muchas personas malinterpretan lo que él estaba tratando de decir..
En pocas palabras, un compromiso de 10.000 horas en realidad no garantiza el dominio. Ya sabes el dicho: “La práctica no hace la perfección. La práctica perfecta hace perfecto..” Para que tenga sentido, la práctica debe ser intencional. ¿Quieres convertirte en un experto en algo? Prueba la práctica deliberada ¿Quieres convertirte en un experto en algo? Prueba la práctica deliberada Es muy fácil sentirte abatido cuando tratas de mejorar una habilidad determinada. Usa el poder de la "práctica deliberada" para superar esas mesetas exasperantes. Lee mas . El dominio solo puede alcanzarse a través de 10,000 horas de práctica deliberada.
Cómo practicas importa mucho más que cuánto tiempo pasas practicando.
La lectura es pasiva. Ver lecciones de YouTube es pasivo. Escuchar los podcasts es pasivo. Como programador novato, puede tener la tentación de pasar de tutorial a tutorial, abordando tema tras tema sin aplicar realmente ninguno de esos conocimientos de una manera práctica. Resistir esta tentacion.
Una cosa es entender un ejemplo antes que usted, pero otra es sintetizar una solución desde cero. Si desea acelerar el proceso de aprendizaje, debe estar dispuesto a ser activo en lugar de pasivo. La práctica activa es la única que importa al final..
Experimentar con proyectos personales
Para mí, la tarea era la peor parte de la escuela. Simplemente parecía una estrategia elaborada para matar la diversión y mantener a los estudiantes ocupados, lo cual, para ser justos, a veces era cierto. Pero ahora que miro hacia atrás, la importancia de la tarea finalmente tiene sentido. Me obligó a aplicar los conocimientos recién adquiridos de forma activa..
Si está inscrito en cursos y clases de programación 11 Mejores sitios para cursos de programación de computadoras en línea gratis 11 Mejores sitios para cursos de programación de computadoras en línea gratis En estos días, puede convertirse en un programador maestro sin obtener un título tradicional en informática. ¿Dónde están todos estos excelentes recursos de aprendizaje, preguntas? Gran pregunta Sigue leyendo y te lo mostraremos. Lea más, no subestime la eficacia de la tarea. Tómelo en serio, tratándolo siempre como una oportunidad para consolidar aún más lo que ha aprendido en la memoria a largo plazo.
Pero muchas veces, la tarea todavía no es suficiente. (Y si está aprendiendo a programar por su cuenta sin un instructor real, es probable que no tenga ninguna tarea para empezar).
¿Cual es la solución? Crear un par de proyectos laterales desechables!
Piense en algunas ideas de proyectos 5 Ideas de proyectos para ayudarle a aprender más rápido Programación 5 Ideas de proyecto para ayudarlo a aprender más rápido Hay varias maneras de facilitar la curva de aprendizaje para la programación. Ensucie sus manos y aprenda más rápido con proyectos paralelos que puede comenzar en cualquier momento. Juega un poco con estos cinco. Leer más que le gustaría implementar. Para los novatos absolutos, podrías considerar un juego de Tic-Tac-Toe o Hangman. Para programadores experimentados que intentan aprender un nuevo marco, intente codificar una aplicación móvil o un juego web simple. Mientras le interese a nivel personal, hágalo!
La belleza de este enfoque es doble.
En primer lugar, es más probable que te llame la atención.. Los estudios han demostrado que los estudiantes aprenden mejor cuando pueden seguir temas que les interesan. Eso es exactamente lo que ofrece un proyecto personal. Tiene un objetivo final que realmente desea alcanzar, por lo tanto, es más probable que retenga la información que lo llevará allí..
Segundo, no hay presión para que tengas éxito. Si bien el éxito sería bueno, la falta de formalidad te permite ser experimental y creativo. Es inevitable que tengas problemas, pero es más como jugar con Lego que con la tarea. Es más divertido y no tan estresante..
Relájate y marca todo
La verdad es que ningún programador recuerda. todo ellos han aprendido Incluso después de haber estado trabajando con una biblioteca o un marco en particular por un tiempo, no es raro que no puedas recordar cada función o variable de la cabeza..
De hecho, tratar de memorizar todo podría acabar siendo una enorme pérdida de tiempo y esfuerzo. Las hojas de referencia existen por una razón. ¿Por qué guardar una enciclopedia completa en la memoria cuando puedes abrirla cuando la necesites??
Entonces, cuándo memorizar y cuándo hacer referencia.?
Cuando se trata de material conceptual, siempre internalícelo lo mejor que pueda. Con eso me refiero a entender la teoría incluso si no puedes convertirla en código real (y la teoría debería ser lo suficientemente clara para que puedas enseñarla con claridad).
Para todo lo demás, como nombres de funciones específicas, listas de parámetros o incluso peculiaridades del idioma - No me preocuparía por comprometerme con la memoria.. Siéntase libre de diferir a una hoja de referencia. A veces harás referencia a algo tan a menudo que acabarás memorizándolo. Si eso sucede, bien. Si no, eso está bien también.
Personalmente, tengo cientos de marcadores de Internet para varias API, guías y tutoriales. Si necesito implementar algún tipo de algoritmo de búsqueda de caminos, podría hacer referencia a una guía que me ayude a codificarlo antes de olvidarme de nuevo. Ayuda a comprender los conceptos subyacentes, pero trato de no preocuparme por los detalles de la implementación.
Pensamientos finales
Lo repetiré un millón de veces si tengo que: La programación es difícil y está bien si luchas con ella.. He estado programando como un pasatiempo durante más de una década y todavía me siento intimidado cuando tengo nuevos conceptos para aprender..
No te castigues si no puedes recordar todo de inmediato. Es de esperar que los consejos anteriores le sean útiles, e incluso si no lo son, siempre puede confiar en las referencias marcadas como último recurso..
¿Encuentras la programación difícil? ¿Qué tipo de trucos y consejos sabe que podrían ser útiles para los programadores novatos? Comparte tu sabiduría con nosotros en los comentarios a continuación.!
Créditos de imagen: Programador binario a través de Shutterstock, Borrador de memoria a través de Shutterstock, Código ofuscado a través de Shutterstock, Rubber Ducky a través de Shutterstock, Teclista a través de Shutterstock, PHP Código fuente a través de Shutterstock, Carpetas de archivos a través de Shutterstock
Explorar más sobre: Programación.