miércoles, 27 de octubre de 2010

Entrenando tu código

Kata (型 o 形) es un término Japonés utilizado, normalmente en el ámbito de la artes marciales, para describir una serie de ejercicios o movimientos preestablecidos que pueden practicarse sin rival y sirven al practicante como entrenamiento para aumentar sus capacidades. Es, de la misma manera que en otras disciplinas como la música, a través de la repetición continua y rigurosa de estos ejercicios la única manera en la que el estudiante puede llegar a dominar la técnica en su máximo nivel, además de llegar a comprender el espíritu del arte marcial en cuestión.

De la misma manera que los practicantes de artes marciales, los desarrolladores también tenemos formas de entrenar nuestras capacidades, y una de las mejores son las Katas de Código. Estas consisten en el planteamiento de diferentes problemas que tenemos que intentar resolver de la mejor manera posible. Cómo en las artes marciales, la práctica y la repetición de este tipo de ejercicios nos permiten mantener nuestras capacidades al máximo nivel. Hay que tener en cuenta que lo mas importante no es la resolución del problema, si no el proceso que lleva a la resolución del mismo.

Gracias a este tipo de ejercicios se persigue obtener una excelente base técnica, que nos permita enfrentarnos a problemas en proyectos reales con una alta garantía de éxito y centrándonos mayoritariamente en el dominio del problema y no en los aspectos técnicos del mismo.

Las katas de código pueden ser de diferentes tipos y naturaleza (algoritmos, matemáticas, modelado, centradas en tecnologías, de refactorización...) y de diferentes niveles de dificultad.

Algunos sitios web donde se pueden encontrar Katas son:

http://codingkata.org/

http://codekata.pragprog.com/

http://codingdojo.org/cgi-bin/wiki.pl?KataCatalogue

Ya podéis empezar a entrenar vuestro código!!

Un saludo!!