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

Coding Dojo: Naming with Dices (2021)

Coding Dojo: Naming with Dices (2021)

Coding Dojo with focus on naming. Rules of the dojo are Pair Programming & TDD. Constraints are challenges during the dojo. Moving to the extreme is a way of learning. We are coding the game of Tic-Tac-Toe and everything - but the names of test methods - is named using random dices. Specifically using these random dices with enterprise-y useless names.

4934fbd5d733dd4b0b7b1881ac141371?s=128

Peter Kofler

March 08, 2021
Tweet

Transcript

  1. Coding Dojo “Naming” March 2021 Peter Kofler, ‘Code Cop’ @codecopkofler

    www.code-cop.org Copyright Peter Kofler, licensed under CC-BY.
  2. Peter Kofler • Ph.D. (Appl. Math.) • Professional Software Developer

    for 20+ years • “fanatic about code quality” • Independent Code Quality Coach PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  3. I help development teams with PETER KOFLER, CODE-COP.ORG FANATIC ABOUT

    CODE QUALITY • Professionalism • Quality and Productivity • Continuous Improvement
  4. Mentoring PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY • Pair

    Programming • Programming Workshops • Deliberate Practice, e.g. Coding Dojos
  5. Developing Quality Software Developers

  6. 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
  7. Rules of the Dojo PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE

    QUALITY
  8. Pair Programming & TDD • regular Pair Programming • do

    not talk for too long • do not interrupt the other • no “keyboard hugging“ • use TDD (or at least “sort of” TDD) • start with a test list • write a test before you write code • refactor mercilessly PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  9. (Maybe Some) 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 Today surely some fun
  10. Tic-Tac-Toe PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY

  11. Assignment • http://en.wikipedia.org/wiki/Tic-tac-toe • Board 3x3 • X plays first,

    O plays second • Implement • 2 Player Game • Determine Winner • AI Bot Player PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  12. Constraint PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY

  13. Named by Dices • Everything • - but the names

    of test methods - • is named using random dices. • Specifically using these random dices with enterprise-y useless names. • https://blog.code-cop.org/p/arolla-dice-namer.html PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  14. Prepare • Find a pair. • Choose a programming language.

    • Set up the environment. • Create new project. • Add testing framework. • Check Wikipedia for requirements. • Implement Tic-Tac-Toe. PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY
  15. →Practice

  16. →Break

  17. 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
  18. Code which does not make me want to kill the

    author. http://programmers.stackexchange.com/a/13594/15057
  19. Peter Kofler @codecopkofler www.code-cop.org PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE

    QUALITY
  20. CC Images • cleaning: http://www.flickr.com/photos/inf3ktion/4477642894/ • Bruce http://www.flickr.com/photos/sherpas428/4350620602/ • pairing

    http://www.flickr.com/photos/dav/94735395/ • dojo http://www.flickr.com/photos/49715404@N00/3267627038/ • rule http://www.flickr.com/photos/phunk/4188827473 • game http://www.flickr.com/photos/benclinch/476855843/ • dice https://www.flickr.com/photos/sophieffc/2580454777/ • wants you http://www.flickr.com/photos/shutter/105497713/ PETER KOFLER, CODE-COP.ORG FANATIC ABOUT CODE QUALITY