SlideShare una empresa de Scribd logo
1 de 40
Descargar para leer sin conexión
KATA-PULTIEREN AUF NEUE
   PROGRAMMIERLEVEL
 Sebastian Eichner - Marko Schulz - Bernd Schiffer
                    03.05.2010
Katas
    helfen
Grundschritte
  zu verinnerlichen,
        um sie beim
 Programmieren
ohne
 Nachdenken
        einzusetzen.
              Quelle: http://en.wikipedia.org/wiki/File:Skull_and_brain_normal_human.svg
Kata
Kampf-
  sport
1. Kata
       im
Shōtōkan-
   Karate

            Quelle: Bild von Albrecht Pflüger
Lernen
     durch
Wieder-
 holung
      Quelle: failblog.org
Tanzen
Gitarre-
 spielen

   Gitarre
kleine
  fokussierte
Aufgabe
sichtbare
 Aufgabe
  nur
aktueller
    Stand
Kataka
Marko Schulz




Programmiert seit

     14 Jahren
KATA I: ROMAN NUMBERS

• Dekodiere
 römische Zahlen
Feedbackrunde
     für Kata I
Warum ?
     macht
     man
     Katas
a²+b²=c²
Quelle: http://de.wikipedia.org/w/index.php?title=Datei:Kapitolinischer_Pythagoras_adjusted.jpg & http://en.wikipedia.org/wiki/File:Pythagorean_graphic.svg
Isolation
       und
      Einschränkung
Selbst-
reflexion
Muscel
  Memorization
Sixtinische Kapelle
    Quelle: http://de.wikipedia.org/w/index.php?title=Datei:Michelangelo_-_Fresco_of_the_Last_Judgement.jpg
Kataka
Sebastian Eichner
    selbstständig



 Programmiert seit

      10 Jahren
KATA II: CHECKOUT

• basiert
        auf Checkout-                                        • Nebenbedingung: Der
 Kata von Dave Thomas                                         Checkout sollte nichts über
 http://codekata.pragprog.com/2007/01/kata_nine_back_.html    Preise und Produkte wissen.
                                                              Neue Preisregeln sollen
• Scanner-Kasse              im                               später ohne Änderungen am
 Supermarkt:                                                  Checkout ergänzt
 Produkt A, Produkt B,                                        werden können,
 Produkt A                                                    z.B. 3-für-2-
 => Endsumme berechnen                                        Rabatte
Feedbackrunde
     für Kata II
Warum
 Katas?
Schwer-
 punkte
Grund-
 legendes
Strukturen




             Quelle:http://www.flickr.com/photos/14922165@N00/1022807511
Einschränkungen
Grenzen überschreiten
Schwer-
 punkte
Kataka
Bernd Schiffer




Programmiert seit

     13 Jahren
KATA III: STRING CALCULATOR

• basiertauf                       • Gebe  alternatives
 String Calculator Kata             Trennzeichen
                                    an.
 von Roy Osherove
 http://osherove.com/tdd-kata-1/    Format:
                                    //[trennzeichen]n...
• Addiere komma- oder
 neuzeilenseparierte Zahlen in     • Breche ab bei negativen
 einem String, etwa 1,2,3 = 6       Zahlen (mit Fehlermeldung
 und Leerstring = 0                 „no negatives allowed“ und
                                    negativen Zahlen)
Feedbackrunde
     für Kata III
Worauf
sollte man beim
    Üben
  einer
Kata
     achten?
Oft
wiederholen
Zeit
 nehmen




      Quelle: http://www.flickr.com/photos/dailyjoe/441020930/sizes/l/
Feedback
  sammeln
Alternative
Wege
ausprobieren
richtig,
         gut,
        schnell




Quelle: http://www.flickr.com/photos/pgoyette/92358434/sizes/l/
Besuchen Sie uns...
        ...am       -Stand

 um
  •weiteren Katakas zuzuschauen
  •mit uns gemeinsam zu coden
  •mehr über Katas zu erfahren
•   http://codekata.com
•   http://katas.softwarecraftsmanship.org == http://katacasts.com
•   http://www.codingdojo.org
•   http://codingkata.org
•   http://stackoverflow.com/questions/1737427/assignments-i-e-code-kata-for-coding-dojos
•   http://www.javascriptkata.com/
•   http://www.rubyquiz.com/
•   http://www.programming-challenges.com/
•   http://sites.google.com/site/tddproblems/
•   Die Programming Tasks von http://rosettacode.org

