El “infierno de los tutoriales” es un callejón sin salida en el que te puedes ver cuando intentas aprender un lenguaje o un framework nuevo. Cuando sientes curiosidad por una tecnología lo primero que haces es mirar un par de tutoriales sobre ella.
La situación es la siguiente: ves el primer tutorial, te gusta el tema, así que decides buscarte otro para seguir montando cosas con ella, quizás incluso te haces algún curso on line. Vas siguiendo los materiales sin problema y durante el proceso te da la impresión de que estás aprendiendo mucho.
En la pantalla de tu ordenador empiezas a montar cosas, pero al mismo tiempo no te ves preparado para seguir por tu cuenta, no sabes qué hacer cuando no tienes a alguien al otro lado de la pantalla que te lo indique.
Así que te metes en otro tutorial, y luego otro, y otro… La cuestión es que cuando intentas salirte de los contenidos que has visto eres incapaz de avanzar por tu cuenta.
¿Cómo salir del infierno de los tutoriales?
Lo mejor es dejar los tutoriales y crear tu propio proyecto. Empieza algo desde cero. Algo sencillo, como un script que realice una tarea muy específica. Piensa en alguna tarea de tu día a día que quieras automatizar, la idea es hacer algo que te sea útil, ya que así tendrás la motivación para continuar.
Si no se te ocurre nada, puedes recurrir a la página project Euler. Ésta página contiene una lista de problemas (soluciones aquí) que puedes resolver utilizando cualquier lenguaje.
Gracias a ésta página, puedes practicar con cualquier lenguaje de programación y al mismo tiempo entrenas tus habilidades de resolución de problemas. Además, te sirve para comparar el dominio que tienes con varios lenguajes, ya puedes volver a la lista cada vez que aprendes un lenguaje nuevo para ver hasta dónde puedes llegar. Incluso puedes cronometrar para ver cuánto tardas en resolver cada problema, o medir los tiempos de ejecución para ver si tus soluciones son eficientes.
Ten en cuenta que los problemas que aparecen son matemáticos, por ejemplo encontrar números primos o sumatorios de números que cumplen condiciones. Por ello, la tecnología que uses para resolverlos debe tener buen soporte para la aritmética. Prácticamente cualquier lenguaje de programación lo tendrá, pero los problemas no sirven para aprender a usar una base de datos o frameworks para muchas tareas específicas. Otra opción es usar Hackerrank, que incluye problemas de lógica y razonamiento.
Puede que al ver el tipo de problemas que hay en éstas páginas pienses que no es muy útil resolverlos, pero lo cierto es que son muy frecuentes en entrevistas de trabajo, y te ayudarán a desarrollar tus habilidades lógicas, algo muy importante en programación y que no se suele cubrir en los tutoriales. Cuando seas capaz de solucionar éstos problemas, verás que te resulta más fácil pasar tus ideas a código.
Para bases de datos o herramientas front puedes crear un sistema imaginario, no real. Puedes probar a hacer la base de datos de un almacén o desarrollar alguna utilidad sencilla.
Los ejemplos más típicos son un bloc de notas o una lista de tareas. Son ideas fáciles de implementar y que te permitirán practicar con ambos tipos de tecnologías ya que necesitan una base de datos para garantizar la persistencia de los datos y una interfaz para mostrar los textos, crearlos, modificarlos, etc…
Si lo que quieres es crear un proyecto más complejo y adquirir las habilidades necesarias para hacer desarrollos profesionales, seguramente necesitarás algo de ayuda. En OXYGEN ofrecemos un Bootcamp Full Stack y un Training para programadores que ya han tenido su primer contacto con el código y que quieren dar el siguiente paso.
Durante la formación desarrollarás un proyecto de la mano de tu mentor que te guiará durante el proceso. No sólo te servirá para perfeccionar tu dominio con las tecnologías implicadas, sino que aprenderás el workflow de desarrollo en entornos profesionales, que es muy diferente a programar por tu cuenta. Así, podrás salir por fin del infierno y convertirte en programador.
Autor
Manuel Torres
Selección de talento en OXYGEN