Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Code retreat
www.mozaicworks.com
Why
A talk by
Adi Bolboacă
adrian.bolboaca@mozaicworks.com
You
Start Using
Should
Why do we do Software?
www.mozaicworks.com
Me
Adi Bolboaca
Organizational & Technical
Trainer & Coach
Why You
Start Using
Should
Why You
Start Using
Should
Why You
Start Using
Should
Why You
Start Using
Should
Why You
Start Using
Should
Why You
Start Using
Should
Why You
Start Using
Should
Why You
Start Using
Should
Code retreat
www.mozaicworks.com
2009, First time outside US
Why?
Learn through pairing
Extend your comfort zone
Practice
Experiment
Learn new practices
www.mozaicworks.com
How?
1 day of coding
Choose a simple problem
6 pairing partners
On average 135 minutes of coding
6 different constraints
A...
Day structure
15' introduction
3 sessions of 45' coding + 15' retro&break
1h lunch
3 sessions of 45' coding + 15' retro&br...
Principles
Language agnostic
Do not try to finish the problem
Delete the code after each session
Focus on practicing
Exper...
How to take advantage
1. Embrace the freedom of deleting the code
2. Do what you always wanted but couldn't
3. Get out of ...
Prerequisites
Computer
Coding environment
Testing framework
Source control (git, svn, etc)
www.mozaicworks.com
Class Rules
Write code
Discuss code
Presentations
Important: There is no best solution. It depends.
You will receive slide...
Today’s purposes
As discussed with your colleagues:
1. Write tests on your code
2. Collaborate by pair-programming
3. The ...
What would you like to learn?
Use post-its
Write one idea on post-it
When ready stick them on the flip-chart
Important: Th...
Conway's game of life
Having an infinite 2D orthogonal universe
Being given an initial generation called a seed
The follow...
Session 1: Understand the problem
Find a pair
Choose a programming language
Setup the environment
Choose an entry point fo...
Conway's game of life
Having an infinite 2D orthogonal universe
Being given an initial generation called a seed
The follow...
RECAP Session 1
What did you learn?
What surprised you?
What would you start using?
www.mozaicworks.com
Session 2: Test drive your code
How to test your code:
Test After Design, Code, Test→
Test First Design, Test, Code→
Test ...
Session 2: Test drive your code
Find a pair
Red Write the test method. The code compiles.→
Green Write the→ simplest code ...
RECAP Session 2
What did you learn?
What surprised you?
What would you start using?
www.mozaicworks.com
Code retreat
1 hour Lunch
www.mozaicworks.com
Session 3:
Domain Driven Design
Analyze your domain
1. Brainstorm Domain Entities
2. Add relationships
3. Add bounded cont...
RECAP Session 3
What did you learn?
What surprised you?
What would you start using?
www.mozaicworks.com
Session 4:
Ping-Pong Pair-Programming
Choose a pair
One person write a test
The other implements the production code
The o...
RECAP Session 4
What did you learn?
What surprised you?
What would you start using?
www.mozaicworks.com
Session 5: Taking Baby Steps
1) Initialize source control repository
2) Start a timer for 2 minutes
3) Write exactly one t...
RECAP Session 5
What did you learn?
What surprised you?
What would you start using?
www.mozaicworks.com
Session 6: Code Swap
Find a pair to swap the code with
Write the best code you can for 40 minutes.
After ~40 minutes, swap...
RECAP Session 6
What did you learn?
What surprised you?
What would you start using?
www.mozaicworks.com
Closing circle
1) How did you feel?
2) What did you learn today?
3) What will you do differently tomorrow?
www.mozaicworks...
Code retreat
Why?
Learn through pairing
Extend your comfort zone
Practice
Experiment
Learn new practices
www.mozaicworks.c...
Contact me
● Remote pair-programming
● Unit testing workshop
● Test driven development workshop
● Clean code workshop
● Re...
Code retreat
Extend your mentoring & training capacity
Accelerate learning through communities
of practice
Grow your funct...
Ha terminado este documento.
Descárguela y léala sin conexión.
Próximo SlideShare
What to Upload to SlideShare
Siguiente
Próximo SlideShare
What to Upload to SlideShare
Siguiente
Descargar para leer sin conexión y ver en pantalla completa.

Compartir

Coderetreat in Lille 06 05 2017

Descargar para leer sin conexión

These are the slides for the coderetreat community event from Lille on the th of May 2017

  • Sé el primero en recomendar esto