Más contenido relacionado

Destacado

Jörissen, B. (2011). Medienbildung.
Jörissen, B. (2011). Medienbildung.Jörissen, B. (2011). Medienbildung.
Jörissen, B. (2011). Medienbildung.Benjamin Jörissen
 
Fundamentos de gestion de servicios ti
Fundamentos de gestion de servicios tiFundamentos de gestion de servicios ti
Fundamentos de gestion de servicios tiAldo Reyes
 
Actividad de afianzamiento fransica y la muerte isabel
Actividad de afianzamiento fransica y la muerte isabelActividad de afianzamiento fransica y la muerte isabel
Actividad de afianzamiento fransica y la muerte isabelJorge Eduardo Torres Miranda
 
La sociedad de la información y las nuevas
La sociedad de la información y las nuevasLa sociedad de la información y las nuevas
La sociedad de la información y las nuevasjeivyalvarez
 
Schulungsunterlagen Buchhändler: Regale
Schulungsunterlagen Buchhändler: RegaleSchulungsunterlagen Buchhändler: Regale
Schulungsunterlagen Buchhändler: Regaleedelweiss_Deutschland
 
Pla integral automoció
Pla integral automocióPla integral automoció
Pla integral automocióeixcinc
 
SQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-APISQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-APItutego
 
Solucion actividad 1 sandra
Solucion actividad 1 sandraSolucion actividad 1 sandra
Solucion actividad 1 sandrasmilena1974
 
Castilla la mancha._decreto_de_8_de_enero_de_2008_1_
Castilla la mancha._decreto_de_8_de_enero_de_2008_1_Castilla la mancha._decreto_de_8_de_enero_de_2008_1_
Castilla la mancha._decreto_de_8_de_enero_de_2008_1_Rocio Castellanos
 
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...Benjamin Jörissen
 

Destacado (17)

Germany
GermanyGermany
Germany
 
Daftar Nilai UTS Kimia
Daftar Nilai UTS KimiaDaftar Nilai UTS Kimia
Daftar Nilai UTS Kimia
 
Subvenciones y ayudas
Subvenciones y ayudasSubvenciones y ayudas
Subvenciones y ayudas
 
Jörissen, B. (2011). Medienbildung.
Jörissen, B. (2011). Medienbildung.Jörissen, B. (2011). Medienbildung.
Jörissen, B. (2011). Medienbildung.
 
Trabajo de tic
Trabajo de ticTrabajo de tic
Trabajo de tic
 
Fundamentos de gestion de servicios ti
Fundamentos de gestion de servicios tiFundamentos de gestion de servicios ti
Fundamentos de gestion de servicios ti
 
Actividad de afianzamiento fransica y la muerte isabel
Actividad de afianzamiento fransica y la muerte isabelActividad de afianzamiento fransica y la muerte isabel
Actividad de afianzamiento fransica y la muerte isabel
 
La sociedad de la información y las nuevas
La sociedad de la información y las nuevasLa sociedad de la información y las nuevas
La sociedad de la información y las nuevas
 
Actividad academica
Actividad academicaActividad academica
Actividad academica
 
Schulungsunterlagen Buchhändler: Regale
Schulungsunterlagen Buchhändler: RegaleSchulungsunterlagen Buchhändler: Regale
Schulungsunterlagen Buchhändler: Regale
 
Pla integral automoció
Pla integral automocióPla integral automoció
Pla integral automoció
 
SQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-APISQL-Updates mit der JDBC-API
SQL-Updates mit der JDBC-API
 
Solucion actividad 1 sandra
Solucion actividad 1 sandraSolucion actividad 1 sandra
Solucion actividad 1 sandra
 
Practica 7
Practica 7Practica 7
Practica 7
 
Castilla la mancha._decreto_de_8_de_enero_de_2008_1_
Castilla la mancha._decreto_de_8_de_enero_de_2008_1_Castilla la mancha._decreto_de_8_de_enero_de_2008_1_
Castilla la mancha._decreto_de_8_de_enero_de_2008_1_
 
Manual redes
Manual redesManual redes
Manual redes
 
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
Bildung, Visualität, Subjektivierung - Sichtbarkeiten und Selbstverhältnisse ...
 

Más de Bernd Schiffer

