SlideShare a Scribd company logo
1 of 27
Coding Dojo




              Campus Party México 2011
La programación es una habilidad
que se adquiere, se aprende.
Si quieres mejorar tus habilidades,
            debes practicar, mucho.
El software como artesanía
http://manifesto.softwarecraftsmanship.org/
¿Se acuerdan del
 Manifiesto Ágil?
http://agilemanifesto.org/
Ojo con
                             estos señores



http://agilemanifesto.org/
Robert C. Martin
• UncleBob (@uncleBobMartin)
• Agilista y actualmente Artesano de Software
• Promueve mucho los conceptos:
 • Software Craftsmanship
 • Clean Code
• http://cleancoder.posterous.com/
Dave Thomas

• Mente maestra detrás de “Pragmatic
  Programmers”
• Escribe, edita libros, podcast, screencast
  sobre desarrollo de software
• http://pragdave.pragprog.com/
• “Inventor” de las code katas
¿Que tienen que ver
        estos tipos?
Empecemos de nuevo
¿Que es un Dojo?
“Lugar de la via”
en japonés.
“Lugar de la via”
en japonés.




        se refiere a la búsqueda de la perfección
                       física, moral, mental y espiritual.
Los Samurai, adoptaron esto
debido a su filosofía de vida.

Se empezaron a ocupar
para practicar artes
marciales.
El Coding Dojo se origina
 a través de Code Katas
Code Kata
• La premisa es: Practicar, practicar y
  practicar.
• La idea es ejercitarte.
• No solo conozcas la teoría, ponla a prueba.
• Obtén retroalimentación, observa
  resultados, experimenta una y otra vez.
Code Kata
• Tomate un tiempo sin interrupciones. Solo
  tu mente (talento e idea) y tu maquina.
• Define algo simple que quieres hacer.
• Para lograr tu objetivo debes sentirte
  cómodo cometiendo errores. Intenta tantas
  veces como sea necesario.
• Busca siempre retroalimentación.
¿Que pasa si no tengo
idea de algún ejercicio?
Lugares con Katas
•   http://codekata.pragprog.com/
•   http://www.butunclebob.com/
    ArticleS.UncleBob.TheBowlingGameKata
•   http://katas.softwarecraftsmanship.org/
•   http://codingkata.org/
•   http://www.katacasts.com/
•   En español:
    •   http://www.idlebit.es/codekatas/
    •   http://www.12meses12katas.com/
ProgrammingPraxis

• No necesariamente un sitio de katas, pero
  si de muchos ejercicios.
• http://programmingpraxis.com/
Coding Dojo
•   No estas solo, estas con un grupo de amigos.
•   No es competencia, se trata de colaboración.
•   Se propone un desafío y debes resolverlo.
•   Usa tu lenguaje favorito. Pero mejor elige otro para aprenderlo.
•   Dos modalidades.
    •   CodeKata -> Trabajas solo
    •   Randori -> Trabajas en pareja o en grupo, pueden hacer Pair-
        programming
•   Lo ideal es que se use TDD (Test Driven Development)
A trabajar¡¡

• Resolver los desafíos (Siguiente lamina)
• Puedo ayudarles en el proceso, solo
  preguntenme.
• Tengo unos regalos para los que
  completen/avancen mucho los desafíos.
Desafios

• FizzBuzz
 •http://goo.gl/4yO8L
• StringCalculator
 •http://goo.gl/8OzTI
Créditos fotos
•   http://www.flickr.com/photos/zenonline/3431365556
•   http://www.flickr.com/photos/heycoach/1197947341/
•   http://www.flickr.com/photos/thart2009/3560809129/
•   http://www.flickr.com/photos/habeebclicks/4716528771/
•   http://www.flickr.com/photos/drachmann/327122302/
•   http://www.flickr.com/photos/dumbo/42958842/
•   http://www.flickr.com/photos/
    54459164@N00/4611679307/
•   http://www.flickr.com/photos/evaysucamara/5494953658/

More Related Content

Viewers also liked

Viewers also liked (6)

Webinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador JavaWebinar: Groovy y la producttividad para el desarrollador Java
Webinar: Groovy y la producttividad para el desarrollador Java
 
ITT Flisol 2013
ITT Flisol 2013ITT Flisol 2013
ITT Flisol 2013
 
Escribir código y ganarse la vida de paso
Escribir código y ganarse la vida de pasoEscribir código y ganarse la vida de paso
Escribir código y ganarse la vida de paso
 
PCJ Sesión 10: Development
PCJ Sesión 10: DevelopmentPCJ Sesión 10: Development
PCJ Sesión 10: Development
 
