Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
Welcome!
Peter Kofler
• Ph.D. (Appl. Math.)
• Professional Software
Developer for 15+ years
• “fanatic about code quality”
• I help...
I help development teams with
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
●
Professionalism
●
Quality and
Produc...
Mentoring
PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
●
Pair Programming
●
Programming
Workshops
●
Deliberate
Pr...
Developing Quality
Software Developers
Coderetreat
a day of learning and practice
How do musicians practice?
Then how do coders practice?
Why repeat the same kata?
●
de-emphasise the generation of code
●
concentrate on
●
the process of writing the code
●
namin...
Day Structure
●
Introduction
●
3 Sessions of
●
Coding
●
Retrospective
●
Lunch
●
3 Sessions
●
Retrospective
PETER KOFLER, C...
Code Retreat Principles
●
Learn through pairing (switch pairs)
●
Practice
●
Experiment
●
Have fun!
PETER KOFLER, CODE-COP....
Coding Dojo Mindset
●
Safe place outside
work
●
We are here to learn
●
Need to slow down
●
Focus on doing it right
●
Colla...
Constraints
●
Challenges during a dojo or coderetreat
●
Moving to the extreme is a way of learning
●
Examples
●
Missing To...
Why delete the code?
●
No. Listen.
●
Stop trying to go faster, start trying to go
slower.
●
Don't think about finishing, t...
How to take advantage
●
Embrace freedom of deleting the code
●
Do what you always wanted but couldn't
●
Get out of your co...
Think About Learning Topics
●
Why are you here?
●
What do you want to learn?
●
What do you expect from today?
●
How can th...
What do you want to learn?
●
TDD
●
Pair Programming
●
Clean Code
●
Design
●
Other Languages
●
...
PETER KOFLER, CODE-COP.O...
Learning Goals
Conway's Game of Life
●
infinite, two-dimensional grid of cells
●
interacts with its eight neighbours
●
at each step in ti...
Rules of Cell Interaction
●
Any live cell with fewer than two live
neighbours dies by under-population.
●
Any live cell wi...
Programming
Languages?
Get Ready!
●
Find a pair.
●
Agree on language.
●
Use one computer.
●
Set up empty project.
●
Write a failing test.
●
Imple...
Don't Focus on
Getting it Done.
Focus on Doing
It Perfectly.
Our Sessions
●
do your best
●
Verbs instead of Nouns
●
Solution Seeker
●
Ping Pong Mute
●
Clean Code: 4 lines/2 param per ...
Closing Circle
●
What did you learn today?
●
What surprised you today?
●
What will you do
differently in the
future?
PETER...
Learnings
Peter Kofler
@codecopkofler
www.code-cop.org
organized by
Interlogica S.r.l.
@interlogica
www.interlogica.it
PETER KOFLER,...
CC Images
●
welcome https://www.flickr.com/photos/7502393@N04/472028910/
●
Bruce http://www.flickr.com/photos/sherpas428/4...
Prochain SlideShare
Chargement dans…5
×

Code Retreat Venice (2016)

515 vues

Publié le

