Primer Coding Dojo Medellín

  • RSS
  • Add To My MSN
  • Add To Windows Live
  • Add To My Yahoo
  • Add To Google

Statistics

  • Entries (30)
  • Comments (24)
Posted by Pavel Espitia Friday, August 03, 2012 8:46:00 PM Categories: Coding Dojo Comunidad

El día 2 de Agosto se realizó en Medellín el primer Coding Dojo organizado en colaboración con Ágiles Colombia y Kleer, un Coding Dojo es una reunión en la cual un grupo de desarrolladores trabajan en un desafío de programación previamente establecido durante algunas horas o una tarde, es una forma divertida y dinámica de aprender técnicas nuevas con desarrolladores de los cuales se puede obtener experiencias.

El Dojo está definido como el lugar de enseñanza y perfeccionamiento de las artes marciales o como dijo un compañero asistente “Es el lugar donde se purifica el alma” de aquí que en un Coding Dojo todo se trate de aprender y compartir.

¿Y cómo aprendemos un arte marcial?

Practicando, de las propias experiencias y de la de los demás, de aquí extraemos el concepto de Kata: repetir constantemente hasta conseguir la perfección, en el Coding Dojo practicamos para refinar nuestro código, se puede plantear diferentes soluciones al mismo problema planteado y lo mejor es que podemos hacerlo usando diferentes lenguajes de programación esto es lo que mas le puede atraer a las personas interesadas en la programación, puedo aprender nuevas cosas practicando de la mano de otras personas que ya saben del tema. Para alcanzar el refinamiento del código se usa una pequeña dinámica en la que usamos TDD para este fin: Escribimos la prueba unitaria de la funcionalidad que vamos a programar, ejecutamos esta prueba, que generalmente falla… ¡pero no hay de que preocuparnos! Smile escribimos el código más básico que se nos ocurra para que la prueba unitaria se ejecute sin problemas y al tenerse esto se estudia si el código escrito previamente se puede refactorizar para hacerlo más limpio y legible Cool .

¿ y cómo sabemos qué se puede refactorizar y qué no? y lo más importante… ¿sabemos que es refactorizar?

Refactorizar se define como una técnica de la ingeniería de software para reestructurar un código fuente alterando su estructura interna pero sin modificar su comportamiento, conocido como limpiar el código no arregla errores ni añade funcionalidades solo busca tener un código mas legible y de fácil mantenimiento, de este punto conocemos los olores de código (Code Smells) este termino introducido por Kent Beck puede darnos pistas sobre problemas que se pueden estar presentando en nuestro código y cómo podemos enfrentarlos, estos olores se pueden dividir en dos grandes grupos: los que ocurren en las clases y los que ocurren entre clases:

Code Smells Within Classes

Comments
Long Method
Long Parameter List
Duplicated code
Conditional Complexity
Combinitorial Explosion
Large Class
Type Embedded in Name
Uncommunicative Name
Inconsistent Names
Dead Code
Speculative Generality
Oddball Solution
Temporary Field

Code Smells Between Classes

Alternative Classes with Different Interfaces
Primitive Obsession
Data Class
Data Clumps
Refused Bequest
Inappropriate Intimacy
Indecent Exposure
Feature Envy
Lazy Class
Message Chains
Middle Man
Divergent Change
Shotgun Surgery
Parallel Inheritance Hierarchies
Incomplete Library Class
Solution Sprawl

Podemos obtener información más completa en http://bit.ly/T7inP3

Ya hablamos de practicar, ya sabemos que podemos refactorizar ¿Nos sentamos en una máquina y ya?

Un Coding Dojo debe ser lo más animado y divertido, debemos ser colaborativos y no competitivos, una modalidad para esto es el Randori, el reto se soluciona por grupos o parejas pair programming, un integrante hace de piloto en la máquina y otro en la misma máquina hace de copiloto ayudando a resolver el problema todo esto controlado por turnos de N tiempo  

Para poder realizar un Coding Dojo no se necesita ser la persona mas experta, tener el espacio mas grande, se necesita iniciativa, un lugar en donde compartir, ¿seguimos realizando más Coding Dojos en Medellín, te animas a participar ? Queda abierta la convocatoria, cuéntanos!. 

#CodingDojoMed

Un agradecimiento especial a @pablitux y @luismulato

Comments

 
© 2009 - 2013 Avanet