Google Analytics

lunes, 23 de abril de 2012

Pet projects


Hace ya algún tiempo que terminé de leer el libro Apprenticeship Patterns, y uno de los patrones que no he utilizado hasta ahora, entre otros muchos, es el denominado "Brekeable Toys". No se si es técnicamente lo mismo que un Pet Project o no, pero para mi se parecen lo suficiente.

No sabría como definir un Pet Project de forma académica, pero básicamente se trata de un proyecto personal, no comercial, en el que intentamos resolver un problema de un tamaño relativamente grande. Por ejemplo podemos implementar un blog, una wiki o cualquier otra herramienta que nos venga a la cabeza, su función principal es aprender. Al tratarse de un sistema que no están utilizando otras personas, podemos tomárnoslo con calma y cometer tantos errores como queramos, siempre que eso nos enseñe alguna lección. Incluso es aconsejable cometer errores y arriesgarse con el Pet Project, porque posiblemente no tengas dicha oportunidad en tu trabajo diario.


Personalmente veo bastantes ventajas en realizar este tipo de proyecto en nuestro tiempo libre.
  • Practicar la base, sin prisas ni presión. Al no tener ningún plazo temporal podemos pasar un mes entero, o dos o los que quieras, leyendo sobre una determinada tecnología o implementando nuestro propio framework para usarlo en el Pet Project. Esto solo es añadir más trabajo al mismo, pero nos dará un conocimiento más profundo de las herramientas que utilizamos día a día en nuestro trabajo.
  • Poder elegir la tecnología que desees. Es nuestro tiempo libre y no tenemos que rendir cuentas con nadie, por lo que podemos utilizar las herramientas que más nos gusten, alguna que no conocemos pero nos gustaría conocer mejor, o simplemente mejorar en las que ya conocemos pero tenemos más "oxidadas".
  • Tendrás un "portafolio" que enseñar a tus clientes, en tus entrevistas de trabajo, etc. Es común que nos encontremos en casos en los que nuestros contratos nos impiden mostrar nuestro trabajo, ¿qué mejor que un Pet Project , o varios, para que nuestros futuros clientes puedan ver nuestro trabajo?.
  • En unos pocos casos, el Pet Project se convierte en un producto "del mundo real" que utilizan otras personas e incluso que se puede monetizar. Pero no tengas esto en mente, son casos muy excepcionales.
Por otro lado hay una "desventaja" bastante evidente a la que recurren muchas personas.
  • Has de utilizar tu tiempo libre para poder llevar a cabo dicho proyecto. Sí, así es, el conocimiento, como todas las cosas en la vida, tiene un precio, en este caso no es económico sino temporal. Que lo quieras pagar o no solo depende de tí, pero te aseguro que es posible compaginar tu vida privada con la realización de un Pet Project, siempre y cuando no trabajes más de 8 horas al día en la "oficina", claro.
En mi corta experiencia he recopilado algunos consejos que te pueden resultar de utilidad si quieres realizar un Pet Project.
  • No es un proyecto comercial, así que ten calma, no te pongas fechas límite ni plazos. Si a tu novia (o novio) le apetece ir a cenar contigo, tus amigos te llaman para ir a hacer senderismo o simplemente quieres ver una película o leer un libro, ¡hazlo!. Trabaja en el Pet Project cuando realmente te apetezca.
  • Escribe sobe tu errores, aciertos, cosas que has aprendido. Al fin y al cabo la razón de hacer un Pet Project es aprender y mejorar, por lo que escribir sobre ello te puede ayudar un poco más. Si además lo haces en un blog y lo compartes, ayudarás a más gente a parte de tí mismo, con lo cual mejorará tu karma :-)
  • Elige un proyecto que te guste y pueda ayudarte en tú día a día, pero sin tener miedo de hacer cosas que ya existan. En mi caso personal, trabajar en una herramienta que yo mismo puedo utilizar me ayuda a mantener una mayor motivación. Por ejemplo, ahora mismo yo estoy trabajando en una pizarra de tareas compatible con dispositivos touch, como tablets, y que utiliza Jira como repositorio.
  • No temas cometer errores. Investiga, toma decisiones arriesgadas que no tomarías "en la oficina", no vas a hacer daño a nadie y podrás sacar conclusiones muy interesantes.
  • No des ningún paso sin entender profundamente lo que estás haciendo. En el día a día la presión es muy alta y tarde o temprano se toman decisiones sin tener todos los datos, ahora no tienes porque hacerlo.