Sustainable Pace - The forgotten Agile principle at YOW Perth 2019
Sustainable Pace - The forgotten Agile principle at YOW Perth 2019Sustainable Pace - The forgotten Agile principle at YOW Perth 2019
Sustainable Pace - The forgotten Agile principle at YOW Perth 2019Bernd Schiffer
 
Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...
Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...
Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...Bernd Schiffer
 
Agile Habit Development at LAST Conf Melbourne 2017
Agile Habit Development at LAST Conf Melbourne 2017Agile Habit Development at LAST Conf Melbourne 2017
Agile Habit Development at LAST Conf Melbourne 2017Bernd Schiffer
 
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...Bernd Schiffer
 
How to Piss Off Your Pair at LAST Conference Sydney 2016
How to Piss Off Your Pair at LAST Conference Sydney 2016How to Piss Off Your Pair at LAST Conference Sydney 2016
How to Piss Off Your Pair at LAST Conference Sydney 2016Bernd Schiffer
 
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...Bernd Schiffer
 
Teams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, Australia
Teams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, AustraliaTeams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, Australia
Teams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, AustraliaBernd Schiffer
 
Scrummaster Needed Desperately at LAST Conf 2016 in Melbourne, Australia
Scrummaster Needed Desperately at LAST Conf 2016 in Melbourne, AustraliaScrummaster Needed Desperately at LAST Conf 2016 in Melbourne, Australia
Scrummaster Needed Desperately at LAST Conf 2016 in Melbourne, AustraliaBernd Schiffer
 
Scrummaster Needed Desperately at 2016 Scrum Australia
Scrummaster Needed Desperately at 2016 Scrum AustraliaScrummaster Needed Desperately at 2016 Scrum Australia
Scrummaster Needed Desperately at 2016 Scrum AustraliaBernd Schiffer
 
Concrete Experimentation in Agile Environments at LAST Conference 2015
Concrete Experimentation in Agile Environments at LAST Conference 2015Concrete Experimentation in Agile Environments at LAST Conference 2015
Concrete Experimentation in Agile Environments at LAST Conference 2015Bernd Schiffer
 
How to Piss Off Your Pair at LAST Conference 2015
How to Piss Off Your Pair at LAST Conference 2015How to Piss Off Your Pair at LAST Conference 2015
How to Piss Off Your Pair at LAST Conference 2015Bernd Schiffer
 
Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015
Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015
Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015Bernd Schiffer
 
Concrete Experimentation in Agile Environments at Agile Australia 2015
Concrete Experimentation in Agile Environments at Agile Australia 2015Concrete Experimentation in Agile Environments at Agile Australia 2015
Concrete Experimentation in Agile Environments at Agile Australia 2015Bernd Schiffer
 
Net Promoter System for Agile Environments @ OOP 2015 in Munich, Germany
Net Promoter System for Agile Environments @ OOP 2015 in Munich, GermanyNet Promoter System for Agile Environments @ OOP 2015 in Munich, Germany
Net Promoter System for Agile Environments @ OOP 2015 in Munich, GermanyBernd Schiffer
 
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupComparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupBernd Schiffer
 
Concrete Experimentation in Scrum at Scrum Australia 2014
Concrete Experimentation in Scrum at Scrum Australia 2014Concrete Experimentation in Scrum at Scrum Australia 2014
Concrete Experimentation in Scrum at Scrum Australia 2014Bernd Schiffer
 
Peer Groups in Agile Environments at LAST Conference 2014
Peer Groups in Agile Environments at LAST Conference 2014Peer Groups in Agile Environments at LAST Conference 2014
Peer Groups in Agile Environments at LAST Conference 2014Bernd Schiffer
 
Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...
Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...
Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...Bernd Schiffer
 
Inspire Management! @ Agile 2013 in Nashville, Tennessee
Inspire Management! @ Agile 2013 in Nashville, TennesseeInspire Management! @ Agile 2013 in Nashville, Tennessee
Inspire Management! @ Agile 2013 in Nashville, TennesseeBernd Schiffer
 
Net Promoter System for Agile Environments @ Agile 2013 in Nashville, Tennessee
Net Promoter System for Agile Environments @ Agile 2013 in Nashville, TennesseeNet Promoter System for Agile Environments @ Agile 2013 in Nashville, Tennessee
Net Promoter System for Agile Environments @ Agile 2013 in Nashville, TennesseeBernd Schiffer
 

Más de Bernd Schiffer (20)

