Mientras que en muchas oficinas “Fashion” no te dejan ni pegar un posit en la mesa sin tener que pedir permiso a dos o tres personas y rellenar unos cuantos formularios, hay otras organizaciones, que saben que los espacios físicos están para apoyar a los equipos, disfrutarlos, ganar en productividad, en las que se incentiva hasta para ensuciar los baños.
Uno de estos casos fue Google. Por si no conocías esta historia, hace unos años no sólo pensaron que decorar las paredes con mensajes es más beneficioso que dejarlas como las dejó el decorador (que ya sabemos que los decoradores no saben crear equipos de trabajo potentes), sino que a alguien se le ocurrió usar también las paredes de los baños.
En 2007, desde el grupo de Testing de Google (me refiero al equipo interno, el de la propia empresa, no a un foro de uso global sobre alguna plataforma Google) compartían la siguiente iniciativa, que te he resumido y traducido yo (translated by jgarzas):
Queremos que escribas más pruebas. Sí, tú. Las pruebas son la red de seguridad que te protege cuando se necesita refactorizar código o cuando otro desarrollador agrega características. Incluso sabes que las pruebas pueden ayudar con el diseño.
Pero, a pesar de que has leído los libros y escuchado conferencias, tal vez necesitas un poco más de inspiración, consejos. Y es necesario que sea en un lugar donde cuando lo veas, no lo puedas ignorar.
Ahí es donde nosotros podemos ayudar. Somos el «Grupo de Pruebas de Google» un pequeño grupo de voluntarios apasionados de Testing.
Y queremos lanzar «Testing en el baño»: uno de los pequeños secretos de Google que nos ha ayudado a inspirar a nuestros desarrolladores escribir código bien Testeado. Escribimos carteles de todo, desde la inyección de dependencias a la cobertura de código, y con regularidad los pegamos cada uno de los baños de todo Google, casi 500 en todo el mundo.
Hemos recibido muchos comentarios al respecto. Algunos favorables ( «Esto es muy bueno porque siempre me olvido de llevar mi copia de Linux Nerd 2000 para al baño!») Y otros no ( «Estoy tratando de usar el baño, ¿por favor, sólo déjame en paz?»).
Cada uno de los carteles que se mencionan anteriormente, además de pegarse en los baños, se iba subiendo al blog de Testing de Google, bajo la iniciativa “Testing on The Toilet”. De hecho, hasta hubo un premio final para los mejores de ellos, debajo te dejo el preciado trofeo que se entregó.
En su día fui bajando esos carteles, que ocupan una sola página, pensados para decorar ese bonito lugar por el que todo el mundo pasa, pero que, además de eso, son muy buenos resúmenes de patrones y buenas prácticas de Testing.
Aparte de compartir contigo la historia, reflexionar sobre el uso de los espacios, también te voy a dejar aquella lista que en su día hice, apuntando a cada uno de los carteles del “Testing in The Toilet”, por si te animas a leerlos… y a usarlos para la decoración (mánda fotos). Ahí van los 30:
- Naming Unit Test Responsaibility
- JavaScript: Simulating Time in jsUnit Test
- Stubs Speed up your Unit Test
- Refactoring Test in the Red
- Extracting Methods to Simplify Testing
- Extracting Helper Classes
- The Stroop Effect
- To Many Test
- Understanding your Coverage Data
- TestNG in the Toilet
- Time is Random
- Avoiding Flaky Test
- Partial Mocks using Forwarding Objects
- Literate Testing with Matchers
- Testing State vs Testing Interactios
- Don’t overuse mocks
- Fake your way to Better Test
- Know your Test Doubles
- Test behaviour, not implementaion
- What makes a good test
- Test behaviours not methods
- Effective Testing
- Risk-Driven Testing
- Don’t put logic in test
- Web Testing Made Easier: Debug IDs
- Writing Descriptive Test Names
- Truth: a fluent assertion framework
- Prefer Testing Public APIs Over Implementation-Detail Classes
- Change-Detector Tests Considered Harmful
- Better Stubbing in Phyton
- Debes crear apps sin saber programar (no hay que saber nada) + Crea Test con IA + Scrum es el nuevo Excel - 12 septiembre, 2024
- Las 6 técnicas prompting + 1ª Ley del Manager Oscuro + Mantenlo sencillo, estúpido - 5 septiembre, 2024
- Guía de Métricas Ágiles (versión agosto 2024) - 22 agosto, 2024
No veo los códigos 🙁
¡Muy buen post Javier!
Es un gran ejemplo del poder de una Comunidad de práctica dentro de una gran empresa.
Alex Ballarin – http://www.itnove.com