Coderetreat in Lille 06 05 2017

  1. 1. Code retreat www.mozaicworks.com
  2. 2. Why A talk by Adi Bolboacă adrian.bolboaca@mozaicworks.com You Start Using Should Why do we do Software?
  3. 3. www.mozaicworks.com Me Adi Bolboaca Organizational & Technical Trainer & Coach
  4. 4. Why You Start Using Should
  5. 5. Why You Start Using Should
  6. 6. Why You Start Using Should
  7. 7. Why You Start Using Should
  8. 8. Why You Start Using Should
  9. 9. Why You Start Using Should
  10. 10. Why You Start Using Should
  11. 11. Why You Start Using Should
  12. 12. Code retreat www.mozaicworks.com
  13. 13. 2009, First time outside US
  14. 14. Why? Learn through pairing Extend your comfort zone Practice Experiment Learn new practices www.mozaicworks.com
  15. 15. How? 1 day of coding Choose a simple problem 6 pairing partners On average 135 minutes of coding 6 different constraints A lot of fun! www.mozaicworks.com
  16. 16. Day structure 15' introduction 3 sessions of 45' coding + 15' retro&break 1h lunch 3 sessions of 45' coding + 15' retro&break 15' closing circle www.mozaicworks.com
  17. 17. Principles Language agnostic Do not try to finish the problem Delete the code after each session Focus on practicing Experiment each session Have fun! www.mozaicworks.com
  18. 18. How to take advantage 1. Embrace the freedom of deleting the code 2. Do what you always wanted but couldn't 3. Get out of your comfort zone 4. Pair with strangers in languages you don't know 5. What you learn is your responsibility
  19. 19. Prerequisites Computer Coding environment Testing framework Source control (git, svn, etc) www.mozaicworks.com
  20. 20. Class Rules Write code Discuss code Presentations Important: There is no best solution. It depends. You will receive slides on email www.mozaicworks.com
  21. 21. Today’s purposes As discussed with your colleagues: 1. Write tests on your code 2. Collaborate by pair-programming 3. The code looks like on person wrote it www.mozaicworks.com
  22. 22. What would you like to learn? Use post-its Write one idea on post-it When ready stick them on the flip-chart Important: The list is always open www.mozaicworks.com
  23. 23. Conway's game of life Having an infinite 2D orthogonal universe Being given an initial generation called a seed The following rules are applied simultaneously A live cell having less than 2 live neighbors dies A live cell having 2 or 3 live neighbors lives A live cell having more than 3 neighbors dies A dead cell having 3 neighbors becomes alive www.mozaicworks.com
  24. 24. Session 1: Understand the problem Find a pair Choose a programming language Setup the environment Choose an entry point for the problem Understand the problem Add any constraint if you want www.mozaicworks.com
  25. 25. Conway's game of life Having an infinite 2D orthogonal universe Being given an initial generation called a seed The following rules are applied simultaneously A live cell having less than 2 live neighbors dies A live cell having 2 or 3 live neighbors lives A live cell having more than 3 neighbors dies A dead cell having 3 neighbors becomes alive www.mozaicworks.com
  26. 26. RECAP Session 1 What did you learn? What surprised you? What would you start using? www.mozaicworks.com
  27. 27. Session 2: Test drive your code How to test your code: Test After Design, Code, Test→ Test First Design, Test, Code→ Test Driven Test, Code, Design→ Each has its purpose and usage Test Driven is very hard to learn www.mozaicworks.com
  28. 28. Session 2: Test drive your code Find a pair Red Write the test method. The code compiles.→ Green Write the→ simplest code to make the test pass Refactor Look at duplication. Make the code→ look nicer Important: Focus on testing www.mozaicworks.com
  29. 29. RECAP Session 2 What did you learn? What surprised you? What would you start using? www.mozaicworks.com
  30. 30. Code retreat 1 hour Lunch www.mozaicworks.com
  31. 31. Session 3: Domain Driven Design Analyze your domain 1. Brainstorm Domain Entities 2. Add relationships 3. Add bounded contexts 4. Add constraints (eg. invariants) 5. Review the model 6. Write a guiding test for a bounded context 7. Write unit tests Check Domain Modelling Kata http://mozaicworks.com/blog/domain-modeling-kata www.mozaicworks.com
  32. 32. RECAP Session 3 What did you learn? What surprised you? What would you start using? www.mozaicworks.com
  33. 33. Session 4: Ping-Pong Pair-Programming Choose a pair One person write a test The other implements the production code The other writes a test The first person implements the production code Go back Use TDD approach www.mozaicworks.com
  34. 34. RECAP Session 4 What did you learn? What surprised you? What would you start using? www.mozaicworks.com
  35. 35. Session 5: Taking Baby Steps 1) Initialize source control repository 2) Start a timer for 2 minutes 3) Write exactly one test a) Timer rings, the test is red, then revert and go to 2) b) The test is green before the timer rings, then commit 4) Restart timer 5) Refactor a) Timer rings, the refactoring is not complete then revert and restart b) The refactoring is complete before the timer rings, commit and go to 2) Obs. The timers must run continuously, don't stop to talk! www.mozaicworks.com
  36. 36. RECAP Session 5 What did you learn? What surprised you? What would you start using? www.mozaicworks.com
  37. 37. Session 6: Code Swap Find a pair to swap the code with Write the best code you can for 40 minutes. After ~40 minutes, swap the code and make a code review Focus on Clean Code, clear names, usable software design When review-ing write comments in the code www.mozaicworks.com
  38. 38. RECAP Session 6 What did you learn? What surprised you? What would you start using? www.mozaicworks.com
  39. 39. Closing circle 1) How did you feel? 2) What did you learn today? 3) What will you do differently tomorrow? www.mozaicworks.com
  40. 40. Code retreat Why? Learn through pairing Extend your comfort zone Practice Experiment Learn new practices www.mozaicworks.com
  41. 41. Contact me ● Remote pair-programming ● Unit testing workshop ● Test driven development workshop ● Clean code workshop ● Refactoring workshop ● Legacy code retreat ● Working FAST and Safe with existing code ● Code retreat www.mozaicworks.com
  42. 42. Code retreat Extend your mentoring & training capacity Accelerate learning through communities of practice Grow your functional leaders and top talents http://www.mozaicworks.com adrian.bolboaca@mozaicworks.com @adibolb

These are the slides for the coderetreat community event from Lille on the th of May 2017

Vistas

Total de vistas

160

En Slideshare

0

De embebidos

0

Número de embebidos

3

Acciones

Descargas

5

Compartidos

0

Comentarios

0

Me gusta

0

×