SGCE 2012 Lightning Talk-Single Page Interface
SGCE 2012 Lightning Talk-Single Page InterfaceSGCE 2012 Lightning Talk-Single Page Interface
SGCE 2012 Lightning Talk-Single Page Interface
 
Serling dev team, development process
Serling dev team, development processSerling dev team, development process
Serling dev team, development process
 

Similar to Coding Dojo, Campus Party México 2011

Presentacion programador apasionado
Presentacion programador apasionadoPresentacion programador apasionado
Presentacion programador apasionado
Edwin Cruz
 
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
Israel Antezana Rojas
 

Similar to Coding Dojo, Campus Party México 2011 (20)

Coding dojo
Coding dojoCoding dojo
Coding dojo
 
Crecimiento profesional como desarrollador de software
Crecimiento profesional como desarrollador de softwareCrecimiento profesional como desarrollador de software
Crecimiento profesional como desarrollador de software
 
Kleer yoseki coding dojo - 2012-08-03 - medellín
Kleer   yoseki coding dojo - 2012-08-03 - medellínKleer   yoseki coding dojo - 2012-08-03 - medellín
Kleer yoseki coding dojo - 2012-08-03 - medellín
 
Coding dojo - Kata The Cube
Coding dojo - Kata The CubeCoding dojo - Kata The Cube
Coding dojo - Kata The Cube
 
Presentacion programador apasionado
Presentacion programador apasionadoPresentacion programador apasionado
Presentacion programador apasionado
 
TDD y Python
TDD y PythonTDD y Python
TDD y Python
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Computacion conocimientos
Computacion conocimientosComputacion conocimientos
Computacion conocimientos
 
El arte de programar
El arte de programarEl arte de programar
El arte de programar
 
Desarrollando en la web con todo el power 2.0
Desarrollando en la web con todo el power 2.0Desarrollando en la web con todo el power 2.0
Desarrollando en la web con todo el power 2.0
 
BDD & Cucumber
BDD & CucumberBDD & Cucumber
BDD & Cucumber
 
Kodu game lab
Kodu game labKodu game lab
Kodu game lab
 
Cómo aplicar TDD. Almería 13/05/2014
Cómo aplicar TDD. Almería 13/05/2014Cómo aplicar TDD. Almería 13/05/2014
Cómo aplicar TDD. Almería 13/05/2014
 
Cómo terminar los proyectos personales que se empiezan ...o no!
Cómo terminar los proyectos personales que se empiezan ...o no!Cómo terminar los proyectos personales que se empiezan ...o no!
Cómo terminar los proyectos personales que se empiezan ...o no!
 
Trabajando con código heredado y ser feliz
Trabajando con código heredado y ser felizTrabajando con código heredado y ser feliz
Trabajando con código heredado y ser feliz
 
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?¿Te Sientes Orgulloso Del CóDigo Que Escribes?
¿Te Sientes Orgulloso Del CóDigo Que Escribes?
 
Elaboración de prototipos
Elaboración de prototiposElaboración de prototipos
Elaboración de prototipos
 
Haz realidad tu proyecto, Cómo hacer una app movil en 30 días
Haz realidad tu proyecto, Cómo hacer una app movil en 30 díasHaz realidad tu proyecto, Cómo hacer una app movil en 30 días
Haz realidad tu proyecto, Cómo hacer una app movil en 30 días
 
Artesano de software | software guru conference| SGCE 2014
Artesano de software | software guru conference| SGCE 2014Artesano de software | software guru conference| SGCE 2014
Artesano de software | software guru conference| SGCE 2014
 
Presentacion Programador Apasionado
Presentacion Programador ApasionadoPresentacion Programador Apasionado
Presentacion Programador Apasionado
 

More from Domingo Suarez Torres

More from Domingo Suarez Torres (20)

Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de KubernetesCloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
 
Java Dev Day 2019 No kuberneteen por convivir
Java Dev Day 2019  No kuberneteen por convivirJava Dev Day 2019  No kuberneteen por convivir
Java Dev Day 2019 No kuberneteen por convivir
 
Contenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMXContenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMX
 
Retos en la arquitectura de Microservicios
Retos en la arquitectura de MicroserviciosRetos en la arquitectura de Microservicios
Retos en la arquitectura de Microservicios
 
Java Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDLJava Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDL
 
meetup digital ocean kubernetes
meetup digital ocean kubernetesmeetup digital ocean kubernetes
meetup digital ocean kubernetes
 
Peru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVMPeru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVM
 
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con IstioDevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
 
Cloud Native Development in the JVM
Cloud Native Development in the JVMCloud Native Development in the JVM
Cloud Native Development in the JVM
 
Cloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico - Introducción a KubernetesCloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico - Introducción a Kubernetes
 
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architectureMeetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
 
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y EnvoyCloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
 
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 ObservabilityCloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 Observability
 
