🤓 Aprende cualquier cosa en 10 sencillos pasos

Publicado por

Todos los días, los desarrolladores de software nos encontramos con herramientas nuevas o que no conocíamos. Muchas veces, nuestros clientes o empleadores nos piden aprender alguna tecnología porque encontraron el potencial de mejorar los productos. Nosotros los desarrolladores, al analizar el mercado, nos damos cuenta que necesitamos aprender nuevas cosas para alcanzar la posición o el trabajo en la empresa deseada. Para lograr adquirir nuevas habilidades, necesitamos una metodología que nos permita aprender de forma eficiente. En este post te quiero mostrar como aprender una nueva habilidad o reforzar las que ya tienes en 10 sencillos pasos y que te van a ayudar a alcanzar tus objetivos y a crecer en tu carrera profesional como desarrollador de forma exponencial. 

Introducción

Todos hemos aprendido algo nuevo por nuestra cuenta, buscando tutoriales, videos, leyendo libros, etc. Hacemos esfuerzos por buscar la información, pero muchas veces, si no es que todas las veces, lo hacemos como entendemos. Incluso después de egresar de la universidad, no dejamos de aprender cosas nuevas. Sin embargo, algunos no tenemos una forma estructurada de aprender algo nuevo.

Yo he encontrado una forma de aprender algo nuevo, de forma estructurada y en 10 pasos. Estos 10 pasos son parte del libro “Soft-skills: The software developer ‘s life manual” de John Sonmez. Personalmente lo he probado para aprender que es gRPC y como hacer un servicio gRPC con Spring Boot y Java. Admito que mis skills técnicos han mejorado en muchos aspectos. Si tu quieres comprar el libro, abajo vas a encontrar la liga para que puedas comprarlo en Amazon. Recuerda que esta liga es de referidos y que si la compras con esta liga, yo voy a poder ganar una comisión para poder seguir publicando en mi blog.

Success isn’t a clear road for software developers. There’s too much information and it can feel overwhelming. Many developers get stuck and have no idea what to do next.
Soft Skills aims to solve this. To give you a clear path with actionable steps for your career (and life). So you can get back to what you enjoy doing… solving unique puzzles and fun problems.
Most books talk about how to improve your career. Or how to pass interview questions.

Paso 1: Obtén una vista general de lo que quieres aprender

Para aprender algo nuevo, hay que conocer, en términos generales, que es lo que puedes lograr con el conocimiento que quieres adquirir. Este paso es muy importante porque aquí puedes ver y relacionar lo que ya sabes con lo nuevo que vas a aprender y te va a mostrar lo que desconoces que desconoces. También te da una idea de todas las cosas que puedes hacer con este nuevo conocimiento. Este plano general te va a ayudar a entender que puedes dividir este nuevo conocimiento en partes que más adelante puedes retomar. 

Trabajamos con un ejemplo: supongamos que quieres aprender a programar en Go. En esta etapa vas a aprender qué es Go, que tipo de aplicaciones puede ser, sus ventajas y desventajas sobre otros lenguajes de programación, etc. 

Paso 2: Concéntrate en un tema

Después de ver el plano general de lo que quieres aprender, es momento de elegir un tema y enfocarse. Cuando se aprende algo nuevo, es muy fácil llegar a la frustración, porque no nos limitamos a un tema en particular. Queremos aprender todo sin antes de poner manos a la obra. Necesitas enfocarte en un tema que sea manejable para ti, tal vez en un tema que tenga algo de relación con lo que ya sabes. En este punto y en los siguientes, va a ser muy tentador querer expandir el tema. Enfócate en el tema que hayas elegido y en el futuro puedes volver a retomar a partir de este paso para aprender otro tema o una extensión del mismo. 

Siguiendo con el ejemplo de aprender a programar en Go, supongamos que ya sabes que es un servicio RESTful, entonces vamos a limitar nuestro tema: Aprender a hacer un simple API REST utilizando Go.

Paso 3: Define el éxito

