AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING...
Transcript of AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING...
![Page 1: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/1.jpg)
INTRODUCTION TO TDDYYΧAGILE VIETNAM CONFERENCE 2019 MIHO NAGASE
![Page 2: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/2.jpg)
PHOTOSHOPPEDPHOTOSHOPPED
PHOTOSHOPPED
![Page 3: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/3.jpg)
INTRODUCTION TO TDDYYΧ
MIHO (MINH HỒNG) @MOLOVESQ
▸ Agile Coach at Attractor Inc.
▸ Lecturer
▸ Author
▸ Translator
▸ Community Organizer
▸ Considered Professional Beer Drinker
![Page 4: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/4.jpg)
INTRODUCTION TO TDDYYΧ
TO KEEP BEING AGILE DEVELOPER
▸ Continuous learning and practicing is necessary
![Page 5: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/5.jpg)
INTRODUCTION TO TDDYYΧ
LEARNING FROM...
▸ other cultures
▸ other companies/organizations
▸ other people
![Page 6: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/6.jpg)
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
![Page 7: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/7.jpg)
![Page 8: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/8.jpg)
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
![Page 9: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/9.jpg)
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
![Page 10: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/10.jpg)
INTRODUCTION TO TDDYYΧ
TDD
▸ Not testing but rather development.
![Page 11: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/11.jpg)
CLEAN CODE THAT WORKS, IN RON JEFFRIES' PRETTY PHRASE, IS THE GOAL OF TEST-DRIVEN DEVELOPMENT (TDD).
Motivator
![Page 12: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/12.jpg)
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
![Page 13: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/13.jpg)
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
![Page 14: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/14.jpg)
INTRODUCTION TO TDDYYΧ
OPPORTUNITIES FOR CONTINUOUS PRACTICING
▸ Coderetreat
▸ TDD Boot Camp
▸ tddyyχ
![Page 15: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/15.jpg)
![Page 16: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/16.jpg)
![Page 17: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/17.jpg)
![Page 18: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/18.jpg)
![Page 19: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/19.jpg)
![Page 20: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/20.jpg)
![Page 21: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/21.jpg)
![Page 22: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/22.jpg)
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
![Page 23: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/23.jpg)
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
![Page 24: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/24.jpg)
INTRODUCTION TO TDDYYΧ
1. FACILITATOR
▸ We just need a facilitator with TDD/Mob Programming experience to share the concept of tddyyχ
![Page 25: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/25.jpg)
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.
![Page 26: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/26.jpg)
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.
![Page 27: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/27.jpg)
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”
![Page 28: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/28.jpg)
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.
![Page 29: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/29.jpg)
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.
![Page 30: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/30.jpg)
INTRODUCTION TO TDDYYΧ
7. KNOWN BY UNKNOWN
▸ Known Languages for Unknown Problems
▸ Unknown Languages for Known Problems
![Page 31: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/31.jpg)
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.
![Page 32: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/32.jpg)
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.
![Page 33: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/33.jpg)
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!
![Page 34: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/34.jpg)
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.
![Page 35: AGILE VIETNAM CONFERENCE 2019 MIHO NAGASE …€¦ · INTRODUCTION TO TDDYYΧ 3. FEELING INCOMPLETENESS Becomes good motivation for continuous learning. Software developers tend to](https://reader036.fdocuments.in/reader036/viewer/2022070722/5ee37933ad6a402d666d50eb/html5/thumbnails/35.jpg)
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/