Cloud Native Mexico Presentacion
Cloud Native Mexico PresentacionCloud Native Mexico Presentacion
Cloud Native Mexico Presentacion
 
gRPC: Beyond REST
gRPC: Beyond RESTgRPC: Beyond REST
gRPC: Beyond REST
 
Devops Landscape
Devops LandscapeDevops Landscape
Devops Landscape
 
Orquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNextOrquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNext
 
JVM Reactive Programming
JVM Reactive ProgrammingJVM Reactive Programming
JVM Reactive Programming
 
SGNext Elasticsearch
SGNext ElasticsearchSGNext Elasticsearch
SGNext Elasticsearch
 
Webinar Arquitectura de Microservicios
Webinar Arquitectura de MicroserviciosWebinar Arquitectura de Microservicios
Webinar Arquitectura de Microservicios
 

Coding Dojo, Campus Party México 2011

  • 1. Coding Dojo Campus Party México 2011
  • 2. La programación es una habilidad que se adquiere, se aprende.
  • 3. Si quieres mejorar tus habilidades, debes practicar, mucho.
  • 4. El software como artesanía
  • 6. ¿Se acuerdan del Manifiesto Ágil?
  • 8. Ojo con estos señores http://agilemanifesto.org/
  • 9. Robert C. Martin • UncleBob (@uncleBobMartin) • Agilista y actualmente Artesano de Software • Promueve mucho los conceptos: • Software Craftsmanship • Clean Code • http://cleancoder.posterous.com/
  • 10. Dave Thomas • Mente maestra detrás de “Pragmatic Programmers” • Escribe, edita libros, podcast, screencast sobre desarrollo de software • http://pragdave.pragprog.com/ • “Inventor” de las code katas
  • 11. ¿Que tienen que ver estos tipos?
  • 13. ¿Que es un Dojo?
  • 14. “Lugar de la via” en japonés.
  • 15. “Lugar de la via” en japonés. se refiere a la búsqueda de la perfección física, moral, mental y espiritual.
  • 16. Los Samurai, adoptaron esto debido a su filosofía de vida. Se empezaron a ocupar para practicar artes marciales.
  • 17. El Coding Dojo se origina a través de Code Katas
  • 18. Code Kata • La premisa es: Practicar, practicar y practicar. • La idea es ejercitarte. • No solo conozcas la teoría, ponla a prueba. • Obtén retroalimentación, observa resultados, experimenta una y otra vez.
  • 19. Code Kata • Tomate un tiempo sin interrupciones. Solo tu mente (talento e idea) y tu maquina. • Define algo simple que quieres hacer. • Para lograr tu objetivo debes sentirte cómodo cometiendo errores. Intenta tantas veces como sea necesario. • Busca siempre retroalimentación.
  • 20. ¿Que pasa si no tengo idea de algún ejercicio?
  • 21. Lugares con Katas • http://codekata.pragprog.com/ • http://www.butunclebob.com/ ArticleS.UncleBob.TheBowlingGameKata • http://katas.softwarecraftsmanship.org/ • http://codingkata.org/ • http://www.katacasts.com/ • En español: • http://www.idlebit.es/codekatas/ • http://www.12meses12katas.com/
  • 22.
  • 23. ProgrammingPraxis • No necesariamente un sitio de katas, pero si de muchos ejercicios. • http://programmingpraxis.com/
  • 24. Coding Dojo • No estas solo, estas con un grupo de amigos. • No es competencia, se trata de colaboración. • Se propone un desafío y debes resolverlo. • Usa tu lenguaje favorito. Pero mejor elige otro para aprenderlo. • Dos modalidades. • CodeKata -> Trabajas solo • Randori -> Trabajas en pareja o en grupo, pueden hacer Pair- programming • Lo ideal es que se use TDD (Test Driven Development)
  • 25. A trabajar¡¡ • Resolver los desafíos (Siguiente lamina) • Puedo ayudarles en el proceso, solo preguntenme. • Tengo unos regalos para los que completen/avancen mucho los desafíos.
  • 26. Desafios • FizzBuzz •http://goo.gl/4yO8L • StringCalculator •http://goo.gl/8OzTI
  • 27. Créditos fotos • http://www.flickr.com/photos/zenonline/3431365556 • http://www.flickr.com/photos/heycoach/1197947341/ • http://www.flickr.com/photos/thart2009/3560809129/ • http://www.flickr.com/photos/habeebclicks/4716528771/ • http://www.flickr.com/photos/drachmann/327122302/ • http://www.flickr.com/photos/dumbo/42958842/ • http://www.flickr.com/photos/ 54459164@N00/4611679307/ • http://www.flickr.com/photos/evaysucamara/5494953658/

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n