Slides from the Coderetreat in Venice, Italy in May 2016.

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Code Retreat Venice (2016)

  1. 1. Welcome!
  2. 2. Peter Kofler • Ph.D. (Appl. Math.) • Professional Software Developer for 15+ years • “fanatic about code quality” • I help development teams PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  3. 3. I help development teams with PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY ● Professionalism ● Quality and Productivity ● Continuous Improvement
  4. 4. Mentoring PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY ● Pair Programming ● Programming Workshops ● Deliberate Practice, e.g. Coding Dojos
  5. 5. Developing Quality Software Developers
  6. 6. Coderetreat a day of learning and practice
  7. 7. How do musicians practice?
  8. 8. Then how do coders practice?
  9. 9. Why repeat the same kata? ● de-emphasise the generation of code ● concentrate on ● the process of writing the code ● naming test cases ● the Red/Green cycle PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  10. 10. Day Structure ● Introduction ● 3 Sessions of ● Coding ● Retrospective ● Lunch ● 3 Sessions ● Retrospective PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  11. 11. Code Retreat Principles ● Learn through pairing (switch pairs) ● Practice ● Experiment ● Have fun! PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY Coderetreat, http://coderetreat.org/
  12. 12. Coding Dojo Mindset ● Safe place outside work ● We are here to learn ● Need to slow down ● Focus on doing it right ● Collaborative Game PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  13. 13. Constraints ● Challenges during a dojo or coderetreat ● Moving to the extreme is a way of learning ● Examples ● Missing Tool (No Mouse, …) ● Missing Feature (No IFs, …) PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  14. 14. Why delete the code? ● No. Listen. ● Stop trying to go faster, start trying to go slower. ● Don't think about finishing, think about improving. ● Think about practising. As a team. ● That's what this day is for. Nothing else. No. Listen. http://cyber-dojo.org/ PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  15. 15. How to take advantage ● Embrace freedom of deleting the code ● Do what you always wanted but couldn't ● Get out of your comfort zone ● Pair with strangers in languages you do not know ● What you learn is your responsibility ● Think about what you want to practice PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  16. 16. Think About Learning Topics ● Why are you here? ● What do you want to learn? ● What do you expect from today? ● How can this happen? ● How can I help you? ● Write your concrete needs on Post-its! PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  17. 17. What do you want to learn? ● TDD ● Pair Programming ● Clean Code ● Design ● Other Languages ● ... PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  18. 18. Learning Goals
  19. 19. Conway's Game of Life ● infinite, two-dimensional grid of cells ● interacts with its eight neighbours ● at each step in time, transitions occur ● four rules for cells depending on number of live neighbours http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  20. 20. Rules of Cell Interaction ● Any live cell with fewer than two live neighbours dies by under-population. ● Any live cell with two or three live neighbours lives on to the next generation. ● Any live cell with more than three live neighbours dies, as if by overcrowding. ● Any dead cell with exactly three live neighbours becomes a live cell, by reproduction. http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  21. 21. Programming Languages?
  22. 22. Get Ready! ● Find a pair. ● Agree on language. ● Use one computer. ● Set up empty project. ● Write a failing test. ● Implement Game of Life. ● Use TDD if possible.
  23. 23. Don't Focus on Getting it Done. Focus on Doing It Perfectly.
  24. 24. Our Sessions ● do your best ● Verbs instead of Nouns ● Solution Seeker ● Ping Pong Mute ● Clean Code: 4 lines/2 param per method ● No If (Fun Session) PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  25. 25. Closing Circle ● What did you learn today? ● What surprised you today? ● What will you do differently in the future? PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  26. 26. Learnings
  27. 27. Peter Kofler @codecopkofler www.code-cop.org organized by Interlogica S.r.l. @interlogica www.interlogica.it PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  28. 28. CC Images ● welcome https://www.flickr.com/photos/7502393@N04/472028910/ ● Bruce http://www.flickr.com/photos/sherpas428/4350620602/ ● pairing http://www.flickr.com/photos/dav/94735395/ ● list http://www.flickr.com/photos/kylesteeddesign/3724074594/ ● incense http://www.flickr.com/photos/cibomahto/7651263514/ ● music https://www.flickr.com/photos/jeremyhiebert/11474303315 ● code https://www.flickr.com/photos/slworking/7726767220/ ● Dojo http://www.flickr.com/photos/49715404@N00/3267627038/ ● pull https://www.flickr.com/photos/criminalintent/17235879021/ ● languages https://www.flickr.com/photos/jurek_durczak/16235946053/ ● start https://www.flickr.com/photos/36821100@N04/5417281120/ ● wants you: http://www.flickr.com/photos/shutter/105497713/ PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY

×