Este paso es muy importante porque aquí vamos a definir cuál es el resultado final del nuevo conocimiento que vamos a adquirir. En este paso, necesitas ser muy específico y conciso con el resultado a obtener. Este resultado puede ser diferente dependiendo del tema que quieras aprender. Puede ser tener algo tangible o intangible. 

Siguiendo con el ejemplo de aprender a programar en Go, el éxito va a ser: Desarrollar un API REST en Go, capaz de recibir una petición por cada método HTTP, responder con código 200. 

En este caso, nuestro ejemplo es un resultado tangible. Un resultado no tangible puede ser: aprender y describir cada uno de los métodos y códigos de respuesta HTTP para desarrollar un API REST. Puedes definir el éxito como tangible o intangible dependiendo del conocimiento previo que ya tienes. 

Paso 4: Busca información del tema

Es hora de hacer tu investigación para lograr el éxito definido en el paso anterior. Necesitas buscar información de diferentes fuentes como: blog posts, libros, videos, repositorios de código y documentación, etc. Vas a buscar tantas fuentes como sea posible, ya que esto te va a permitir ver los diferentes puntos de vista de los autores y obtener explicaciones que te funcionen más. En este paso todavía no vas a consumir todos estos recursos, solo es crear una lista de recursos potenciales que te van ayudar a aprender.

Siguiendo con el ejemplo, una fuente de información que no deberías descartar es la documentación del lenguaje Go, la documentación de las librerías y métodos. También, puedes buscar algunos expertos en Go y agregar sus posts, libros o videos. Por último, puedes ir a Github y buscar un repositorio de código que tenga un servicio API REST similar a como tu lo definiste en el paso 3 y de ahí tomar como ejemplo de como lo hicieron. 

Paso 5: Crea un plan de aprendizaje

Una vez que ya obtuviste las fuentes de información, es momento de ordenarla. En este momento, es posible que ya tengas una idea de cuales son los subtemas del tema que elegiste o cuales son, a grandes rasgos, los pasos necesarios para lograr el éxito. Tu plan de aprendizaje se vería muy similar al índice de un libro. Si todavía no sabes como hacerlo, puedes ver el índice de cursos en Udemy o el índice de un libro y estructurarlo de una forma similar pero con tus fuentes de información. Es posible que estos cursos y libros abarquen más cosas de lo que quieres lograr, es por eso que es muy importante mantener  a la vista el tema y el éxito que quieres lograr.  

Paso 6: Filtra la información que no necesitas

Hacer el plan de aprendizaje del paso anterior te va a ayudar a descartar fuentes de información que no están alineados a tu tema, a tu éxito, están duplicados o cubren más de lo necesario. Va a ser tu lista de fuentes de información más pequeña pero también más específica a lo que deseas aprender. Quizás puedes dejar algunos recursos duplicados, ya sea porque te agrada como explica cierto autor o porque te la recomendaron, pero procura que no sean más de 2.  Una forma también de descartar la información es viendo los reviews de los libros en las tiendas en línea, leer los comentarios en los blog posts o los likes y comentarios de los videos. 

Paso 7: Aprender lo suficiente para empezar

A partir de este paso empieza lo más divertido, lo que más me emociona: aprender. El autor describe los siguientes pasos como Aprender, Hacer, Aprender, Enseñar

En este paso en particular, vamos a enfocarnos en aprender lo mínimo necesario para poner manos a la obra, para entrar en la acción. ¿Por qué aprender lo mínimo necesario? Porque vamos a dejar espacio para explorar por nosotros mismos, porque aquí es donde aprendemos mejor. Una vez que aprendemos lo mínimo necesario, es posible que vayamos brincando entre este paso y los siguientes para consultar la información mientras hacemos lo que tengamos que hacer para lograr el éxito. En este paso, no necesitas consumir absolutamente toda la información de tu plan de aprendizaje.

Retomando nuestro ejemplo, en este paso vamos a instalar un IDE, el compilador del lenguaje Go y hacer un “Hello World” para saber que todo se ha instalado correctamente. 

Paso 8: Empieza a jugar

