Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to TDDYYΧ

Miho Nagase
December 07, 2019

Introduction to TDDYYΧ

TDDYYΧ is a half-day event to learn new software design approaches and/or new programming languages by mobbing together. To keep being an outstanding Agile programmer, we want to practice more on the fundamentals of software development and design. It is just like training your muscles. Like muscle training, you might find it difficult to continue when you do by yourself. When you are with friends working together, it would be much easier to keep practicing. TDDYYΧ is a perfect format to help you continue practicing. In this session, the presenter will explain how you can run an event, and the results of TDDYYΧ events so far.

Miho Nagase

December 07, 2019
Tweet

More Decks by Miho Nagase

Other Decks in Technology

Transcript

  1. INTRODUCTION TO TDDYYΧ MIHO (MINH HỒNG) @MOLOVESQ ▸ Agile Coach

    at Attractor Inc. ▸ Lecturer ▸ Author ▸ Translator ▸ Community Organizer ▸ Considered Professional Beer Drinker
  2. INTRODUCTION TO TDDYYΧ LEARNING… ▸ Programming techniques ▸ Programming languages

    - new to you ▸ Testing frameworks ▸ Design ▸ The way you work ▸ The way you think ▸ The way to communicate with others ▸ Facilitation
  3. INTRODUCTION TO TDDYYΧ QUALIFICATIONS FOR AGILE DEVELOPERS ▸ Communication ▸

    Explains ideas ▸ Asks good questions ▸ Has good listening skills ▸ Isn't afraid to explore, question, make a mistake, etc. from Job Description used for an internship program at Hunter Industries
  4. INTRODUCTION TO TDDYYΧ QUALIFICATIONS FOR AGILE DEVELOPERS ▸ Technical Aptitude

    ▸ Grasps Concepts ▸ Sees Patterns ▸ Understands Code (not language specific) from Job Description used for an internship program at Hunter Industries
  5. CLEAN CODE THAT WORKS, IN RON JEFFRIES' PRETTY PHRASE, IS

    THE GOAL OF TEST-DRIVEN DEVELOPMENT (TDD). Motivator
  6. INTRODUCTION TO TDDYYΧ 3 STEPS OF TDD ▸ Test -

    A process of specification ▸ Code - A process of generalization ▸ Refactoring - A process of design "Six Years of Teaching Certified Scrum Developers" by Terry Yin. 2017
  7. INTRODUCTION TO TDDYYΧ TAKUTO WADA SAID… ▸ Do write; ▸

    HOWs in production codes ▸ WHATs in test codes ▸ WHYs in commit logs ▸ WHY NOTs in code comments @t_wada on Twitter, 2017
  8. INTRODUCTION TO TDDYYΧ STRUCTURE OF A TDDYYΧ ▸ 1:00 pm

    Tutorial session for TDD and Mob Programming ▸ 1:15 pm Opening circle ▸ 1:20 pm Session 1 ▸ 3:20 pm Retro & Break ▸ 3:30 pm Session 2 ▸ 4:40 pm Closing circle
  9. INTRODUCTION TO TDDYYΧ 10 PRACTICES OF TDDYYΧ ▸ Help people

    become free from the pressures of 'getting things done' ▸ Help people fail safely ▸ Encourage people to run experiments
  10. INTRODUCTION TO TDDYYΧ 1. FACILITATOR ▸ We just need a

    facilitator with TDD/ Mob Programming experience to share the concept of tddyyχ
  11. INTRODUCTION TO TDDYYΧ 2. REPEATER ▸ Depending on a single

    facilitator from organizers can become a single point of failure. We ask and encourage repeating participants to facilitate.
  12. INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS ▸ Becomes good motivation

    for continuous learning. Software developers tend to “finish” the work. By trying a challenging problems that cannot be “finished” in time, developers get a little frustration. ▸ This leads to the continuous learning at home or at office with the colleagues.
  13. INTRODUCTION TO TDDYYΧ 4. UPCOMING EVENT ▸ We decide the

    next schedule by the end of a session. “We can try again soon and we can do it better next time”
  14. INTRODUCTION TO TDDYYΧ 5. ROTATE ROLES WHEN RED ▸ Rotate

    roles when in a small RED phase in a TDD cycle. This gives all participants to code. 3 to 5 is optimal team size.
  15. INTRODUCTION TO TDDYYΧ 6. CELEBRATE FAILURES ▸ Celebrate failures. It

    is always fearful to fail, especially in front of people you don’t know. ▸ If you successfully failed a test, it’s a success. Celebrate the failure with applause.
  16. INTRODUCTION TO TDDYYΧ 7. KNOWN BY UNKNOWN ▸ Known Languages

    for Unknown Problems ▸ Unknown Languages for Known Problems
  17. INTRODUCTION TO TDDYYΧ 8. MAKE STRANGE ▸ Crate a team

    with strangers in the first session. ▸ Making cultural conflicts visible would enhance learning. ▸ For the second session, participants choose how to make a team. ▸ Continue with the first session team, create a team with colleagues/friends, or create a team with strangers again.
  18. INTRODUCTION TO TDDYYΧ 9. AUTOMATIC GROUP FORMING ▸ Do not

    consume much time to create teams. ▸ Create a sequence with experience and assign teams by calling numbers is a easy and fast way.
  19. INTRODUCTION TO TDDYYΧ 10. LET’S WAI WAI!! ▸ WaiwaiʮΘ͍Θ͍ʯ literally

    means "cheerful and noisy" in an informal way. Make an awkward moment with strangers a little less awkward. Let’s Wai Wai!
  20. INTRODUCTION TO TDDYYΧ TIPS FOR CONTINUOUS PRACTICING ▸ Don’t be

    obliged to continue for others. ▸ Do not to try to host others. Try to host yourselves. ▸ Welcome people who want to join there.
  21. INTRODUCTION TO TDDYYΧ CẢM ƠN BẠN RẤT NHIỀU ▸ Please

    run tddyyχ at your office, school, community meetup ▸ Please join tddyyχ in Japan someday ▸ https://tddyyx.github.io/