DEV Community

Cover image for Unlocking Better Code: My Journey with Coding Dojos
Andre Orlowski
Andre Orlowski

Posted on

Unlocking Better Code: My Journey with Coding Dojos

Six months ago, I set out to improve how my team collaborates and approaches programming. I wanted to create a space where we could talk about coding, refine our skills, and improve the quality of our work. That’s when I re-discovered coding dojos — a hands-on way to practice code craftsmanship, TDD, and code quality.

How We Do It

Each Dojo begins with a short theoretical session — just 5 to 10 minutes. During this time, I introduce a topic like the Single Responsibility Principle (SRP), explaining its importance and how it can transform our code. From there, the real fun begins.

We split into small groups of up to four people and dive into a refactoring exercise. These exercises are grounded in real-world production code, making them practical and relatable. Using mob programming, the group works together to refactor the code, focusing on the topic introduced earlier.

This phase lasts about an hour, and once it’s over, each group presents their refactored code to the others. We discuss the approaches taken, what worked, and what didn’t. And because the code is only for practice, we’re free to throw it away at the end of the session, leaving the pressure of perfection behind.

The Benefits We See

Coding dojos offer many benefits for teams:

  1. Improved Skills: By tackling real-world problems and practicing TDD, participants sharpen their technical skills and learn new techniques.
  2. Enhanced Code Quality: Refactoring exercises help everyone internalize the principles of clean code, which translates to better production work.
  3. Stronger Teams: The group work dynamic fosters collaboration and builds cohesion, creating teams that work well together even outside the Dojo (in our case we have people of different teams participating so we even build better connections between teams).
  4. Open Discussions: The sessions spark meaningful conversations about coding practices, helping to align the team’s understanding and approach.

Why It Works

The key to the Dojo’s success lies in its simplicity and structure. By focusing on real-world problems, the exercises remain relevant. The mob programming format ensures every participant is engaged and learning, while the non-judgmental environment encourages experimentation and growth.

But perhaps most importantly, the Dojos give us time to talk about coding — something that doesn’t always happen amidst the demands of day-to-day development. These conversations have been transformative, allowing us to share knowledge, discuss challenges, and align on best practices.

A New Way to Grow

Organizing coding Dojos has been an incredibly rewarding experience, and I’ve seen firsthand how it can elevate a team’s skills and mindset. Whether you’re looking to improve code quality, foster collaboration, or simply spark conversations about coding, I highly recommend giving dojos a try.

Let’s keep learning, refactoring, and building better code — together.

Top comments (0)