Don’t Break the Chain, Practicando TDD

Published on Author lopez

Gracias a @vafacu conocí este año el método de Jerry Seinfeld (si, el escritor y comediante) para la productividad, “Don’t break the chain”, algo así como “no rompa la cadena”. Ver

https://www.writersstore.com/dont-break-the-chain-jerry-seinfeld/

Para Seinfeld, es anotar en un calendario una gran cruz roja por cada día donde escribe algo. Y busca “no romper la cadena”, que se forme una secuencia de días de trabajo. Lo bueno del método es que tiene un “feedback” visual, y hace que “marcar una cruz roja” se convierta en un desafío, y que “no romper la cadena” se transforme en divertido.

Algo así estoy haciendo desde hace años para algunas actividades mías. Por ejemplo, cada día escribo un post, ver A post a day keeps the doctor away. Pero lo que le falta a esa actividad es un tablero visual de los resultados, como en el calendario de Seinfeld.

Pero hay otra actividad que también practico diariamente: programar aplicando TDD (Test-Driven Development). Y esta sí tiene un tablero, mi panel público en la cuenta de GitHub:

(mi panel privado está apenas un poco más poblado). En estos días, he logrado superar los mil días programando y practicando TDD, generalmente en mis proyectos de código abierto. A veces, los commits son pequeños y simples, algun refactor, o una mejora. Pero lo interesante es que a través de diversos proyectos y lenguajes (C#, Java, JavaScript, Go, Ruby, … ) he ido practicando TDD. Y cada mes y año que pasa, veo que voy aprendiendo algo nuevo. Y también veo que voy mejorando en el tema simplicidad, que cada vez que vuelvo a un viejo proyecto se me ocurren nuevas maneras de implementarlo, más simple, y que puedo hacerlo porque tengo todo el respaldo de los tests de TDD para aplicar refactor brutal.

Supongo que algún día romperé la cadena. Pero eso no es lo importante, sino lo que he ido aprendiendo. Espero que algunos de los posts y código que comparto sirvan para reflejar ese progreso.

Ver también Always Be Coding

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez