En el sector del desarrollo de software salen cada día nuevas tecnologías que queremos o necesitamos aprender. Hacemos cursos o tutoriales para ir aprendiéndolas pero si no las practicamos lo suficiente no asentamos los conceptos. Además en mi caso me gustaría poder consultar esos ejemplos que voy haciendo y ver tanto cómo lo hice, el código y el resultado (la página/aplicación web).
En estos últimos meses estoy explorando más GitHub para consultar otros casos de uso de GitHub Pages y veo que mucha gente crea repositorios para alojar el código que desarrolla en cursos que hace.
Una idea que estoy explorando es cómo utilizar GitHub Pages para mostrar el resultado de la mejor forma y para ello me he propuesto hacer una serie de cursos que tengo pendientes y publicarlos con GitHub Pages de formas distintas, a ver cuál se adecúa más a lo que necesito.
En mi caso voy a realizar proyectos con sólo código de cliente (html, css y JavaScript), aunque se podrían realizar proyectos full-stack como el que propone Ángel M. Miguel en la charla de Cómo desplegar tus proyectos Open Source.
Y esto me lleva a una pregunta que hice en twitter sobre consejos para proyectos personales, porque al final se trata de un proyecto personal que me gustaría que no muriera en el intento: Realizar los cursos que tengo pendientes y publicarlos para consulta de una forma que me pueda servir en el futuro (con documentación y accediendo al código y al resultado).
En el hilo salió una charla que engloba muchos de los consejos que dijeron en twitter, Cómo terminar los proyectos personales que se empiezan …o no, de Carlos Cabo.
En cuanto a los consejos que me dieron en twitter los voy a dividir en secciones, espero que así puedan utilizarse mejor.
Deadline y MVP
Muchas de las personas comentaron que les resulta útil tener una fecha de finalización, aunque también las hay que preferimos dividir el proyecto en partes pequeñas y no usar un deadline fijo, por el agobio que supone o porque nos frustramos si no lo cumplimos (Alex Jover).
También se comentó que es importante definir bien qué queremos hacer, tener un mínimo producto viable y limitarse a eso, lo que se salga del MVP no se hace (Jorge del Casar). Si diera tiempo se pueden añadir más funcionalidades (Ángel M. Miguel). Y dividir las funcionalidades en obligatorias, “nice to have” e ideas locas (Belén Albeza).
Proyectos cortos
También resulta muy útil dividir los proyectos en otros más pequeños para que dé tiempo a acabarlos antes de que acabe la motivación o se quieran empezar otros proyectos (Ángel M. Miguel). Hay gente que tiene muchas ideas y quiere empezar con ellas dejando las anteriores atrás. Así ya tienes una versión de tu proyecto acabada y tienes algo que enseñar. Tener un proyecto de 1 ó 2 semanas, o incluso un proyecto de un fin de semana puede ser una buena opción.
Empezar ahora
También aconsejan no procrastinar y empezar ya a implementar la idea (Jimena Catalina). Empezar a hacer lo que te pida el cuerpo (Naiara Abaroa) y aprovechar la motivación. No limitarse por no saber cómo acabarán, en el proceso irás aprendiendo.
Una buena idea cuando la motivación decae es dedicarle un rato y no empezar otros proyectos hasta terminar éste (Nazarí González).
Probar cosas nuevas
Hacer un proyecto probando alguna tecnología nueva puede ayudar a que te pongas con ello (Jorge Aznar). También evitar que se vuelva rutinario, para que no pierda la gracia (Beatriz Zarzo).
Contarlo
Otra buena idea para continuar con ello es contar la idea a tus amigos (Ángel M. Miguel) y escuchar otras opiniones. Te ayuda a decidir si empezar con ese proyecto o empezar a pensar en otro. El involucrar a otras personas en el proyecto puede ayudar también a motivarte (Lucía Mayor).
Dejar que el proyecto evolucione
Estar abierto a que el proyecto cambie, no obsesionarse con un sólo resultado. A medida que el proyecto avance, éste puede cambiar e ir tomando su forma (Lucía Mayor).
Disfrutar con el proceso
No olvidarse con los proyectos personales son para disfrutar (Alex Jover).
No pasa nada si no se acaban
No acabar las cosas no tiene por qué ser malo. Lo importante es hacer (Naiara Abaroa).
Hacer listas
Hacer listas con objetivos concretos y alcanzables para poder ir tachándolos conforme los haces (Beatriz Zarzo).
Recompensa
Buscar algo que te motive a finalizarlo, al final nos motivan los beneficios (Azahara Fernández).
¿Es lo que quieres hacer?
Asegúrate de que es lo que quieres y que es el momento adecuado (Julieta Cuadrado).
Usar técnica Pomodoro
Si lo que necesitas es tiempo, prueba a usar la técnica Pomodoro. Y ver cuándo eres más productivo (Julieta Cuadrado).
¿Qué tiempo quieres dedicar?
Evalúa cuánto tiempo tienes libre y cuánto podrías dedicar a la semana (Laura Lacarra).
Generar ideas
Si hay más gente involucrada hacer inception o design thinking para coger ideas (Laura Lacarra).
Usar herramienta de organización
Usar Trello o Taiga.io (la que yo estoy usando) para organizar las tareas (Julieta Cuadrado, Laura Lacarra).
Descansar
Deja un día a la semana para descansar (Julieta Cuadrado).
Aprovechar el modo difuso
Muchas veces se nos ocurren ideas cuando no estamos concentrados en el proyecto. Esto lo aprendí en el curso Learning how to learn. También puedes usar tiempos muertos para pensar en los siguientes pasos, ya sea conduciendo, en el metro, cocinando, etc (Julieta Cuadrado).
Ayúdate con libros
Si tu objetivo es aprender focaliza qué quieres aprender y realiza los pasos con documentación/libros (Laura Lacarra).
Haz revisiones en el proceso
Buscar métricas de cómo avanza el proyecto y cómo sigues involucrado en él. Muchos proyectos pierden la magia por el camino porque ya has sacado de ellos lo que querías y lo importante no era lo que pensabas como fin último sino alguna parte del proceso (Julieta Cuadrado).
Motivación
Si vas a trabajar por duplicado necesitarás algo que te atraiga mucho (Juan Ignacio Sánchez).
Quererse mucho
Quererse lo bastante para perdonarse las equivocaciones que surjan (Julieta Cuadrado).
Ideas para solucionar problemas
Si lo que no sabes es con qué ponerte, busca una idea que solucione un problema que tengas (Antonio García).
Documentar
Mantener el README, la documentación y versión actualizados (Salva de la Puente). Así sabes en qué fase está y otros lo pueden utilizar.
Acabado antes de perfecto
No intentar que el proyecto sea perfecto (J.J. Merelo).
Dejar madurar la idea
Superar el flechazo del “eureka” y dejar madurar la idea días, semanas, meses… (Mikel Torres).
Aficiones
Que sea una temática que te guste, por ejemplo una afición que tengas, así no suele costar ponerse (Jorge Sánchez).
Usar APIs
Se pueden mirar APIs públicas en el proyecto de Todd Motto que nos dén ideas de lo que podríamos implementar.
Otros consejos sobre proyectos personales:
Aprender en el trabajo
Me gustaría terminar dejando un artículo interesante sobre cuándo podemos aprender. Está escrito por Julia Evans y se titula Learning at work. Da muchos consejos útiles para poder aprovechar el tiempo en el trabajo para aprender.
To be Continued…
Ya iré actualizando cómo voy con mi proyecto personal “Practica y publica lo que aprendes”. Ya me he creado el primer repositorio para alojar los ejercicios del curso JavaScript 30, que iré haciendo poco a poco.