Programar es una de las habilidades que más le pueden dar valor a tu perfil profesional, no importa a lo que te dediques. También puede resultar frustrante por su grado de abstracción y curva de aprendizaje bastante pronunciada cuando recién comienzas. Aún así, la recompensa vale todo ese esfuerzo.
Seguramente te has enfrentado a situaciones donde algo no funciona a pesar de que seguiste al pie de la letra tu curso en Platzi, luego de clonar un repositorio en Github o hacer alguna instalación en la terminal. Puedes tener la certeza de que no has sido la única persona, ni serás la última que pase por ahí…
Así que te compartiré algunas de las técnicas y recursos que he utilizado para nunca parar de aprender en este camino. Pero ten siempre presente lo siguiente: piensa en la generalidad de tu proyecto, las probabilidades de que alguien esté haciendo exactamente lo mismo que tú son muy bajas.
Esta técnica supone que antes de darte por vencida o debes contarle estas 3 preguntas y responderlas de la forma más específica posible a un patito de hule o cualquier objeto inanimado:
¿Qué es lo que quiero lograr?
¿Qué he intentado hasta ahora?
¿Qué resultados estoy teniendo?
Vayamos por partes con un ejemplo sencillo donde respondemos a estas preguntas en forma clara:
python -m pip3 install --user plotly
es mejor que Usé el comando de instalación.pip3
y sino solo pip
.Realizar estos pasos es efectivo, pues tomas un problema inicial desde otra perspectiva e incluso puedes realizar esta técnica con otra persona.
Esta puede ser una de las partes que más frustración genera, pues cada vez que revisamos nuestro código encontramos menos diferencias. Suele ser lo más común cuando tenemos un error de sintaxis, olvidamos especificar una variable o importar una librería.
La revisión de código debe ser hecha con tranquilidad, mente relajada y mucha atención al detalle.
Trabajar más horas no significa ser más productiva, incluso la frustración puede llegar a generarte un dolor de cabeza, ofuscar tu mente y deseos desistir o peor aún generar un sesgo inconsciente de que nunca lograrás hallar una solución.
Levántate para estirar las piernas, camina un poco, realiza otra actividad que no involucre programar como meditación o toma una siesta para que tu mente descanse. Una pausa activa es una excelente opción para continuar con tu código más adelante.
Por básico que suene no debes subestimar esta poderosa práctica y si bien dicen que todos los caminos llevan a Roma apuesto a que querrás el mejor.
Haz búsquedas con términos concretos y específicos; si se trata de un error toma solo la parte que corresponde al mismo en lugar de incluir la ubicación y nombre de tus archivos. Por ejemplo, es mejor buscar el error y su referencia cómo python dictionary int object not iterable.
Cuando te digan “revisa en la documentación” no lo tomes a mal, seguramente es porque ahí encontrarás la respuesta a tus inquietudes. También es probable que ya hayas visitado documentaciones, te sientas más perdido que antes y es completamente normal.
Lee documentaciones requiere de paciencia y práctica para irse familiarizando. Hay documentaciones que pueden tener una interfaz gráfica muy amigable, otras que te indicarán cómo leerla o dar tus primeros pasos. Lo importante es animarse a dar el primer paso.
Con el paso del tiempo no solo resolverás tu duda, sino que tendrás aprendizaje directamente de tu fuente de la verdad y podrás comprender mejor aquellas tecnologías que utilizas.
Lee también: ¿Cuánto tiempo toma aprender Python?
En programación hay libros para todos, desde conceptos básicos y fundamentales hasta temas más específicos y avanzados. Así que lo primero es identificar el punto que quieres resolver, a medida que leas libros de programación identificarás editoriales de preferencia, autores y podrás interpretarlos. Recuerda siempre verificar las versiones a las que hacen referencia en el libro.
Por otro lado, muchos desarrolladores crean contenido, incluso en Platzi puedes encontrar recomendaciones o formas de complementar tus proyectos con implementaciones a través del blog y los tutoriales creados por estudiantes en los cursos. Otros sitios especializados para consulta son Medium y DEV.to
Algo que jamás debes hacer es ingresar, pedir ayuda y esperar a que esta sea resuelta a menos que solo busques frustración. Una comunidad se versa en la colaboración, así que cuanto más contribuyas en ayudar a otros será en la medida en que también aprendas y resuelvas tus dudas.
Seguramente has visitado Stack Overflow por lo menos una vez en tu vida para encontrar solución a una duda o problema y este se ha convertido en el sitio por excelencia para los desarrolladores. Solo recuerda aplicar las buenas prácticas ya mencionadas: preguntas claras, concretas y delimitadas a lo que otras personas conozcan.
Reddit es un espacio que me gusta porque está estructurado en subreddits o secciones especializadas en algo específico. Puedes encontrar comunidades por lenguaje, propósito específico como aprendizaje o compartir proyectos.
Otras plataformas que te pueden ayudar a hacer comunidad son grupos de Facebook, plataformas como Meetup y Eventbrite para asistir a eventos de comunidades especializadas en un lenguaje, tecnología o área de conocimiento particular.
Ten presente que cada comunidad puede tener sus propias reglas y código de conducta a seguir para poder participar en las mismas.
Las comunidades generalmente tienen sus canales de chat online, ya sea en IRC, Slack, Discord, Telegram u alguna otra herramienta.
También tienen sus reglas a seguir, la comunicación puede ser más dinámica pero la paciencia premia. Recuerda que todos pueden estar ocupados en algo (trabajo, estudio, múltiples conversaciones, diferencia de huso horario, etc.), así que hacer las preguntas correctas de la forma correcta te dará una respuesta satisfactoria.
Conoce: Cómo crear una cuenta en Discord
Un mentor es alguien que te ayudará a resolver dudas de forma voluntaria (no está obligado), mas no a hacer las cosas por ti. Aunque tengas su orientación debes hacerte responsable de tu aprendizaje, expresarle cuales son tus expectativas, ser respetuoso, abrirte al feedback, conocer las limitaciones de tu mentor (conocimiento, tiempo, etc.) y ser flexible.
Dentro de nuestra comunidad en Facebook puedes apoyarte del sistema de mentores, un espacio donde también tú puedes aportar a otros con tus conocimientos ¡Anímate!
Por último quiero compartirte algunos consejos:
Listo, ahora estás preparada para poder buscar información que resuelva tus dudas de forma individual o con ayuda de otros. Me encantaría que en los comentarios compartas cuales opciones son las que más te han sido de utilidad.
Muy buen aporte, aunque me parece que la comunidad que se crea alrededor de un curso podría mejorar sobre todo en el foro de preguntas y respuestas:
En fin, son algunas de las ideas que se me ocurren, alguna que ustedes puedan aportar?
¡Súper el aporte! Algo que en lo personal me ha hecho falta es un sistema de notificaciones más específico que, por ejemplo, me permita saber cuando alguien respondió a mi pregunta.
Otra cosa que también ayuda son los #retos que hacen, porque de esa manera, los interesados podemos ir probando lo que hemos aprendido, intentando resolver problemas puntuales.
La idea de la comunidad y el mentor es lo mejor. Yo en Twitter he encontrado personas que no conozco pero si les hago una pregunta ellos se toman el tiempo para responderme.
Gracias por los consejos, ahora comencé a unirme a un par de comunidades de Reddit. Estoy muy entusiasmado, hace 2 meses que comencé ye estoy muy contento con mi progreso.
Hola, soy estudiante de gastronomía y nuevo en Platzi. Hasta ahora he tomado algunos cursos de temas conocidos y me gustaría saber si el primer paso para empezar a programar sería tomar “Fundamentos de la programación” o algún curso básico de un lenguaje específico… Veo que siempre estás aportando y me gustaría tener más claro qué hacer. De antemano gracias.
La ruta de Fundamentos de Programación te va a dar las bases para abordar cualquier lenguaje 😃
Sugiero que inicies por aquí.
Lo que te recomiendo es que tomes un curso de Fundamentos de programación, para luego pasar al lenguaje de tu preferencia, una vez que domines a la perfección la lógica necesaria y conceptos básicos de la programación. Aun si consideras que ya tienes unos conocimientos previos toma un curso básico siempre es bueno hacer un repaso previo
Te recomiendo que si tomes la ruta de Fundamentos de Programación para que al tomar un curso más robusto tengas una base de conocimiento y puedas comprender mejor los temas. Estoy tomando la carrera de Javascript, y he visto muchas preguntas que me parecen “obvias” y que lo comprendí de haber tomado antes esa ruta.
Los cursos que considero que a mi me ayudaron a robustecer mis bases en programación:
Todas las tres respuestas son verdaderamente acertadas, inicia lo mas pronto!!
Gracias por la ayuda
Gracias por toda la ayuda!!!
Héctor @Terranigma muy útil tu nota!!! pude llegar a los grupos de télegram que aún no tenía y encontré nuevos recursos para consultar y compartir 😉 +1
Muchas gracias por tu comentario, recuerda compartir este blogpost con más personas a las que podría serles de utilidad.
Muchas gracias por este post. Me has subido de nuevo los ánimos para seguir aprendiendo a programar.
Muchas gracias, ya envie mi solicitud al grupo de Facebook, no estaba enterado de que existía.
Excelenete post , muchas gracias amigo!
StackOverFlow siempre me ha ayudado 😄 😄
Muy buena guía, gracias por los consejos.
Que blog tan bueno, gracias. Soy nuevo y no sabía que tenían grupos en Telegram, de hecho no sabía nada de lo que está escrito en este blog jajajajaja …y te quedó super completo Brother… gracias de nuevo.
Buen tema, gracias por compartir tu conocimiento.
Voy lento, me cuesta mucho aprender a programar claro esta. Pero la comunidad de platzi siempre me contesta rapidisimo y con muy buena onda, asi cualquiera se entusiasma
Muchas gracias por las recomendaciones!
Excelente aporte. Soy nuevo y me estoy empapando de como funciona esta comunidad.
super valioso, muchas gracias!!
Me alegra saber que mucho de esto ya lo aplico.
El confiable stackoveflow
Gracias por las recomendaciones. Creo que falto, practicar. Todo lo que aprendas, llevarlo a la practica.
Excelente esta publicacion, la unica tecnica que no he implementado es la del pato de hule, pero si lo ves tiene bastante sentido la implementare y de todas las que mas me ha funcionado es la pausa activa, la recomiendo altamente, un saludo a toda la comunidad
Gracias. Por muchos mas de estos post.
Es alentador leer a gente que ha podido superar los tropiezos y retos que hay cuando uno quiere aprender o retomar algún lenguaje de programación. Llevo poco tiempo utilizando platzi y veo que la COMUNIDAD es lo que hace fuerte este proyecto. Gracias a todos los que aportan!!! leerlos también aporta conocimiento!
me encanta, gracias!!
Si, resulta bastante molesto y llega a frustrar un poco no encontrar respuestas de una manera directa, pero por otro lado creo que es lo bonito de programar. Te obliga de una manera a buscar información, leer y tomarte tu tiempo para lograr aprender.
“Seguramente te has enfrentado a situaciones donde algo no funciona a pesar de que seguiste al pie de la letra tu curso en Platzi”, a lo que añadiría “y te dieron ganas de golpear la pantalla, prenderle fuego al teclado y maldecir a los dioses de la programación”…
…perdón… si, si estoy bien [sorbito de agua] 😅
Esto ayuda muchísimo a las personas que recién están comenzando a programar como yo 😄
Muy buen post, gracias por compartir.
Por otra parte, me uno a la sugerencia que lei unos aportes mas abajo, ya lo había pensado realmente, y es que seria fascinante que se pudiéramos saber cuando fue contestada una pregunta