Ya sabes lo que es un Pet Project, ¿te animas a hacer alguno? :-D

13 comentarios:

David Pombar dijo...

Muy interesante Yeray, yo tengo 3 o 4 proyectos similares que nunca han alcanzado un nivel suficiente como para lanzarlos. Si, muy poco ,agil por mi parte ;) 
En cualquier caso he aprendido mucho con ellos: nuevas tecnologías, etc...

Si me permites, añadiría una cosa. Enriquecería mucho la formación, si este tipo de proyectos, los compartes con otras personas, y no me refiero a técnicos, sino justamente gente que no programe, que aporte una visión diferente y más mentalidad de producto, servicio, venta, lo que sea... No solo de conocimiento técnico vive el developer! 

Un abrazo

Yeray Darias Camacho dijo...

Hey David, muchas gracias por el comentario.

Tienes toda la razón, como desarrolladores muchas veces se nos olvida que la gente que usa nuestras aplicaciones no son programadores ... y claro eso tienes sus consecuencias :-) Desde luego estoy contigo, es conveniente compartir esta clase de proyectos con gente ajena al mundo del desarrollo de software porque nos aportará muchas ideas nuevas.

Un abrazo.

Ancor Cruz dijo...

Un post muy interesante y motivador. Gracias.

Me acabas de "picar", cuando vuelva de las vacaciones empezaré un pet project académico.

Por cierto, muy chula la plantilla de dibujo, ¿dónde la compraste?

Yeray Darias Camacho dijo...

Muchas gracias Ancor, me encantará ver ese nuevo proyecto :-)

La plantilla es de http://www.uistencils.com/

Un saludo.

Ancor Cruz dijo...

Wow! un poco caros, pero molan.

Yeray Darias Camacho dijo...

Sí, no te voy a engañar, no son baratas :-S Pero no las he visto en ningún otro lado, supongo que tienen ese precio porque son para un sector muy reducido y no venderán tanta cantidad.

Fernando Gallego dijo...

Yo a los míos los llamo forgotten projects... :P

Yeray Darias Camacho dijo...

 Jajajajaja, sí esos también son muy frecuentes, yo tengo unos cuantos :-)

Juan Ramón Monzón dijo...

Muy interesante esto del pet project. Como todo, el tema es empezar, ya que en mi caso, lo que más me costará es empezar los primeros días, luego cuando ya me pico o se van viendo cosillas, sigo de carrerilla. Pues nada, a dar el primer paso :-)

Yeray Darias Camacho dijo...

Eso, mueve el culo y empieza de una vez :-)

Iván López dijo...

Hola,

yo hace poco más de un año empecé un pet project que me sirvió para mejorar mis conocimientos de Grails y también como divertimento dentro de la empresa. Tuvo tanto éxito interno que me ofrecieron seguir desarrollándolo en horas de trabajo y hace un par de meses está online para todo el mundo: www.bokzuy.com. Desde aquí te animo a probarlo, sirve para mantener un buen ambiente en el trabajo...

Es cierto que supone quitarte tiempo libre, dormir menos,... e incluso dedicarle menos tiempo a la familia (cosa que no debería pasar), pero creo que al final siempre merece la pena.

Saludos, Iván.

Yeray Darias Camacho dijo...

Jajaja, es un proyecto muy interesante ... muy en la línea de la gamificación de Bonilla :-) me ha gustado mucho XD

Pero si que hay que tener en cuenta a la gente que nos rodea y lo de trabajar fuera de las horas laborales, no siempre recompensa si dejas de lado a las personas que desean estar contigo :-)

Un saludo.

Iván López dijo...

Ya he visto que te has dado de alta. Ahora crea un grupo para tus compañeros de trabajo, los invitas y empezáis a repartiros chapas. Risas aseguradas... :-)

Saludos, Iván.