En este paso vamos a poner manos a la obra. A algunos les provoca emoción y miedo, es completamente normal porque vamos a empezar a hacer algo desconocido para nosotros. Puedes ejecutar este paso como quieras o mejor entiendas, no hay reglas para hacerlo. Este paso es muy importante porque aquí vas a obtener el conocimiento que más importa para lograr el éxito. 

¿Recuerdas la frase de Benjamin Franklin? “Dime y lo olvido, enséñame y lo recuerdo, involúcrame y lo aprendo”. Hacer este paso es involucrarte porque si solo lees los recursos, lo vas a olvidar. 

Cuando te pongas manos a la obra, las preguntas van a surgir casi de forma natural. ¿Cómo funciona esto? ¿Esta es la única forma de llegar a esto? ¿Qué pasa si cambio algo aquí? Todas estas preguntas te van a llevar a lo importante y vas a regresar a tus fuentes de información para encontrar las respuestas.

Siguiendo con nuestro ejemplo, algunas dudas que puedan surgir pueden ser: ¿Como hago para responder en formato JSON? ¿Cómo puedo cambiar el puerto HTTP de mi API REST? ¿Como puedo obtener las cabeceras de la petición o enviar cabeceras a la respuesta?

Para este paso, ya debes tener tu API REST funcionando tal y como lo definiste para lograr el éxito. A partir de aquí, hay que reforzar el conocimiento y experimentar. 

Paso 9: Aprender lo suficiente para hacer algo útil

En este paso vas a retomar las preguntas que te hiciste en el paso anterior y las vas a responder. Ya sea consultando en tus fuentes de información o experimentando con lo que estás haciendo para lograr el éxito. Este paso puede sacar tu toda tu creatividad e imaginación y esto es crucial para tu aprendizaje. Puedes regresar a lo que estás haciendo para lograr el éxito las veces que quieras, cambiar, modificar, etc; no tengas miedo. Puedes regresar a tus fuentes de información las veces que quieras y leer las partes importantes, no necesitas leer todo. 

Para el aprendizaje de ejemplo, en este paso ya debes tener tu API REST funcionando y corriendo en tu computadora, ya puedes hacer pruebas con Postman u otra herramienta. Ya hiciste cambios y experimentaste con tu código. Es posible también que ya tengas una estructura de datos donde tengas algo almacenado y que tu API haga las operaciones CRUD  a esta estructura. 

Paso 10: Enseña lo que has aprendido

Enseñar es una parte fundamental en nuestra carrera profesional. Podemos enseñar a través de diferentes recursos: blog posts, videos de YouTube, tutoriales o subir nuestro código a un repositorio. ¿Te acuerdas del paso 4? Exacto, alguien más también estaba aprendiendo lo que tu estas aprendiendo en este momento y decidió enseñar a través de estos recursos que tú has encontrado en el paso 4. Enseñar es, muchas veces, el plus que puedes tener por sobre todos los programadores, y que va a impulsar tu carrera un poco más que a otros que solo aprenden. 

Admito que enseñar es difícil, a mi todavía me cuesta trabajo hacer mis posts, redactar mis guiones para mis videos y hacer los propios videos. Pero he notado un gran avance desde mi primer post y guión a este último. Enseñar no solo es mostrar lo que sabes, es captar las preguntas que los demás tienen y que te ayudaran a profundizar tu conocimiento y tu entendimiento del tema. No necesitas saber la respuesta a todas las preguntas, y de hecho esto es bueno porque, las preguntas de los demás también te van a ayudar a aprender, similar a como lo hiciste en el paso 8 y 9.  

Conclusión

Intenta escribir un post, un tutorial, responder preguntas en StackOverflow o subir tu repositorio de código y explicarlo. Repitete a ti en voz alta lo que has aprendido, habla con una persona de tu confianza acerca de ello, haz una presentación en la empresa donde trabajas, hay muchas formas de cómo enseñar a los demás. Al hacer esto, vas a simplificar la información y tu cerebro va a crear un mapa mental relacionando todo lo que ya sabes de antes con lo nuevo. Enseñar te va a ayudar a retener la información por más tiempo. Y recuerda: el aprendizaje es temporal, el entendimiento es permanente.

Rate this post

Deja un comentario