Sustainable Pace - The forgotten Agile principle at YOW Perth 2019
Sustainable Pace - The forgotten Agile principle at YOW Perth 2019Sustainable Pace - The forgotten Agile principle at YOW Perth 2019
Sustainable Pace - The forgotten Agile principle at YOW Perth 2019
 
Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...
Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...
Agilität im Wander der Zeit und der Kulturen - Keynote at XP Days Germany 201...
 
Agile Habit Development at LAST Conf Melbourne 2017
Agile Habit Development at LAST Conf Melbourne 2017Agile Habit Development at LAST Conf Melbourne 2017
Agile Habit Development at LAST Conf Melbourne 2017
 
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Sydney, Aust...
 
How to Piss Off Your Pair at LAST Conference Sydney 2016
How to Piss Off Your Pair at LAST Conference Sydney 2016How to Piss Off Your Pair at LAST Conference Sydney 2016
How to Piss Off Your Pair at LAST Conference Sydney 2016
 
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...
Resource Pools - How is This Still a Thing? at LAST Conf 2016 in Melbourne, A...
 
Teams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, Australia
Teams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, AustraliaTeams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, Australia
Teams! Make War, Not (Only) Love! at LAST Conf 2016 in Melbourne, Australia
 
Scrummaster Needed Desperately at LAST Conf 2016 in Melbourne, Australia
Scrummaster Needed Desperately at LAST Conf 2016 in Melbourne, AustraliaScrummaster Needed Desperately at LAST Conf 2016 in Melbourne, Australia
Scrummaster Needed Desperately at LAST Conf 2016 in Melbourne, Australia
 
Scrummaster Needed Desperately at 2016 Scrum Australia
Scrummaster Needed Desperately at 2016 Scrum AustraliaScrummaster Needed Desperately at 2016 Scrum Australia
Scrummaster Needed Desperately at 2016 Scrum Australia
 
Concrete Experimentation in Agile Environments at LAST Conference 2015
Concrete Experimentation in Agile Environments at LAST Conference 2015Concrete Experimentation in Agile Environments at LAST Conference 2015
Concrete Experimentation in Agile Environments at LAST Conference 2015
 
How to Piss Off Your Pair at LAST Conference 2015
How to Piss Off Your Pair at LAST Conference 2015How to Piss Off Your Pair at LAST Conference 2015
How to Piss Off Your Pair at LAST Conference 2015
 
Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015
Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015
Concrete Experimentation in Scrum at Scrum Gathering Shanghai 2015
 
Concrete Experimentation in Agile Environments at Agile Australia 2015
Concrete Experimentation in Agile Environments at Agile Australia 2015Concrete Experimentation in Agile Environments at Agile Australia 2015
Concrete Experimentation in Agile Environments at Agile Australia 2015
 
Net Promoter System for Agile Environments @ OOP 2015 in Munich, Germany
Net Promoter System for Agile Environments @ OOP 2015 in Munich, GermanyNet Promoter System for Agile Environments @ OOP 2015 in Munich, Germany
Net Promoter System for Agile Environments @ OOP 2015 in Munich, Germany
 
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupComparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
 
Concrete Experimentation in Scrum at Scrum Australia 2014
Concrete Experimentation in Scrum at Scrum Australia 2014Concrete Experimentation in Scrum at Scrum Australia 2014
Concrete Experimentation in Scrum at Scrum Australia 2014
 
Peer Groups in Agile Environments at LAST Conference 2014
Peer Groups in Agile Environments at LAST Conference 2014Peer Groups in Agile Environments at LAST Conference 2014
Peer Groups in Agile Environments at LAST Conference 2014
 
Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...
Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...
Net Promoter System for Agile Environments @ Agile India 2014 in Bangalore, I...
 
Inspire Management! @ Agile 2013 in Nashville, Tennessee
Inspire Management! @ Agile 2013 in Nashville, TennesseeInspire Management! @ Agile 2013 in Nashville, Tennessee
Inspire Management! @ Agile 2013 in Nashville, Tennessee
 
Net Promoter System for Agile Environments @ Agile 2013 in Nashville, Tennessee
Net Promoter System for Agile Environments @ Agile 2013 in Nashville, TennesseeNet Promoter System for Agile Environments @ Agile 2013 in Nashville, Tennessee
Net Promoter System for Agile Environments @ Agile 2013 in Nashville, Tennessee
 

Kata-pultieren auf neue Programmierlevel